鱼C论坛

 找回密码
 立即注册
查看: 2307|回复: 2

老师说是成员变量和局部变量没有分开才出现问题,但是我真的不知道问题在哪。有没....

[复制链接]
发表于 2019-11-24 11:16:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import java.awt.Container;
import java.awt.event.*;
import java.sql.*;

import javax.swing.*;
class Login extends JFrame{
        JLabel jj = new JLabel("登录界面");
        JLabel j1 = new JLabel("账号");
        JLabel j2 = new JLabel("密码");
        JTextField tt = new JTextField();
        JPasswordField pass = new JPasswordField();
        JButton b1 = new JButton("登录");
        JButton b2 = new JButton("取消");
        JLabel zc = new JLabel("用户不存在,请注册");
        JButton b3 = new JButton("注册");
        Container c = this.getContentPane();
        static String str;
       
        public Login() {
                super("用户登录界面");
                this.setBounds(200,200,500,500);
                this.setLayout(null);
                jj.setBounds(220,0,100,70);
                j1.setBounds(100,75,70,60);
                j2.setBounds(100,115,70,60);
                tt.setBounds(140,80,120,35);
                pass.setBounds(140,120,120,35);
                b1.setBounds(140,160,60,40);
                b2.setBounds(210,160,60,40);
                zc.setBounds(50,350,150,70);
                b3.setBounds(210,360,60,40);
                c.add(jj);
                c.add(j1);
                c.add(j2);
                c.add(tt);
                c.add(pass);
                c.add(b1);
                c.add(b2);
                c.add(zc);
                c.add(b3);
                bh a = new bh();
                b1.addActionListener(a);
                b2.addActionListener(a);
                b3.addActionListener(a);
                this.setVisible(true);
        }
       
        class bh implements ActionListener{
                public void actionPerformed(ActionEvent e) {
                        JButton bt = (JButton)e.getSource();
                        String username = tt.getText().trim();
                        String Pass = String.valueOf(pass.getPassword());
                       
                        JFrame dd2 = new JFrame("注册界面");
                        Container x = dd2.getContentPane();
                        JLabel yh = new JLabel("用户注册");
                        JLabel zy = new JLabel("用户名");
                        JLabel zm = new JLabel("密码");
                        JLabel zm2 = new JLabel("确认密码");
                        JButton log=new JButton("注册");
                        JButton can=new JButton("取消");
                        JTextField y1 = new JTextField();
                        JPasswordField y2 = new JPasswordField();
                        JPasswordField y3 = new JPasswordField();
                       
                        if(bt==b1) {
                                /*if(tt.getText().equals("888")&&Pass.equalsIgnoreCase("222333"))
                                        JOptionPane.showMessageDialog(null, "登陆成功");
                                else
                                        JOptionPane.showMessageDialog(null, "登陆失败");
                        }*/
                         try{
                                 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                                          String url = "jdbc:sqlserver://localhost:1433;databasename=student";
                                          String user = "sa";
                                          String password = "123456";
                                          Connection con = DriverManager.getConnection(url, user, password);
                                          Statement stmt=con.createStatement();
                                          String sel = "select * from student where name='"+username+"' and pass='"+Pass+"'";
                                          ResultSet rset=stmt.executeQuery(sel);
                                          if(rset.next())
                                                  JOptionPane.showMessageDialog(null, "登陆成功");
                                          else
                                                  JOptionPane.showMessageDialog(null, "登陆失败");
                                         
                                  con.close();
                         }catch(Exception e1){
                                    e1.printStackTrace();}}
                        if(bt==b2) {
                                tt.setText("");
                                pass.setText("");
                        }
                        if(bt==b3) {
                               
                                dd2.setBounds(200,200,500,500);
                               
                                x.setLayout(null);
                               
                                yh.setBounds(130,0,60,50);
                               
                                zy.setBounds(100,60,60,50);
                               
                                zm.setBounds(100,110,60,50);
                               
                                zm2.setBounds(100,160,120,50);
                               
                                log.setBounds(120,230,60,40);
                               
                                can.setBounds(200,230,60,40);
                               
                                y1.setBounds(160,65,120,35);
                               
                                y2.setBounds(160,115,120,35);
                               
                                y3.setBounds(160,165,120,35);
                               
                                x.add(yh);
                                x.add(zy);
                                x.add(zm);
                                x.add(zm2);
                                x.add(y1);
                                x.add(y2);
                                x.add(y3);
                                x.add(log);
                                x.add(can);
                                dd2.setVisible(true);
                               
                                log.addActionListener(new ActionListener(){
                                        public void actionPerformed(ActionEvent e2){
                                                String setuser = zy.getText();
                                                String setpass = String.valueOf(y2.getPassword());
                                                String setpass2 = String.valueOf(y3.getPassword());
                                                try{
                                                        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                                                          String url = "jdbc:sqlserver://localhost:1433;databasename=student";
                                                          String user = "sa";
                                                          String password = "123456";
                                                          Connection con = DriverManager.getConnection(url, user, password);
                                                          Statement stmt=con.createStatement();
                                                          String sel = "select * from student where name="+"'"+setuser+"'";
                                                          ResultSet rset=stmt.executeQuery(sel);
                                                          //rset.next();
                                                          //System.out.println(rset.getString(1));
                                                          //rset.beforeFirst();
                                                         
                                                          //if(rset.next())
                                                          //         str = rset.getString();
                                                          //System.out.println(str);
                                                          if(rset.next())
                                                                  JOptionPane.showMessageDialog(null, "用户已存在");
                                                          else
                                                                  JOptionPane.showMessageDialog(null, "。。。");
                                                          con.close();
                                         }catch(Exception e3){
                                                    e3.printStackTrace();}
                                        }
                                });
                }
        }
}
}

