- Forum-Beiträge: 37
02.05.2011, 18:53:39 via Website
02.05.2011 18:53:39 via Website
Ich habe derzeit ein Projekt in der Schule laufen. Es soll ein App erstellt werden mit dem ich auf die Schuldatenbank zugreife und dn Stundenplan anzeigen lasse. Das Habe ich bislang:
Java
2
3import java.sql.Connection;
4import java.sql.DriverManager;
5import java.sql.ResultSet;
6import java.sql.Statement;
7
8import android.R.string;
9import android.app.Activity;
10import android.content.Context;
11import android.database.SQLException;
12import android.os.Bundle;
13import android.view.View;
14import android.widget.AdapterView;
15import android.widget.AdapterView.OnItemClickListener;
16import android.widget.AdapterView.OnItemSelectedListener;
17import android.widget.ArrayAdapter;
18import android.widget.Spinner;
19import android.widget.TextView;
20import android.widget.Toast;
21
22public class androidStundenPlanApp extends Activity {
23 /** Called when the activity is first created. */
24
25 @Override
26 public void onCreate(Bundle savedInstanceState) {
27 super.onCreate(savedInstanceState);
28 setContentView(R.layout.main);
29
30 /** Erster Spinner zur Auswahl der Klasse! */
31
32 Spinner s = (Spinner) findViewById(R.id.spinner);
33 ArrayAdapter adapter = ArrayAdapter.createFromResource(
34 this, R.array.Klassen, android.R.layout.simple_spinner_item);
35 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
36 s.setAdapter(adapter);
37 s.setOnItemSelectedListener(new MyOnItemSelectedListener());
38
39 /** Zweiter Spinner Wochenauswahl */
40
41 Spinner d = (Spinner) findViewById(R.id.spinner2);
42 ArrayAdapter adapter2 = ArrayAdapter.createFromResource(
43 this, R.array.wochen, android.R.layout.simple_spinner_item);
44 adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
45 d.setAdapter(adapter2);
46 d.setOnItemSelectedListener(new MyOnItemSelectedListener2());
47
48 }
49 /** Auswertung des Ersten Spinners (Klassenauswahl) */
50 public class MyOnItemSelectedListener implements OnItemSelectedListener {
51
52 public void onItemSelected(AdapterView<?> parent,
53 View view, int pos, long id) {
54 /** Kurzer Popup der auswahl! */
55 Toast.makeText(parent.getContext(), "Die Klasse ist " +
56 parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show();
57
58 /** Dauerhafte ausgab der AUswahl! */
59 TextView test = (TextView) findViewById(R.id.barname);
60 test.setText("Select * FROM STUNDENPLANDB WHERE Klasse = "+parent.getItemAtPosition(pos).toString());
61
62
63
64 }
65
66
67
68 public void onNothingSelected(AdapterView<?> parent) {
69 // Do nothing.
70 }
71 }
72 /** Auswertung des zweiten Spinners (Wochenauswahl) */
73 public class MyOnItemSelectedListener2 implements OnItemSelectedListener {
74
75 public void onItemSelected(AdapterView<?> parent,
76 View view, int pos, long id) {
77 Toast.makeText(parent.getContext(), "Die Woche ist " +
78 parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show();
79 }
80 public void onNothingSelected(AdapterView<?> parent) {
81 // Do nothing.
82 }
83 }
84 public class SimpleQuery {
85
86 public void main(String[] args) {
87
88 // Diese Eintraege werden zum
89 // Verbindungsaufbau benoetigt.
90 final String hostname = "localhost";
91 final String port = "3306";
92 final String dbname = "lischa";
93 final String user = "root";
94 final String password = "";
95
96 Connection conn = null;
97
98 try {
99 System.out.println("* Treiber laden");
100 Class.forName("org.gjt.mm.mysql.Driver").newInstance();
101 }
102 catch (Exception e) {
103 System.err.println("Unable to load driver.");
104 e.printStackTrace();
105 }
106 try {
107 System.out.println("* Verbindung aufbauen");
108 String url = "jdbc:mysql://"+hostname+":"+port+"/"+dbname;
109 conn = DriverManager.getConnection(url, user, password);
110
111 System.out.println("* Statement beginnen");
112 Statement stmt = conn.createStatement();
113
114 System.out.println("* Abfrage beginnen");
115 String sqlCommand =
116 "SELECT Name, StOrt, Gehalt FROM personal";
117 // "SELECT Name, StOrt, Gehalt FROM personal WHERE Gehalt>50000";
118 ResultSet rs = stmt.executeQuery(sqlCommand);
119
120 System.out.println("* Ergebnisse anzeigen");
121 while (rs.next()) {
122 String name = rs.getString(1);
123 String standort = rs.getString("StOrt");
124 double gehalt = rs.getDouble(3);
125 System.out.println( name+" "+standort+" "+gehalt );
126 }
127
128 System.out.println("* Statement beenden");
129 stmt.close();
130 System.out.println("* Datenbank-Verbindung beenden");
131 conn.close();
132 }
133 catch (SQLException sqle) {
134 System.out.println("SQLException: " + sqle.getMessage());
135 System.out.println("SQLState: " + sqle.getSQLState());
136 System.out.println("VendorError: " + sqle.getErrorCode());
137 sqle.printStackTrace();
138 }
139
140
141 } // ende: public static void main()
142
143 } // ende: public class SimpleQuery */
144}
Main.xml
2<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:orientation="vertical"
4 android:padding="10dip"
5 android:layout_width="fill_parent"
6 android:layout_height="wrap_content">
7
8 <TextView
9
10 android:layout_width="fill_parent"
11 android:layout_height="wrap_content"
12 android:layout_marginTop="10dip"
13 android:text="Bitte wähle deine Klasse:"
14 />
15
16 <Spinner
17 android:id="@+id/spinner"
18 android:layout_width="fill_parent"
19 android:layout_height="wrap_content"
20 android:drawSelectorOnTop="true"
21 android:prompt="@string/planet_prompt"
22 />
23 <TextView
24
25 android:layout_width="fill_parent"
26 android:layout_height="wrap_content"
27 android:layout_marginTop="10dip"
28 android:text="Bitte wähle die Woche:"
29 />
30
31 <Spinner
32 android:id="@+id/spinner2"
33 android:layout_width="fill_parent"
34 android:layout_height="wrap_content"
35 android:drawSelectorOnTop="true"
36 android:prompt="@string/planet_prompt"
37 />
38 <TextView
39 android:id="@+id/barname"
40 android:layout_width="fill_parent"
41 android:layout_height="wrap_content"
42 android:textSize="30sp"
43 android:textStyle="bold"
44 android:layout_marginTop="5dp"
45 android:layout_marginLeft="5dp"
46 />
47
48</LinearLayout>
Arrays.xml
2<resources>
3
4 <string-array name="Klassen">
5 <item>FG123</item>
6 <item>FG141</item>
7 <item>FG123</item>
8 <item>FG113</item>
9 </string-array>
10 <string-array name="wochen">
11 <item>1</item>
12 <item>2</item>
13 <item>3</item>
14 <item>4</item>
15
16 </string-array>
17</resources>
Strings.xml
2<resources>
3 <string name="hello">Hello World, androidStundenPlanApp!</string>
4 <string name="app_name">AndroidStundenPlanApp</string>
5 <string name="planet_prompt">Choose a planet</string>
6 <string name="mContext">Choose a planet</string>
7 <string name="selection">Choose a planet</string>
8</resources>
Wie man sieht habe ich Zwei Spinner eingebaut. Mit diesen soll der User wählen was das SQL Statement den Server abfragen soll. Später soll es so Funktionieren:
1.Der User wählt Klasse und Woche aus
2.Der User drückt auf "Anfragen"
3.Der User kommt auf einer Neuen Seite den Stundenplan für diese Woche gezeigt.
Derzeit Hänge ich etwas an dem Teil die Datenbank abzufragen:
System.out.println("VendorError: " + sqle.getErrorCode());
An dieser Stelle bekomme ich die Meldung angezeigt: The Method geteErrorCode() is undefined for the type SQLException
Was muss ich tuen? Da ich warscheinlich mehr Hilfe brauchen werde wäre es toll wen sich Jemand finden lässt der mir vieleicht per Teamviewer (natürlich werde ich diesen Beitrag aktualisieren um anderen zu Helfen) weiter hilft.
Bitte um Hilfe
— geändert am 02.05.2011, 19:01:06
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.