赞
踩
功能需求:用户登陆图书管理系统,如没有可注册。登陆后,可查看图书信息,可实现图书借还,查询等功能
数据库:用户信息,图书信息
功能需求:用户登陆学生信息管理系统,如没有可注册。登陆后,可查看学生的信息,可新增,删除,修改学生;可实现学生成绩管理,如查看成绩,添加成绩等功能。
数据库:学生信息
功能需求:用户可登陆订票系统,如没有可注册。登陆订票系统后,可查看航班信息,可预订机票,可退订机票等功能
数据库:用户信息,机票信息
import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JPasswordField; import javax.swing.JTextField; //登录界面 //main方法和init方法是同一级 //同级 无顺序 //mouse鼠标 //Java里面用之前必须先创建 public class Login { //main方法--主方法,在主方法中调用自定义的init方法 public static void main(String[] args) { /*也可以直接init(),但是会导致init()为static*/ Login lgn = new Login(); lgn.init(); } //创建Login类 //静态方法不能用非静态的变量 // static Login lgn = new Login(); JTextField t1 = new JTextField(20); JPasswordField p1 = new JPasswordField(20); //创建一个空标签 -- 该空标签主要用于显示用户名或者密码不正确的 JLabel empty = new JLabel(); JFrame f = new JFrame(); //创建一个窗体 //自定义方法,方法名为init,该方法的主要功能是初始化窗体界面 public void init() { JPanel p = new JPanel(); //创建一个面板 //创建用户名和文本输入框 JLabel usrname = new JLabel("用户名:"); //创建密码和密码输入框 JLabel password = new JLabel("密 码:"); //创建登录和注册按钮 JButton login = new JButton("登录"); //创建自定义的内部类MyListener MyListener ml = new MyListener(); //给登录按钮绑定鼠标的监听事件 login.addMouseListener(ml); JButton register = new JButton("注册"); p.add(usrname); //将用户名放入面板中 p.add(t1); //将文本输入框放入面板中 p.add(password); //将密码放入面板中 p.add(p1); //将密码输入框放入面板中 p.add(login); //将登录按钮放入面板中 p.add(register); //将注册按钮放入面板中 p.add(empty); //将空标签放入面板中 f.add(p); //将面板放入窗体中 f.setVisible(true); //设置窗体可见 f.setSize(320, 300); //设置窗体的大小 f.setLocation(600, 200); //设置窗体的位置 f.setTitle("登陆界面"); //设置窗体的标题 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置关闭窗体的后台 } //自定义一个内部类(在一个类的里面,再定义一个类,该类叫做内部类) //让MyListener去继承MouseAdapter,因为MouseAdapter具有鼠标时间的监听, //继承之后就会继承过来父类的鼠标事件监听 Alt+/ /*监听器,里面含有很多监听事件*/ public class MyListener extends MouseAdapter { //想法错误 // Login l; // public MyListener() { // this.l = l; // } //鼠标单击事件的监听 @Override public void mouseClicked(MouseEvent e) { //System.out.println("你点我了...."); //验证在登陆界面输入的用户名或者密码是否正确 //1.获取登录界面输入的用户名和密码的内容 /** * p1./t1. 作用域的问题!访问不到 * 故:可以通过扩大作用域,放在与main,init,内部类同级的位置(利用左边小减号) * 故:升高权限,在这几个里面都可以用 */ String strName = t1.getText(); //t1表示用户名输入框,获取用户名输入框输入的内容 //横杠代表过时了,但是还是可以用 String strPwd = p1.getText(); //p1表示密码输入框,获取密码输入框输入的内容 System.out.println(strName + "," + strPwd); //2.连接数据库,要查询myuser表是否有在登录界面输入的用户名和密码 //获得数据库的连接 String url = "jdbc:oracle:thin:@localhost:1521:orcl"; String username = "system"; String pwd = "tarena"; //父类继承来的方法并没有抛出异常,所以不能throws try { Connection con = DriverManager.getConnection(url, username, pwd); //预编译SQL语句 //String sql = "select * from myuser"; //从所有的里面,一条一条的查询 效率低 //and 并且 必须两种情况都符合 String sql = "select * from myuser where name=? and pwd=?"; PreparedStatement prep = con.prepareStatement(sql); prep.setString(1, strName); prep.setString(2, strPwd); //执行SQL语句 ResultSet rs = prep.executeQuery(); //根据rs结果集是否有数据,来判断输入的用户名和密码是否正确 if (rs.next()) { //rs结果集有数据 -- 用户名和密码输入正确 System.out.println("对啦"); JFrame w = new JFrame(); //创建一个新窗体 w.setVisible(true); w.setSize(400, 300); //让登录界面窗体关闭 //即使lgn放在和main同级,内部类不能 lgn. 想法错误 f.setVisible(false); } else { //rs结果集没有数据 -- 用户名或者密码不正确 //System.out.println("错啦"); //将错啦信息显示在空标签上 empty.setText(" 用户名或者密码不正确 "); } } catch (SQLException e1) { e1.printStackTrace(); } } } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。