我想将db连接与其他类分开,因此我不需要再为每个要创建的类编写db连接。我希望登录类能够访问不同类的数据库连接
这是数据库连接类
package bloodbank;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class dbconnection {
PreparedStatement pst = null;
ResultSet rs = null;
public dbconnection() {}
public void connect() {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection con =
DriverManager.getConnection("jdbc:sqlserver://localhost:1433;
databaseName=BloodManagementSystem;user=yusuf;password=ali1234");
} catch (ClassNotFoundException | SQLException e) {
}
}
public PreparedStatement prepareStatement(String select__from_Users_where_Username_and_Pas) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
这是登录类登录按钮
import bloodbank.dbconnection;
import java.awt.HeadlessException;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;
public class login extends javax.swing.JFrame {
public login() {
initComponents();
}
@SuppressWarnings("unchecked")
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
try
{
dbconnection con = new dbconnection();
con.connect();
PreparedStatement pst = con.prepareStatement("Select * from Users where Username=? and Password=?");
pst.setString(1, jTextField1.getText());
pst.setString(2, jTextField2.getText());
ResultSet rs = pst.executeQuery();
if(rs.next()) {
JOptionPane.showMessageDialog(null, "Username and Password correct");
Mainform field = new Mainform();
field.setVisible(true);
setVisible(false);
} else {
JOptionPane.showMessageDialog(null, "invalid username and password");
}
}
catch(SQLException | HeadlessException e){
JOptionPane.showMessageDialog(null, e);
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(() -> {
new login().setVisible(true);
});
}
}
欢迎来到Stack Overflow!请[参观](http://stackoverflow.com/tour)以查看网站的工作原理和问题,并相应地编辑您的问题。另请参阅:[为什么“有人可以帮我吗?”不是一个真正的问题?](http://meta.stackoverflow.com/q/284236) –
是的,这是一个好主意。问题是什么? – MadProgrammer
我想有人来测试这个代码,因为当我运行它时,它显示了很多像这样的错误 –