T
tha_dude
Gast
Hallo,
bin noch ziemlich neu in der Java-Welt und habe eine Frage zu unten stehendem Java-Code.
Nutze eclipse 3.2.0, JRE 1.5.0_05, ojdbc_14g.jar & swt-3.2 für win.
OK. Das Problem, vor dem ich stehe, ist, dass ich aus der DB nichts in die Tabelle bekomme.
Die Abfrage sollte eigentlich 5 Zeilen liefern. Damit ich überhaupt erstmal etwas bekommen, dachte ich, erstmal die erste Spalte zu füllen. Allerdings klappt noch nicht einmal das "System.out.println" und eclipse meldet auch keinen Fehler. Die Abfrage wird allerdings gestartet.
Gegooglt habe ich natürlich auch schon, allerdings sind die meisten Dinge noch ein wenig zu komplex für mich.
Wäre nett, wenn mir hier jemand weiterhelfen könnte:
Vielen Dank im Voraus!
bin noch ziemlich neu in der Java-Welt und habe eine Frage zu unten stehendem Java-Code.
Nutze eclipse 3.2.0, JRE 1.5.0_05, ojdbc_14g.jar & swt-3.2 für win.
OK. Das Problem, vor dem ich stehe, ist, dass ich aus der DB nichts in die Tabelle bekomme.
Die Abfrage sollte eigentlich 5 Zeilen liefern. Damit ich überhaupt erstmal etwas bekommen, dachte ich, erstmal die erste Spalte zu füllen. Allerdings klappt noch nicht einmal das "System.out.println" und eclipse meldet auch keinen Fehler. Die Abfrage wird allerdings gestartet.
Gegooglt habe ich natürlich auch schon, allerdings sind die meisten Dinge noch ein wenig zu komplex für mich.
Wäre nett, wenn mir hier jemand weiterhelfen könnte:
Code:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.swt.widgets.Text;
public class MgmtTOOL {
/**
* @param args
*/
public static Shell shell=null;
public static Display display=null;
private static Table table=null;
private static TableColumn table_e_s=null;
private static TableColumn table_e_l=null;
private static TableItem table_ergebnis_items=null;
private static String var1 = "123";
private static String var2 = "ABC";
private static String var3 = "DEF%";
//private String ergebnis=null;
public static void buildTable(){
table = new Table(shell, SWT.BORDER);
table.setLinesVisible(true);
table.setHeaderVisible(true);
table.setBounds(10, 120, 200, 100);
table_e_s = new TableColumn(table,SWT.LEFT);
table_e_l = new TableColumn(table,SWT.LEFT);
table_e_s.setText("1");
table_e_s.setWidth(50);
table_e_l.setText("2");
table_e_l.setWidth(50);
table_ergebnis_items = new TableItem(table, 0);
table_ergebnis_items.setText("0");
}
public static void build_text_interface(){
final Text text_var1 = new Text(shell, SWT.BORDER);
text_var1.setText(var1);
text_var1.setBounds(10,10,30,20);
text_var1.setTextLimit(3);
final Text text_var2 = new Text(shell, SWT.BORDER);
text_var2.setText(var2);
text_var2.setBounds(60,10,50,20);
text_var2.setTextLimit(12);
final Text text_var3 = new Text(shell, SWT.BORDER);
text_var3.setText(var3);
text_var3.setBounds(120,10,80,20);
text_var3.setTextLimit(50);
}
public void build_ergebnis_text(String ergebnis){
final Text text_ergebnis = new Text(shell, SWT.BORDER);
text_ergebnis.setText(ergebnis);
text_ergebnis.setBounds(120,50,80,20);
text_ergebnis.setTextLimit(50);
}
public static void build_buttons(){
Button suchen_var1 = new Button(shell, SWT.PUSH);
suchen_var1.setText("Suche");
suchen_var1.setBounds(220,10,80,20);
MouseAdapter suchen_var3 = new MouseAdapter() {
public void mouseDown(MouseEvent e) {
exec_SQL(var1,var2,var3);
}
};
Button suchen_var2 = new Button(shell, SWT.PUSH);
suchen_var2.setText("Suche");
suchen_var2.setBounds(220,31,80,20);
suchen_var2.addMouseListener(suchen_var3);
}
public static void exec_SQL(String db_var1, String db_var2, String db_var3){
ResultSet rs = null;
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(ClassNotFoundException ex){
System.out.println(ex.getMessage());
}
Connection con = null;
try {
con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:TEST", "testschema", "testschema");
String query = "SELECT db_var1, db_var3 FROM test WHERE db_var1 = ? AND db_var2 = ? AND db_var3 LIKE ?";
PreparedStatement stmt = con.prepareStatement(query);
stmt.setString(1, db_var1);
stmt.setString(2, db_var2);
stmt.setString(3, db_var3);
rs = stmt.executeQuery( query );
int rows=0, i=0;
try {
while (rs.next()) {
String text = rs.getString(i+1);
table_ergebnis_items.setText(text);
System.out.println(text);
rows++;
}
System.out.println(rs.getString(1));
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(rs.getString(1));
}
catch ( SQLException e ) { }
finally {
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
display = new Display();
shell = new Shell(display);
shell.setText("Management Tool");
shell.setSize(320,250);
shell.open();
buildTable();
build_text_interface();
build_buttons();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) display.sleep();
}
display.dispose();
}
}
Vielen Dank im Voraus!