public class MainFrame extends JFrame { private static final long serialVersionUID = 591378743488239713L; public static String DB_NAME = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; public static String DB_URL = "jdbc:sqlserver://localhost:1433; DatabaseName=BookManager"; JPanel contentPane; Statement ps; ResultSet rs; Connection con; JMenuBar jMenuBar = new JMenuBar(); JMenu Menu_UserManager = new JMenu(); JMenu jMenuHelp = new JMenu(); JMenuItem jMenuHelpAbout = new JMenuItem(); JMenuItem adduser = new JMenuItem(); JMenuItem deleteuser = new JMenuItem(); JMenu reader_management = new JMenu(); // 读者管理 JMenuItem queryReader = new JMenuItem(); JMenuItem change_readerInfo = new JMenuItem(); JMenuItem add_readerInfo = new JMenuItem(); JMenu borrowAndreturn = new JMenu(); // 借阅管理 JMenuItem returnBook = new JMenuItem(); JMenuItem borrowBook = new JMenuItem(); JMenu book_management = new JMenu(); // 图书管理 JMenuItem AddBook = new JMenuItem(); JMenuItem ChangeBookInfo = new JMenuItem(); JMenuItem queryBookInfo = new JMenuItem(); JMenuItem exit = new JMenuItem(); JMenuItem changePasswd = new JMenuItem(); JMenuItem scanningUser = new JMenuItem(); JMenuItem login = new JMenuItem(); public MainFrame() { enableEvents(AWTEvent.WINDOW_EVENT_MASK); try { jbInit(); } catch (Exception e) { e.printStackTrace(); } } // Component initialization private void jbInit() throws Exception { this.setResizable(false); this.setTitle("图书信息管理系统"); contentPane = new MyPanelk(); contentPane.setOpaque(false); contentPane.add(jMenuBar); this.add(contentPane); Menu_UserManager.setFont(new java.awt.Font("Dialog", 0, 15)); Menu_UserManager.setForeground(Color.black); Menu_UserManager.setText("用户管理"); adduser.setFont(new java.awt.Font("Dialog", 0, 15)); adduser.setText("添加用户"); adduser.addActionListener(new mainFrame_adduser_actionAdapter(this)); deleteuser.setFont(new java.awt.Font("Dialog", 0, 15)); deleteuser.setText("删除用户"); deleteuser.addActionListener(new mainFrame_deleteuser_actionAdapter(this)); exit.setFont(new java.awt.Font("Dialog", 0, 15)); exit.setText("退出系统"); exit.addActionListener(new mainFrame_exit_actionAdapter(this)); changePasswd.setFont(new java.awt.Font("Dialog", 0, 15)); changePasswd.setText("修改密码"); changePasswd.addActionListener(new mainFrame_changePasswd_actionAdapter(this)); scanningUser.setFont(new java.awt.Font("Dialog", 0, 15)); scanningUser.setText("浏览用户"); scanningUser.addActionListener(new mainFrame_scanningUser_actionAdapter(this)); login.setFont(new java.awt.Font("Dialog", 0, 15)); login.setText("用户登录"); login.addActionListener(new mainFrame_login_actionAdapter(this)); jMenuHelp.setFont(new java.awt.Font("Dialog", 0, 15)); jMenuHelp.setText("帮助信息"); jMenuHelpAbout.setFont(new java.awt.Font("Dialog", 0, 15)); jMenuHelpAbout.setText("关于"); jMenuHelpAbout.addActionListener(new mainFrame_HelpAbout_ActionAdapter(this)); reader_management.setFont(new java.awt.Font("Dialog", 0, 15)); reader_management.setText("读者管理"); add_readerInfo.setFont(new java.awt.Font("Dialog", 0, 15)); add_readerInfo.setForeground(Color.black); add_readerInfo.setText("添加读者信息"); add_readerInfo.addActionListener(new mainFrame_addReaderInfo_actionAdapter(this)); change_readerInfo.setFont(new java.awt.Font("Dialog", 0, 15)); change_readerInfo.setText("查改删读者信息"); change_readerInfo.addActionListener(new mainFrame_changeReaderInfo_actionAdapter(this)); queryReader.setFont(new java.awt.Font("Dialog", 0, 15)); queryReader.setText("查询读者信息"); queryReader.addActionListener(new mainFrame_scanningUserInfo_actionAdapter(this)); borrowAndreturn.setFont(new java.awt.Font("Dialog", 0, 15)); borrowAndreturn.setText("借阅管理"); book_management.setFont(new java.awt.Font("Dialog", 0, 15)); book_management.setText("图书管理"); AddBook.setFont(new java.awt.Font("Dialog", 0, 15)); AddBook.setText("添加图书"); AddBook.addActionListener(new mainFrame_AddBook_actionAdapter(this)); borrowBook.setFont(new java.awt.Font("Dialog", 0, 15)); borrowBook.setText("借阅图书"); borrowBook.addActionListener(new mainFrame_borrowBook_actionAdapter(this)); returnBook.setFont(new java.awt.Font("Dialog", 0, 15)); returnBook.setText("归还图书"); returnBook.addActionListener(new mainFrame_returnBook_actionAdapter(this)); ChangeBookInfo.setFont(new java.awt.Font("Dialog", 0, 15)); ChangeBookInfo.setText("改删图书信息"); ChangeBookInfo.addActionListener(new mainFrame_ChangeBookInfo_actionAdapter(this)); queryBookInfo.setFont(new java.awt.Font("Dialog", 0, 15)); queryBookInfo.setText("查询图书信息"); queryBookInfo.addActionListener(new mainFrame_scanningBookInfo_actionAdapter(this)); Menu_UserManager.add(login); Menu_UserManager.add(scanningUser); Menu_UserManager.add(changePasswd); Menu_UserManager.add(adduser); Menu_UserManager.add(deleteuser); Menu_UserManager.add(exit); jMenuHelp.add(jMenuHelpAbout); jMenuBar.add(Menu_UserManager); jMenuBar.add(reader_management); jMenuBar.add(borrowAndreturn); jMenuBar.add(book_management); jMenuBar.add(jMenuHelp); reader_management.add(add_readerInfo); reader_management.add(change_readerInfo); reader_management.add(queryReader); borrowAndreturn.add(borrowBook); borrowAndreturn.add(returnBook); book_management.add(AddBook); book_management.add(ChangeBookInfo); book_management.add(queryBookInfo); reader_management.setEnabled(false); borrowAndreturn.setEnabled(false); book_management.setEnabled(false); Menu_UserManager.setEnabled(true); scanningUser.setEnabled(false); adduser.setEnabled(false); deleteuser.setEnabled(false); this.setBounds(400, 100, 600, 400); this.setVisible(true); } public static void main(String args[]) { /* 设置系统默认布局样式 */ String lookAndFeel = UIManager.getSystemLookAndFeelClassName(); try { // UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); UIManager.setLookAndFeel(lookAndFeel); } catch (ClassNotFoundException e1) { e1.printStackTrace(); } catch (InstantiationException e1) { e1.printStackTrace(); } catch (IllegalAccessException e1) { e1.printStackTrace(); } catch (UnsupportedLookAndFeelException e1) { e1.printStackTrace(); } SetPersonalFont setfont = new SetPersonalFont(); setfont.InitGlobalFont(new Font("monspaced", Font.PLAIN, 13)); MainFrame main = new MainFrame(); main.setVisible(true); } public void jMenuFileExit_actionPerformed(ActionEvent e) { System.exit(0); } // Help | About action performed public void HelpAbout_actionPerformed(ActionEvent e) { new About(); } // Overridden so we can exit when window is closed @Override protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { jMenuFileExit_actionPerformed(null); } } void adduser_actionPerformed(ActionEvent e) { new AddUser(); } void deleteuser_actionPerformed(ActionEvent e) { new DeleteUser(); } void xgmm_actionPerformed(ActionEvent e) { new ChangePassword(); } void borrowBook_actionPerformed(ActionEvent e) { new BorrowBook(); } void returnBook_actionPerformed(ActionEvent e) { new ReturnBook(); } void exit_actionPerformed(ActionEvent e) { System.exit(0); } void login_actionPerformed(ActionEvent e) { final JTextField user_ID = new JTextField(); // 用户ID final JPasswordField pwd = new JPasswordField();// 密码 final JDialog dialog = new JDialog(); JPanel panel = new JPanel(); panel.setLayout(null); // this.getContentPane().setLayout(null); dialog.setTitle("登录"); dialog.setBounds(500, 200, 300, 250); JLabel label_ID = new JLabel(); // 用户ID JLabel label_pwd = new JLabel(); // 用户密码 JLabel label_power = new JLabel(); // 登录身份 final JComboBox login_power = new JComboBox(); // 登录权限 login_power.addItem("管理员"); login_power.addItem("读者"); label_ID.setText("请输入用户ID:"); label_ID.setBounds(20, 20, 100, 29); user_ID.setBounds(120, 20, 130, 29); user_ID.setText("1000920303"); label_pwd.setText("请输入密码:"); label_pwd.setBounds(20, 60, 100, 29); pwd.setBounds(120, 60, 130, 29); pwd.setText("123"); label_power.setText("身份验证:"); label_power.setBounds(20, 100, 100, 29); login_power.setBounds(120, 100, 130, 29); JButton jbSure = new JButton("确定(Y)"); jbSure.setMnemonic(KeyEvent.VK_Y); jbSure.setBounds(40, 150, 80, 29); JButton cancel = new JButton("取消(N)"); cancel.setMnemonic(KeyEvent.VK_N); cancel.setBounds(150, 150, 85, 29); cancel.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { dialog.dispose(); } }); // 居中显示 // Toolkit kit = Toolkit.getDefaultToolkit(); // Dimension screenSize = kit.getScreenSize(); // dialog.setLocation((screenSize.width - 200) / 2, // (screenSize.height - 150) / 2); dialog.getContentPane().add(panel, null); panel.add(label_ID); panel.add(user_ID); panel.add(label_pwd); panel.add(pwd); panel.add(jbSure); panel.add(label_power); panel.add(login_power); panel.add(cancel); jbSure.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if ((!(user_ID.getText().equals("")) && !(new String(pwd.getPassword()).equals("")))) { try {// 连接数据库,验证用户 Class.forName(DB_NAME); Connection con = DriverManager.getConnection(DB_URL, "sa", "server"); ps = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); } catch (ClassNotFoundException | SQLException e1) { e1.printStackTrace(); } switch (login_power.getSelectedItem().toString()) { case "管理员": try { rs = ps.executeQuery( "select * from UserInfo where UserID='" + user_ID.getText().trim() + "' "); // 读取数据库 if (!rs.next()) { JOptionPane.showMessageDialog(null, "不存在此用户!"); } else if (!(rs.getString("Password").trim().equals(new String(pwd.getPassword())))) { JOptionPane.showMessageDialog(null, "密码错误!"); } else { dialog.dispose(); reader_management.setEnabled(true); borrowAndreturn.setEnabled(true); book_management.setEnabled(true); Menu_UserManager.setEnabled(true); scanningUser.setEnabled(true); adduser.setEnabled(true); deleteuser.setEnabled(true); add_readerInfo.setEnabled(true); } } catch (SQLException sqle) { String error = sqle.getMessage(); JOptionPane.showMessageDialog(null, error); sqle.printStackTrace(); } break; case "读者": try {// 读取数据库 rs = ps.executeQuery( "select * from ReadersInfo where ReaderID='" + user_ID.getText().trim() + "' "); if (!rs.next()) { JOptionPane.showMessageDialog(null, "不存在此用户!"); } else if (!(rs.getString("Password").trim().equals(new String(pwd.getPassword())))) { JOptionPane.showMessageDialog(null, "密码错误!"); } else { dialog.dispose(); book_management.setEnabled(true); reader_management.setEnabled(false); ChangeBookInfo.setEnabled(false); AddBook.setEnabled(false); // change_readerInfo.setEnabled(true); borrowAndreturn.setEnabled(true); add_readerInfo.setEnabled(false); queryBookInfo.setEnabled(true); Menu_UserManager.setEnabled(true); scanningUser.setEnabled(false); adduser.setEnabled(false); deleteuser.setEnabled(false); add_readerInfo.setEnabled(false); } } catch (SQLException e1) { JOptionPane.showMessageDialog(null, e1.toString()); } break; } } else { JOptionPane.showMessageDialog(null, "用户ID或密码不能为空"); } } }); dialog.setModal(true); dialog.setVisible(true); } void addReaderInfo_actionPerformed(ActionEvent e) { new AddReaderInfo(); } void changeReaderInfo_actionPerformed(ActionEvent e) { new ChangeReadersInfo(); } void scanningUserInfo_actionPerformed(ActionEvent e) { new ScanningReadersInfo(); } void scanningUser_actionPerformed(ActionEvent e) { new ScanningUser(); } void changePasswd_actionPerformed(ActionEvent e) { new ChangePassword(); } void AddBook_actionPerformed(ActionEvent e) { new AddBook(); } void ChangeBookInfo_actionPerformed(ActionEvent e) { new ChangeBookInfo(); } void scanningBook_actionPerformed(ActionEvent e) { new ScanBookInfo(); } }