问题描述
- 如何修改下面的java程序,我希望当点击登陆按钮时候,能够跳转到聊天界面。我已经链接了数据库了
-
我的要求如下,在文本框输入账号和密码,连接数据库验证码账号和密码是否一致,如果一致就当点击登陆按钮时候就跳转到聊天界面。麻烦你帮我修改一下程序,
package sql;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;import javax.swing.*;
class liaotian extends JFrame implements ActionListener{
JPanel jpanel1;
TextArea textArea1;
TextField textField3;
JButton jButton1;
liaotian(){
this.setTitle("对话");
this.setSize(600,600);
this.setVisible(true);
jpanel1=new JPanel();
textArea1=new TextArea(15,15);
jButton1=new JButton("发送");
textField3=new TextField(10);
jpanel1.add(textArea1);
jButton1.addActionListener(this);
jpanel1.add(jButton1);jpanel1.add(textField3);
this.add(jpanel1);} public void actionPerformed(ActionEvent e) { if(e.getSource()==jButton1){ textArea1.setText(textField3.getText()); textField3.setText(""); }}}
public class lianxi2 extends JFrame implements ActionListener{
JPanel jpanel;
Label label1;
TextField textField1;
Label label2;
TextField textField2;
JButton jButton;
static String col11,col12;
public lianxi2(){
super("登陆");
jpanel=new JPanel();
this.setVisible(true);
this.setSize(600,600);
label1=new Label("账号");
textField1=new TextField(15);
label2=new Label("密码");
textField2=new TextField(15);
jButton=new JButton("登陆");jpanel.add(label1); jpanel.add(textField1);
jpanel.add(label2); jpanel.add(textField2);
jpanel.add(jButton);
this.add(jpanel);
jButton.addActionListener(this); //给jbutton加上监听} public static void main(String[] args) { lianxi2 lt = new lianxi2(); try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//加载数据库驱动 Connection conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;Database=denglu","sa","123456");//链接数据库 Statement statement=conn.createStatement(); ResultSet rs = statement.executeQuery("select * from denglu "); while(rs.next()){ col11= rs.getString("zhanghao"); col12 = rs.getString("mima"); } conn.close(); }
catch(Exception e){
e.printStackTrace();
}
}public void actionPerformed(ActionEvent e) {
if(e.getSource()==jButton){
if(textField1.getText()==col11){
if(textField2.getText()==col12){
liaotian m=new liaotian();
m.setVisible(true);
}
}
}}}
解决方案
你这样是取出所有的账户
应该是
statement.setstring(1,用户输入的用户名);
statement.setstring(2,用户输入的密码);
ResultSet rs = statement.executeQuery("select * from denglu where zhanghao=? and mima=?");
if (rs.next())
验证成功