public class Test {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                new Login();
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-11-24 11:18:32 | 显示全部楼层
这个是用户登录还有注册界面。然后注册界面链接 sql server。但是不管在注册界面不管输入的用户名是不是存在。都只是显示 “。。。”
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-28 10:44:04 | 显示全部楼层
把bh类中的
JFrame dd2 = new JFrame("注册界面");
                        Container x = dd2.getContentPane();
                        JLabel yh = new JLabel("用户注册");
                        JLabel zy = new JLabel("用户名");
                        JLabel zm = new JLabel("密码");
                        JLabel zm2 = new JLabel("确认密码");
                        JButton log=new JButton("注册");
                        JButton can=new JButton("取消");
                        JTextField y1 = new JTextField();
                        JPasswordField y2 = new JPasswordField();
                        JPasswordField y3 = new JPasswordField();
搬到bh中作为成员变量
import java.awt.Container;
import java.awt.event.*;
import java.sql.*;

import javax.swing.*;
class Login extends JFrame{
        JLabel jj = new JLabel("登录界面");
        JLabel j1 = new JLabel("账号");
        JLabel j2 = new JLabel("密码");
        JTextField tt = new JTextField();
        JPasswordField pass = new JPasswordField();
        JButton b1 = new JButton("登录");
        JButton b2 = new JButton("取消");
        JLabel zc = new JLabel("用户不存在,请注册");
        JButton b3 = new JButton("注册");
        Container c = this.getContentPane();
        static String str;
       
        public Login() {
                super("用户登录界面");
                this.setBounds(200,200,500,500);
                this.setLayout(null);
                jj.setBounds(220,0,100,70);
                j1.setBounds(100,75,70,60);
                j2.setBounds(100,115,70,60);
                tt.setBounds(140,80,120,35);
                pass.setBounds(140,120,120,35);
                b1.setBounds(140,160,60,40);
                b2.setBounds(210,160,60,40);
                zc.setBounds(50,350,150,70);
                b3.setBounds(210,360,60,40);
                c.add(jj);
                c.add(j1);
                c.add(j2);
                c.add(tt);
                c.add(pass);
                c.add(b1);
                c.add(b2);
                c.add(zc);
                c.add(b3);
                bh a = new bh();
                b1.addActionListener(a);
                b2.addActionListener(a);
                b3.addActionListener(a);
                this.setVisible(true);
        }
       
