小试牛刀-教务信息管理系统(StuAdmin)
来源:互联网 发布:mac pro需要贴膜吗 编辑:程序博客网 时间:2024/04/27 23:07
package StuAdmin;import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.BorderFactory;import javax.swing.ButtonGroup;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JRadioButton;import javax.swing.JTextField;import javax.swing.border.TitledBorder;public class StuAdmin implements ActionListener {static Connection conn;static Statement st;String index = "-";JFrame f;JTextField id;JPasswordField pw;public StuAdmin() {f = new JFrame("教务管理系统");f.setLayout(null);f.setBounds(450, 200, 450, 300);JPanel p = new JPanel();p.setBounds(7, 5, 430, 260);p.setLayout(null);p.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(new Color(0,0,50), 2), " 教务管理系统 ",TitledBorder.CENTER, TitledBorder.TOP));JLabel label = new JLabel("USER ID");label.setBounds(125,50,80,25);p.add(label);id = new JTextField();id.setBounds(225, 50, 100, 25);p.add(id);label = new JLabel("PASSWORD");label.setBounds(115, 85, 100, 25);p.add(label);pw = new JPasswordField();pw.setBounds(225, 85, 100, 25);p.add(pw);JRadioButton c1 = new JRadioButton("学生登录");JRadioButton c2 = new JRadioButton("教师登录");JRadioButton c3 = new JRadioButton("管理员登录");c1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {index = "student";}});c2.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {index = "teacher";}});c3.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {index = "admin";}});ButtonGroup bg = new ButtonGroup();bg.add(c1);bg.add(c2);bg.add(c3);c1.setBounds(75, 140, 80, 25);c2.setBounds(175, 140, 80, 25);c3.setBounds(275, 140, 100, 25);p.add(c1);p.add(c2);p.add(c3);JButton b = new JButton("登录");b.setBackground(new Color(0, 0, 50));b.setFocusPainted(false);b.setForeground(Color.WHITE);b.addActionListener(this);b.setBounds(115, 180, 100, 30);p.add(b);b = new JButton("忘记密码");b.setBackground(new Color(0, 0, 50));b.setFocusPainted(false);b.setForeground(Color.WHITE);b.addActionListener(this);b.setBounds(235, 180, 100, 30);p.add(b);f.add(p);f.setVisible(true);f.setResizable(false);}public static Connection getConnection() {Connection con = null; // 创建用于连接数据库的Connection对象try {Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动con = DriverManager.getConnection("jdbc:mysql://localhost:3306/stuadmin", "root", "123456");// 创建数据连接} catch (Exception e) {System.out.println("数据库连接失败" + e.getMessage());}return con; // 返回所建立的数据库连接}public static int login(String table, String id, String pw) {conn = getConnection(); // 同样先要获取连接,即连接到数据库try {String sql = "SELECT * FROM " + table + " WHERE " + table+ "id = '" + id + "'"; // 查询数据的sql语句st = (Statement) conn.createStatement(); // 创建用于执行静态sql语句的Statement对象,st属局部变量ResultSet rs = st.executeQuery(sql); // 执行sql查询语句,返回查询数据的结果集while (rs.next()) { // 判断是否还有下一个数据String Spw = rs.getString(table + "pw");if (pw.equals(Spw)) {return 1;}}conn.close(); // 关闭数据库连接} catch (SQLException e) {System.out.println("查询数据失败");return 0;}return 0;}public static void main(String[] args) {new StuAdmin();}@SuppressWarnings("deprecation")@Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubString cmd = e.getActionCommand();if (cmd.equals("登录")) {if (index == "student") {if (login("student", id.getText(), pw.getText()) == 1) {f.dispose();try {new StuBoard(id.getText());} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}} else {JOptionPane.showMessageDialog(null, "用户名或密码输入有误!", "error",0);}} else if (index == "teacher") {if (login("teacher", id.getText(), pw.getText()) == 1) {f.dispose();try {new TeaBoard(id.getText());} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}} else {JOptionPane.showMessageDialog(null, "用户名或密码输入有误!", "error",0);}} else if (index == "admin") {if (login("admin", id.getText(), pw.getText()) == 1) {f.dispose();try {new AdmBoard();} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}} else {JOptionPane.showMessageDialog(null, "用户名或密码输入有误!", "error",0);}} else {JOptionPane.showMessageDialog(null, "请选择登录方式!", "error", 0);}} else if (cmd.equals("忘记密码")) {f.dispose();new ForgetPw(f);}}}
0 0
- 小试牛刀-教务信息管理系统(StuAdmin)
- 小试牛刀-教务信息管理系统(SQL)
- 小试牛刀-教务信息管理系统(StuBoard)
- 小试牛刀-教务信息管理系统(TeaBoard)
- 小试牛刀-教务信息管理系统(AdmBoard)
- 小试牛刀-教务信息管理系统(ForgetPw)
- 小试牛刀-教务信息管理系统(Operates)
- 小试牛刀-教务信息管理系统(CalendarPanel)
- 信息管理系统(java)
- l教务系统总结一( 思想)
- 教务系统总结二(思想)
- 教务系统总结四(思想)
- 教务系统数据库设计 (一)
- 大话高校正方教务系统(上)
- 青果教务系统API(Java版)
- 教务系统选课(抢课)技巧
- 学生信息管理系统(一)
- 学生信息管理系统(c++)
- PAT Basic 1036 - 1039
- [LeetCode] Two Sum
- Java递归遍历文件夹
- Linux下使用命令上传本地文件、下载服务器文件
- ios 程序崩溃时捕获到异常信息
- 小试牛刀-教务信息管理系统(StuAdmin)
- 如何营造产品的生存空间
- android客户端访问服务端(HttpUtils和Gson)
- java 导出为 jar 包
- 怎么把数据库结果集以表格形式呈现在界面上
- YOU HAVE NOT XXX A /BOOT/EFI PARTION
- Apple WatchOS2 新特性预览
- Linux 下 epuck 系统登入
- 【长篇高能】ReactiveCocoa 和 MVVM 入门