图书管理系统
一些包的结构
简单的一些表
登录的界面
进去后
进行图书类别的管理
图书的添加
登录和主界面的代码
/*
* LoginFrm.java
*
* Created on __DATE__, __TIME__
*/
package com.DMView;
import java.awt.*;
import java.awt.Font;
import java.sql.Connection;
import javax.swing.*;
import javax.swing.GroupLayout;
import javax.swing.JOptionPane;
import javax.swing.LayoutStyle;
import javax.swing.UIManager;
import com.DMModel.User;
import com.DMUtil.DMUtil;
import com.DMUtil.StringUtil;
import com.Dao.UserDao;
/**
*
* @author __USER__
*/
public class LoginFrm extends javax.swing.JFrame {
DMUtil dmutil = new DMUtil();
UserDao userdao = new UserDao();
/** Creates new form LoginFrm */
public LoginFrm() {
Font font = new Font("Dialog", Font.PLAIN, 12);
java.util.Enumeration keys = UIManager.getDefaults().keys();
while (keys.hasMoreElements()) {
Object key = keys.nextElement();
Object value = UIManager.get(key);
if (value instanceof javax.swing.plaf.FontUIResource) {
UIManager.put(key, font);
}
}
initComponents();
this.setLocationRelativeTo(null);
this.filltable();
}
private void filltable() {
User user1 = new User();
User user2 = new User();
user1.setUserName("学生");
user2.setUserName("管理员");
user1.setId(1 + "");
user2.setId(2 + "");
jcb_choose.addItem(user1);
jcb_choose.addItem(user2);
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
//GEN-BEGIN:initComponents
jLabel1 = new JLabel();
jLabel2 = new JLabel();
jLabel3 = new JLabel();
userNameTxt = new JTextField();
userPasswordTxt = new JPasswordField();
jb_login = new JButton();
jb_reset = new JButton();
jcb_choose = new JComboBox<>();
jLabel4 = new JLabel();
//======== this ========
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setTitle("\u5b66\u751f\u5bbf\u820d\u7ba1\u7406\u7cfb\u7edf\u767b\u9646");
setResizable(false);
Container contentPane = getContentPane();
//---- jLabel1 ----
jLabel1.setFont(new Font("\u5b8b\u4f53", Font.PLAIN, 24));
jLabel1.setIcon(new ImageIcon("C:\\Documents and Settings\\Administrator\\\u684c\u9762\\20130918091536739_easyicon_net_128.png"));
jLabel1.setText("\u5b66\u751f\u5bbf\u820d\u7ba1\u7406\u7cfb\u7edf");
//---- jLabel2 ----
jLabel2.setIcon(new ImageIcon("D:\\Myelipse\\images1\\userName.png"));
jLabel2.setText("\u7528\u6237\u540d\uff1a");
//---- jLabel3 ----
jLabel3.setIcon(new ImageIcon("D:\\Myelipse\\images1\\password.png"));
jLabel3.setText("\u5bc6 \u7801\uff1a");
//---- userNameTxt ----
userNameTxt.addActionListener(e -> userNameTxtActionPerformed(e));
//---- jb_login ----
jb_login.setIcon(new ImageIcon("D:\\Myelipse\\images4\\login.png"));
jb_login.setText("\u767b\u5f55");
jb_login.addActionListener(e -> jb_loginActionPerformed(e));
//---- jb_reset ----
jb_reset.setIcon(new ImageIcon("D:\\Myelipse\\images4\\reset.png"));
jb_reset.setText("\u91cd\u7f6e");
jb_reset.addActionListener(e -> jb_resetActionPerformed(e));
//---- jcb_choose ----
jcb_choose.setModel(new DefaultComboBoxModel<>(new String[] {
}));
//---- jLabel4 ----
jLabel4.setIcon(new ImageIcon("C:\\Documents and Settings\\Administrator\\\u684c\u9762\\\u7528\u6237\u7c7b\u578b.jpg"));
jLabel4.setText("\u7528\u6237\u7c7b\u578b\uff1a");
GroupLayout contentPaneLayout = new GroupLayout(contentPane);
contentPane.setLayout(contentPaneLayout);
contentPaneLayout.setHorizontalGroup(
contentPaneLayout.createParallelGroup()
.addGroup(contentPaneLayout.createSequentialGroup()
.addGap(21, 21, 21)
.addComponent(jLabel1)
.addContainerGap(58, Short.MAX_VALUE))
.addGroup(GroupLayout.Alignment.TRAILING, contentPaneLayout.createSequentialGroup()
.addGroup(contentPaneLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addGroup(contentPaneLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel4)
.addGap(42, 42, 42)
.addComponent(jcb_choose, GroupLayout.PREFERRED_SIZE, 111, GroupLayout.PREFERRED_SIZE))
.addGroup(contentPaneLayout.createSequentialGroup()
.addGroup(contentPaneLayout.createParallelGroup()
.addGroup(contentPaneLayout.createSequentialGroup()
.addGap(103, 103, 103)
.addGroup(contentPaneLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(jLabel3)
.addComponent(jLabel2)))
.addGroup(contentPaneLayout.createSequentialGroup()
.addGap(104, 104, 104)
.addComponent(jb_login)))
.addGroup(contentPaneLayout.createParallelGroup()
.addGroup(contentPaneLayout.createSequentialGroup()
.addGap(42, 42, 42)
.addGroup(contentPaneLayout.createParallelGroup()
.addComponent(userNameTxt, GroupLayout.DEFAULT_SIZE, 111, Short.MAX_VALUE)
.addComponent(userPasswordTxt, GroupLayout.DEFAULT_SIZE, 111, Short.MAX_VALUE)))
.addGroup(GroupLayout.Alignment.TRAILING, contentPaneLayout.createSequentialGroup()
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jb_reset)
.addGap(25, 25, 25)))))
.addGap(79, 79, 79))
);
contentPaneLayout.setVerticalGroup(
contentPaneLayout.createParallelGroup()
.addGroup(contentPaneLayout.createSequentialGroup()
.addGap(27, 27, 27)
.addComponent(jLabel1)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(contentPaneLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(userNameTxt, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(26, 26, 26)
.addGroup(contentPaneLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(userPasswordTxt, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(26, 26, 26)
.addGroup(contentPaneLayout.createParallelGroup()
.addComponent(jLabel4)
.addComponent(jcb_choose, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(34, 34, 34)
.addGroup(contentPaneLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(jb_login)
.addComponent(jb_reset))
.addContainerGap(43, Short.MAX_VALUE))
);
pack();
setLocationRelativeTo(getOwner());
//GEN-END:initComponents
private void jb_loginActionPerformed(java.awt.event.ActionEvent evt) {
String userName = userNameTxt.getText();
String userPassword = new String(userPasswordTxt.getPassword());
if (StringUtil.isEmpty(userName)) {
JOptionPane.showMessageDialog(null, "用户名不能为空!");
return;
} else if (StringUtil.isEmpty(userPassword)) {
JOptionPane.showMessageDialog(null, "密码不能为空!");
return;
}
User user = new User(userName, userPassword);
Connection con = null;
try {
con = dmutil.getCon();
User currentuser = userdao.Login(con, user);
if (currentuser != null) {
User user1 = (User) jcb_choose.getSelectedItem();
String userright = user1.getUserName();
if (userright.equals("管理员")) {
this.dispose();
MainFrm main = new MainFrm();
main.setVisible(true);
} else if (userright.equals("学生")) {
this.dispose();
MainFrm2 main2 = new MainFrm2();
main2.setVisible(true);
} else {
JOptionPane.showMessageDialog(null, "用户名密码错误!");
}
}
} catch (Exception e) {
JOptionPane.showInternalMessageDialog(null, "登陆失败");
e.printStackTrace();
}
}
private void jb_resetActionPerformed(java.awt.event.ActionEvent evt) {
this.userNameTxt.setText("");
this.userPasswordTxt.setText("");
}
private void userNameTxtActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling cod
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new LoginFrm().setVisible(true);
}
});
}
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
import javax.swing.JDesktopPane;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class mainFrm extends JFrame {
private JPanel contentPane;
private JDesktopPane table =null;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
mainFrm frame = new mainFrm();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public mainFrm() {
setTitle("\u56FE\u4E66\u7BA1\u7406\u7CFB\u7EDF");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu mnNewMenu = new JMenu("\u57FA\u672C\u6570\u636E\u7EF4\u62A4");
mnNewMenu.setIcon(null);
menuBar.add(mnNewMenu);
JMenu mnNewMenu_2 = new JMenu("\u56FE\u4E66\u7C7B\u522B\u7BA1\u7406");
mnNewMenu.add(mnNewMenu_2);
JMenuItem mntmNewMenuItem_2 = new JMenuItem("\u56FE\u4E66\u7C7B\u522B\u6DFB\u52A0");
mntmNewMenuItem_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
bookTypeAddinterFrm bookTypeAddinterFrm=new bookTypeAddinterFrm();
bookTypeAddinterFrm.setVisible(true);
table.add(bookTypeAddinterFrm);
}
});
mnNewMenu_2.add(mntmNewMenuItem_2);
JMenuItem mntmNewMenuItem_3 = new JMenuItem("\u56FE\u4E66\u7C7B\u522B\u7EF4\u62A4");
mntmNewMenuItem_3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
bookTypeManagerinterFrm bookTypeManagerinterFrm=new bookTypeManagerinterFrm();
bookTypeManagerinterFrm.setVisible(true);
table.add(bookTypeManagerinterFrm);
}
});
mnNewMenu_2.add(mntmNewMenuItem_3);
JMenu mnNewMenu_3 = new JMenu("\u56FE\u4E66\u7BA1\u7406");
mnNewMenu.add(mnNewMenu_3);
JMenuItem mntmNewMenuItem_4 = new JMenuItem("\u56FE\u4E66\u6DFB\u52A0");
mntmNewMenuItem_4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
bookAddinterFrm bookAddinterFrm=new bookAddinterFrm();
bookAddinterFrm.setVisible(true);
table.add(bookAddinterFrm);
}
});
mnNewMenu_3.add(mntmNewMenuItem_4);
JMenuItem mntmNewMenuItem_5 = new JMenuItem("\u56FE\u4E66\u7EF4\u62A4");
mntmNewMenuItem_5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
bookManagerinterFrm bookManagerinterFrm=new bookManagerinterFrm();
bookManagerinterFrm.setVisible(true);
table.add(bookManagerinterFrm);
}
});
mnNewMenu_3.add(mntmNewMenuItem_5);
JMenuItem mntmNewMenuItem = new JMenuItem("\u5B89\u5168\u9000\u51FA");
mntmNewMenuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int result=JOptionPane.showConfirmDialog(null, "是否退出系统");
if(result==0) {
dispose();
}
}
});
mnNewMenu.add(mntmNewMenuItem);
JMenu mnNewMenu_1 = new JMenu("\u5173\u4E8E\u6211\u4EEC");
menuBar.add(mnNewMenu_1);
JMenuItem mntmNewMenuItem_1 = new JMenuItem("\u5173\u4E8EJava");
mntmNewMenuItem_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
java1234interFrm java1234interfrm=new java1234interFrm();
java1234interfrm.setVisible(true);
table.add(java1234interfrm);
}
});
mnNewMenu_1.add(mntmNewMenuItem_1);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
table=new JDesktopPane();
contentPane.add(table, BorderLayout.CENTER);
//最大化
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
}
}
一些基本的操作。