        class bh implements ActionListener{
                        JFrame dd2 = new JFrame("注册界面");
                        Container x = dd2.getContentPane();
                        JLabel yh = new JLabel("用户注册");
                        JLabel zy = new JLabel("用户名");
                        JLabel zm = new JLabel("密码");
                        JLabel zm2 = new JLabel("确认密码");
                        JButton log=new JButton("注册");
                        JButton can=new JButton("取消");
                        JTextField y1 = new JTextField();
                        JPasswordField y2 = new JPasswordField();
                        JPasswordField y3 = new JPasswordField();

                public void actionPerformed(ActionEvent e) {
                        JButton bt = (JButton)e.getSource();
                        String username = tt.getText().trim();
                        String Pass = String.valueOf(pass.getPassword());
                       
                        
                       
                        if(bt==b1) {
                                /*if(tt.getText().equals("888")&&Pass.equalsIgnoreCase("222333"))
                                        JOptionPane.showMessageDialog(null, "登陆成功");
                                else
                                        JOptionPane.showMessageDialog(null, "登陆失败");
                        }*/
                         try{
                                 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                                          String url = "jdbc:sqlserver://localhost:1433;databasename=student";
                                          String user = "sa";
                                          String password = "123456";
                                          Connection con = DriverManager.getConnection(url, user, password);
                                          Statement stmt=con.createStatement();
                                          String sel = "select * from student where name='"+username+"' and pass='"+Pass+"'";
                                          ResultSet rset=stmt.executeQuery(sel);
                                          if(rset.next())
                                                  JOptionPane.showMessageDialog(null, "登陆成功");
                                          else
                                                  JOptionPane.showMessageDialog(null, "登陆失败");
                                         
                                  con.close();
                         }catch(Exception e1){
                                    e1.printStackTrace();}}
                        if(bt==b2) {
                                tt.setText("");
                                pass.setText("");
                        }
                        if(bt==b3) {
                               
                                dd2.setBounds(200,200,500,500);
                               
                                x.setLayout(null);
                               
                                yh.setBounds(130,0,60,50);
                               
                                zy.setBounds(100,60,60,50);
                               
                                zm.setBounds(100,110,60,50);
                               
                                zm2.setBounds(100,160,120,50);
                               
                                log.setBounds(120,230,60,40);
                               
                                can.setBounds(200,230,60,40);
                               
                                y1.setBounds(160,65,120,35);
                               
                                y2.setBounds(160,115,120,35);
                               
                                y3.setBounds(160,165,120,35);
                               
                                x.add(yh);
                                x.add(zy);
                                x.add(zm);
                                x.add(zm2);
                                x.add(y1);
                                x.add(y2);
                                x.add(y3);
                                x.add(log);
                                x.add(can);
                                dd2.setVisible(true);
                               
                                log.addActionListener(new ActionListener(){
                                        public void actionPerformed(ActionEvent e2){
                                                String setuser = zy.getText();
                                                String setpass = String.valueOf(y2.getPassword());
                                                String setpass2 = String.valueOf(y3.getPassword());
                                                try{
                                                        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                                                          String url = "jdbc:sqlserver://localhost:1433;databasename=student";
                                                          String user = "sa";
                                                          String password = "123456";
                                                          Connection con = DriverManager.getConnection(url, user, password);
                                                          Statement stmt=con.createStatement();
                                                          String sel = "select * from student where name="+"'"+setuser+"'";
                                                          ResultSet rset=stmt.executeQuery(sel);
                                                          //rset.next();
                                                          //System.out.println(rset.getString(1));
                                                          //rset.beforeFirst();
                                                         
                                                          //if(rset.next())
                                                          //         str = rset.getString();
                                                          //System.out.println(str);
                                                          if(rset.next())
                                                                  JOptionPane.showMessageDialog(null, "用户已存在");
                                                          else
                                                                  JOptionPane.showMessageDialog(null, "。。。");
                                                          con.close();
                                         }catch(Exception e3){
                                                    e3.printStackTrace();}
                                        }
                                });
                }
        }
}
}

public class Test {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                new Login();
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 15:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表