用SQL实现Java登录表单
我试图用Java和MySQL(WAMP服务器和Netbeans)开发一个登录表单,但它不起作用。当我用正确的信息填写表单并发送时,它总是告诉我用户不存在 这是第一类Connector.java:用SQL实现Java登录表单,java,mysql,Java,Mysql,我试图用Java和MySQL(WAMP服务器和Netbeans)开发一个登录表单,但它不起作用。当我用正确的信息填写表单并发送时,它总是告诉我用户不存在 这是第一类Connector.java: package BDD; // public class Connector { private Connection conn; private Statement st; private ResultSet rs; public Connection getConnection (){
package BDD;
//
public class Connector {
private Connection conn;
private Statement st;
private ResultSet rs;
public Connection getConnection (){
try{
Class.forName("com.mysql.jdbc.Driver");
}
catch(ClassNotFoundException e){
System.err.println(e);
}
try {
conn= (Connection)
DriverManager.getConnection("jdbc:mysql:
//localhost:3306/ges_article","root","");
} catch (SQLException e) {
System.err.println(e);//afficher erreur
}
finally{
return conn;
}
}
public ResultSet searchQuery (String sql){
try {
getConnection();
st=conn.createStatement();
rs=st.executeQuery(sql);
} catch (SQLException e) {
System.err.println(e);
}
return rs;
}
}
这是第二个类authentication.java:
//
public class Authentification extends javax.swing.JFrame {
//
private void initComponents() {
//
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
Connector db = new Connector();
String user, password;
user = jTextFieldLogin.getText();
password = jTextFieldPassword.getText();
ResultSet rs = db.searchQuery("SELECT * FROM user WHERE login='"+user+"' AND password='"+password+"'" );
if(rs.isBeforeFirst()){
System.out.println("utilisateur existant");
}
else{
System.out.println("utilisateur inexistant");
}
}
catch(Exception e){
System.out.println("Error " + e.getMessage());
}
}
//
}
rs.isBeforeFirst()
我还鼓励使用
考虑阅读有关的内容。您的应用程序易受攻击。还请显示您的用户
表的内容以及您在jTextFieldLogin
中提供的输入。它没有从数据库中找到数据,并且总是显示“利用我们的不确定性”
Connector db = new Connector();
try (Connection conn = db.getConnection()) {
String user, password;
user = jTextFieldLogin.getText();
password = jTextFieldPassword.getText();
PreparedStatement ps = conn.prepareStatement("SELECT * FROM user WHERE login=? AND password=?");
ps.setString(1, user);
ps.setString(2, password);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
System.out.println("utilisateur existant");
} else {
System.out.println("utilisateur inexistant");
}
} catch (Exception e) {
System.out.println("Error " + e.getMessage());
}