我使用的是xampp mysql,这段代码是针对JDBC程序的。实际上有两个类,一个是dbconnect.java,另一个是login.java。我想访问另一个类(即login.java)中的连接对象(即conn)。但我没有适当的想法,我已经在这里包含代码,请告诉我什么是问题和解决方案是什么?如何访问java中另一个类的连接对象?
这是dbconnect.java
package stundentrecord;
import java.sql.Connection;
import java.sql.DriverManager;
public class dbconnect {
public void conect(){
Connection con = null;
String url = "jdbc:mysql://localhost:3306/";
String db = "studentRecord";
String driver = "com.mysql.jdbc.Driver";
String user = "root";
String pass = "";
try{
Class.forName(driver);
con = DriverManager.getConnection(url + db, user, pass);
if(con==null){
System.out.println("Connection cannot be established");
}
// con.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
代码,这里是从另一个类名为login.java
if(source==login){
if(username!=null && password!=null) {
Connection conn= null;
Statement stmt = null;
dbconnect db = new dbconnect();
db.conect();
String query = "SELECT * from userlogin";
try{
stmt=(Statement) conn.createStatement(); // here is the problem
ResultSet rs = stmt.executeQuery(query); // here is the problem
while (rs.next()) {
String user = rs.getString("username");
String pass=rs.getString("password");
System.out.println("Welcome "+user);
}
} catch(SQLException ex){
ex.getMessage();
}
StundentRecord SR = new StundentRecord();
} else {
JOptionPane.showMessageDialog(null,"Username or password field is empty","error !!",JOptionPane.ERROR_MESSAGE);
}
}
什么是真正的问题,以及如何解决它的代码?
请格式化您的代码,这是不可读的。遵循Java约定(类是第一个大写字母,等等......) – m0skit0 2013-02-19 15:00:48
@SotiriosDelimanolis如果你阅读代码,你会明白设计问题 – 2013-02-19 15:01:29
@LuiggiMendoza如果你可以阅读任何东西,那就是。 – m0skit0 2013-02-19 15:02:06