简单的图书管理系统(练习JDBC+Oracle数据库)

本文介绍了一个基于Oracle数据库的图书管理系统的设计与实现过程。该系统包括用户登录、图书的增删改查等功能,通过MyEclipse搭建Web项目并实现数据库操作。

这是一个简单的图书管理系统,对部分功能的进行了实现,主要就是练习对数据库的增删改查和逻辑的运用!

1、使用的Oracle数据库,先建数据库,并插入几条简单的数据



2、在MyEclipse中建立Web Project,命名为bookManager,建包结构如下


3、首先写dao包中的IBaseDao,然后用OracleBaseDao实现方法连接数据库(getConnection)和关闭连接(closeCon),代码如下 

package cn.dao.utils.impl;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import cn.dao.utils.interfaces.IBaseDao;

/**
 * 使用Oracle数据库
 * 
 * @author CCQ
 * 
 */
public class oracleBaseDao implements IBaseDao {

	static String DRIVER_CLASS = "oracle.jdbc.driver.OracleDriver";
	static String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
	static String USER = "hope";
	static String PWD = "123456";

	@Override
	public Connection getConn() throws Exception {
		// TODO Auto-generated method stub
		Connection conn = null;
		try {
			Class.forName(DRIVER_CLASS);
			conn = DriverManager.getConnection(URL, USER, PWD);
		} catch (Exception e) {
			throw new Exception(e.getMessage());
		}
		return conn;
	}

	@Override
	public void closeConn(ResultSet rs, PreparedStatement ps, Connection conn)
			throws Exception {
		// TODO Auto-generated method stub
		try {
			if (rs != null) {
				rs.close();
			}
			if (ps != null) {
				ps.close();
			}
			if (conn != null) {
				conn.close();
			}
		} catch (Exception e) {
			throw new Exception(e.getMessage());
		}
	}
}


4、书写dao包中的UserDaoImpl,实现用户登录,再写bookDaoImpl,实现对图书的操作,代码如下

package cn.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import cn.dao.interfaces.IUserDao;
import cn.dao.utils.impl.oracleBaseDao;
import cn.dao.utils.interfaces.IBaseDao;
import cn.po.User;
/**
 * 用户操作实现类
 * @author CCQ
 *
 */
public class UserDaoImpl implements IUserDao {
	IBaseDao baseDao = new oracleBaseDao();

	@Override
	public User login(User user) throws Exception {
		// TODO Auto-generated method stub
		User users = null;
		try {
			Connection conn = baseDao.getConn();
			String sql = "select * from users where username = ? and userpwd = ?";
			PreparedStatement ps = conn.prepareStatement(sql);
			ps.setObject(1, user.getUserName());
			ps.setObject(2, user.getUserPwd());
			ResultSet rs = ps.executeQuery();
			if(rs.next()){
				users = new User();
				users.setUserId(rs.getInt("userId"));
				users.setUserName(rs.getString("userName"));
				users.setUserPwd(rs.getString("userPwd"));
			}
			baseDao.closeConn(rs, ps, conn);
		} catch (Exception e) {
			throw new Exception(e);
		}
		return users;
	}

}
package cn.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import cn.dao.interfaces.IBookDao;
import cn.dao.utils.impl.oracleBaseDao;
import cn.dao.utils.interfaces.IBaseDao;
import cn.po.Book;

/**
 * 对图书操作的实现类
 * 
 * @author CCQ
 * 
 */
public class BookDaoImpl implements IBookDao {
	IBaseDao baseDao = new oracleBaseDao();
	private Connection conn = null;
	private PreparedStatement ps = null;
	private ResultSet rs = null;
	int r = 0;

	@Override
	public List<Book> findBooks() throws Exception {
		// TODO Auto-generated method stub
		List<Book> books = new ArrayList<Book>();
		try {
			conn = baseDao.getConn();
			String sql = "select * from books order by bookid";
			ps = conn.prepareStatement(sql);
			rs = ps.executeQuery();
			while (rs.next()) {
				Book book = new Book();
				book.setBookId(rs.getInt("bookId"));
				book.setBookName(rs.getString("bookName"));
				book.setBookAutor(rs.getString("bookAutor"));
				book.setBookType(rs.getString("bookType"));
				book.setBookPrice(rs.getDouble("bookPrice"));
				books.add(book);
			}
			baseDao.closeConn(rs, ps, conn);
		} catch (Exception e) {
			throw new Exception(e);
		}
		return books;
	}

	@Override
	public int addBook(Book book) throws Exception {
		// TODO Auto-generated method stub
		try {
			conn = baseDao.getConn();
			String sql = "insert into books values(?,?,?,?,?)";
			ps = conn.prepareStatement(sql);
			ps.setObject(1, book.getBookId());
			ps.setObject(2, book.getBookName());
			ps.setObject(3, book.getBookAutor());
			ps.setObject(4, book.getBookType());
			ps.setObject(5, book.getBookPrice());
			r = ps.executeUpdate();
			baseDao.closeConn(rs, ps, conn);
		} catch (Exception e) {
			throw new Exception(e);
		}
		return r;
	}

	@Override
	public Book findBookByBookName(String bookName) throws Exception {
		// TODO Auto-generated method stub
		Book book = null;
		try {
			conn = baseDao.getConn();
			String sql = "select * from books where bookname = ?";
			ps = conn.prepareStatement(sql);
			ps.setObject(1, bookName);
			rs = ps.executeQuery();
			if (rs.next()) {
				book = new Book();
				book.setBookId(rs.getInt("bookId"));
				book.setBookName(rs.getString("bookName"));
				book.setBookAutor(rs.getString("bookAutor"));
				book.setBookType(rs.getString("bookType"));
				book.setBookPrice(rs.getDouble("bookPrice"));
			}
			baseDao.closeConn(rs, ps, conn);
		} catch (Exception e) {
			throw new Exception(e);
		}
		return book;
	}

	@Override
	public int deleteBook(String bookName) throws Exception {
		// TODO Auto-generated method stub
		try {
			conn = baseDao.getConn();
			String sql = "delete books where bookname = ?";
			ps = conn.prepareStatement(sql);
			ps.setObject(1, bookName);
			r = ps.executeUpdate();
			baseDao.closeConn(rs, ps, conn);
		} catch (Exception e) {
			throw new Exception(e);
		}
		return r;
	}

	@Override
	public int modifyBook(Book book) throws Exception {
		// TODO Auto-generated method stub
		try {
			conn = baseDao.getConn();
			String sql = "update books set bookname = ?,bookautor = ?,booktype = ?,bookprice = ? where bookid = ?";
			ps = conn.prepareStatement(sql);
			ps.setObject(1, book.getBookName());
			ps.setObject(2, book.getBookAutor());
			ps.setObject(3, book.getBookType());
			ps.setObject(4, book.getBookPrice());
			ps.setObject(5, book.getBookId());
			r = ps.executeUpdate();
			baseDao.closeConn(rs, ps, conn);
		} catch (Exception e) {
			throw new Exception(e);
		}
		return r;
	}
}
5、书写services包,中的接口类,和实现类,也就是调用相应的dao包的中方法(简单)。

6、书写一个BookManagerSys类来通过控制台输入验证功能是否正确,代码如下:

package cn.test;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

import cn.po.Book;
import cn.po.User;
import cn.services.impl.BookServiceImpl;
import cn.services.impl.UserServiceImpl;
import cn.services.interfaces.IBookService;
import cn.services.interfaces.IUserService;

/**
 * 图书管理系统界面
 * 
 * @author CCQ
 * 
 */
public class BookManagerSys {

	IUserService userService = new UserServiceImpl();
	IBookService bookService = new BookServiceImpl();
	Scanner input = new Scanner(System.in);

	public void menu() throws Exception {
		User user = new User();
		System.out.println("\n\t图书管理系统登录界面");
		System.out.print("用户名:");
		user.setUserName(input.next());
		System.out.print("密    码:");
		user.setUserPwd(input.next());
		user = userService.login(user);
		if (user != null) {
			bmenu();
		} else {
			System.out.println("用户名或密码错误,请重新输入!");
			menu();
		}
	}

	public void bmenu() throws Exception {
		System.out.println("\n\t图书管理系统主界面");
		System.out.println("1.添加图书");
		System.out.println("2.查看所有图书信息");
		System.out.println("3.删除图书");
		System.out.println("4.修改图书信息");
		System.out.println("5.退出系统");
		System.out.print("请选择(1-5):");
		int op = input.nextInt();
		switch (op) {
		case 1:
			addBook();
			break;
		case 2:
			findBooks();
			break;
		case 3:
			deleteBook();
			break;
		case 4:
			modifyBook();
			break;
		case 5:
			System.out.println("谢谢使用图书管理系统!");
			System.exit(0);
		default:
			System.out.println("输入错误,请输入1-5数字");
		}

	}

	public void addBook() throws Exception {
		Book book = new Book();
		System.out.println("\n\t图书信息添加界面");
		System.out.print("图书编号:");
		book.setBookId(input.nextInt());
		System.out.print("图书名称:");
		book.setBookName(input.next());
		if (bookService.findBookByBookName(book.getBookName()) == null) {
			System.out.print("图书作者:");
			book.setBookAutor(input.next());
			System.out.print("图书类别:");
			book.setBookType(input.next());
			System.out.print("图书价格:");
			book.setBookPrice(input.nextDouble());
			int r = bookService.addBook(book);
			if (r != 0) {
				System.out.println(book.getBookName() + "添加成功!");
				bmenu();
			}
		} else {
			System.out.println(book.getBookName() + "已经存在,不可重复添加!");
			addBook();
		}

	}

	public void findBooks() throws Exception {
		System.out.println("\n\t\t查看所有图书信息界面");
		System.out.println("图书编号\t图书名称\t作者\t类别\t图书价格");
		List<Book> books = new ArrayList<Book>();
		books = bookService.findBooks();
		for (Book book : books) {
			System.out.println(book.getBookId() + "\t" + book.getBookName()
					+ "\t" + book.getBookAutor() + "\t" + book.getBookType()
					+ "\t" + book.getBookPrice());
		}
		bmenu();
	}

	public void deleteBook() throws Exception {
		System.out.println("\n\t\t删除图书信息界面");
		System.out.print("请输入删除图书名称:");
		String bookName = input.next();
		if (bookService.findBookByBookName(bookName) != null) {
			int r = bookService.deleteBook(bookName);
			if(r != 0){
				System.out.println("删除"+bookName+"成功!");
				bmenu();
			}
		} else {
			System.out.println("您输入的"+bookName+"不存在!");
			bmenu();
		}
	}

	public void modifyBook() throws Exception {
		Book book = new Book();
		System.out.println("\n\t\t修改图书信息界面");
		System.out.print("请输入修改的图书名称:");
		book.setBookName(input.next());
		if (bookService.findBookByBookName(book.getBookName()) != null) {
			book.setBookId(bookService.findBookByBookName(book.getBookName()).getBookId());
			System.out.print("请输入修改的图书作者:");
			book.setBookAutor(input.next());
			System.out.print("请输入修改的图书类别:");
			book.setBookType(input.next());
			System.out.print("请输入修改的图书价格:");
			book.setBookPrice(input.nextDouble());
			int r = bookService.modifyBook(book);
			if(r != 0){
				System.out.println("修改"+book.getBookName()+"成功!");
				bmenu();
			}else{
				System.out.println("修改失败!");
			}
			
		} else {
			System.out.println("您输入的"+book.getBookName()+"不存在!");
			bmenu();
		}
	}

}

7、结果展示:





8、总结:

经过这一个星期的学习,具体把Java中的面对对象的思想进行了深刻的掌握,然后学习Oracle中的简单建表和一些简单地SQL的增删改查!感觉掌握的还是不错的,Oracle数据库用着还是比较的顺手,感觉很好用,下阶段我要继续加油哦!加油!加油!加油!重要的事情说三遍!


1管理员表(L_Administrator) 字段名 字段说明 数据类型 约束 备注 a_id 管理员编号 int Primary Key Identity(1000,1) a_name 管理员姓名 nvarchar(20) Not null a_pwd 管理员密码 varchar(20) Not Null 2读者表(L_Reader) 字段名 字段说明 数据类型 约束 备注 r_id 读者编号 int Primary Key r_name 读者姓名 nvarchar(20) Not Null r_pwd 读者密码 varchar(20) Not Null r_sex 读者性别 bit Not Null r_typeid 职务类型 int Foreign Key 职务类型表的主键 r_academy 所在院系 nVarchar(20) r_major 专业 nVarchar(20) r_contact 联系方式 Varchar(20) r_email 邮箱 nvarchar(20) r_photo 读者照片 nVarchar(100) 存的是读者照片的路径 3职务类型表(L_Duty) 字段名 字段说明 数据类型 约束 备注 d_id 职务编号 int Primary Key Identity(1000,1) d_name 职务名称 nvarchar(20) Not null d_maxcount 最大借阅数量 tinyint Not Null 图书管理系统数据库表设计全文共3页,当前为第1页。4图书信息表(L_Book) 图书管理系统数据库表设计全文共3页,当前为第1页。 字段名 字段说明 数据类型 约束 备注 b_id 图书编号 Varchar(30) Primary Key b_name 图书名称 nvarchar(30) Not Null ISBN 国际标准图书编码 char(13) Foreign Key 13位数字组成 b_bkcaseid 书架编号 Varchar(20) b_price 定价 Numeric(10,2) b_author 作者 nvarchar(20) b_typeid 类型编号 int Foreign Key b_intime 入库时间 DataTime b_synopsis 图书简介 Nvarchar(500) b_state 图书状态 bit 0--借出,1--没有借出 b_photo 封面图片 Nvarchar(100) 存的是路径 5图书类型表(L_BookType) 字段名 字段说明 数据类型 约束 备注 bt_id 类型编号 int Primary Key Identity(1000,1) bt_name 类型名称 nVarchar(20) Not null 6出版社信息表(L_Publishing) 字段名 字段说明 数据类型 约束 备注 ISBN 国际标准图书编码 char(13) Primary Key p_name 出版社名称 nvarchar(30) Not Null 7借阅管理表(L_Borrow) 字段名 字段说明 数据类型 约束 备注 bw_id 借阅编号 int Primary Key Identity(1,1) bw_bookid 图书编号 Varchar(30) Foreign Key bw_readerid 读者编号 Int Foreign Key bw_outtime 借出日期 DateTime Not Null bw_endtime 到期日期 DateTime Not Null bw_backtime 归还日期 DateTime bw_isexpired 是否过期 Bit Not Null 默认为0--不过期 bw_fine 罚款数目 Numeric (10,2) 过期后才计算罚款数目 8图书资源表(L_Resource) 字段名 字段说明 数据类型 约束 备注 rs_id 资源编号 Int Primary Key Identity(1000,1) rs_name 资源名称 nVarchar(30) Not null rs_synopsis 资源简介 nVarchar(500) rs_amount 资源大小 int 单位为KB或是MB rs_type 资源类型 Varchar(20) 类似于doc、xsl、ppt、pdf、zip、rar、MP3、wmv等常用格式 图书管理系统数据库表设计全文共3页,当前为第2页。9图书评论表(L_BookMarks) 图书管理系统数据库表设计全文共3页,当前为第2页。 字段名 字段说明 数据类型 约束 备注 ISBN 国际标准图书编码 char(13) Foreign Key bm_contents 评论内容 Nvar
图书馆图书管理系统 主窗口: import java.awt.*; import java.awt.event.*; import javax.swing.*; import myClass.swing.*; public class MainWindow extends JFrame implements ActionListener { JPanel panel1;//panel2; Container c; JMenuBar MenuB; JMenu SystemMenu,BookMGRMenu,BorrowBookMenu,ReturnBookMenu, InfoBrowseMenu,UserMGRMenu; JMenuItem UserLoginMenuItem,UserAddMenuItem,UserModifyMenuItem, UserDeleteMenuItem,ExitMenuItem,BookAddMenuItem,BookModifyMenuItem,BookDeleteMenuItem, BorrowBookMenuItem,BorrowInfoMenuItem,ReturnBookMenuItem,ReturnInfoMenuItem, BookListMenuItem,BorrowBookListMenuItem,UserListMenuItem; JLabel titleLabel,AuthorLabel,DateLabel; public MainWindow() { super("图书馆管理系统"); //--系统管理菜单-- MenuB=new JMenuBar(); SystemMenu=new JMenu("系统管理"); UserMGRMenu=new JMenu("用户管理"); UserLoginMenuItem=new JMenuItem("用户登录"); UserAddMenuItem=new JMenuItem("添加用户"); UserModifyMenuItem=new JMenuItem("修改用户"); UserDeleteMenuItem=new JMenuItem("删除用户"); ExitMenuItem=new JMenuItem("退出"); SystemMenu.add(UserLoginMenuItem); UserMGRMenu.add(UserAddMenuItem); UserMGRMenu.add(UserModifyMenuItem); UserMGRMenu.add(UserDeleteMenuItem); SystemMenu.add(UserMGRMenu); SystemMenu.add(ExitMenuItem); UserLoginMenuItem.addActionListener(this); UserAddMenuItem.addActionListener(this); UserModifyMenuItem.addActionListener(this); UserDeleteMenuItem.addActionListener(this); ExitMenuItem.addActionListener(this); MenuB.add(SystemMenu); //---书籍管理菜单-- BookMGRMenu=new JMenu("书籍管理"); BookAddMenuItem=new JMenuItem("添加书籍"); BookModifyMenuItem=new JMenuItem("修改书籍"); BookDeleteMenuItem=new JMenuItem("删除书籍"); BookMGRMenu.add(BookAddMenuItem); BookMGRMenu.add(BookModifyMenuItem); BookMGRMenu.add(BookDeleteMenuItem); BookAddMenuItem.addActionListener(this); BookModifyMenuItem.addActionListener(this); BookDeleteMenuItem.addActionListener(this); MenuB.add(BookMGRMenu); //--借书管理菜单-- BorrowBookMenu=new JMenu("借书管理"); BorrowBookMenuItem=new JMenuItem("书籍出借"); BorrowInfoMenuItem=new JMenuItem("出借信息修改"); BorrowBookMenu.add(BorrowBookMenuItem); BorrowBookMenu.add(BorrowInfoMenuItem); BorrowBookMenuItem.addActionListener(this); BorrowInfoMenuItem.addActionListener(this); MenuB.add(BorrowBookMenu); //--还书管理菜单-- ReturnBookMenu=new JMenu("还书管理"); ReturnBookMenuItem=new JMenuItem("书籍还入"); ReturnInfoMenuItem=new JMenuItem("书籍还入信息修改"); ReturnBookMenu.add(ReturnBookMenuItem); ReturnBookMenu.add(ReturnInfoMenuItem); ReturnBookMenuItem.addActionListener(this); ReturnInfoMenuItem.addActionListener(this); MenuB.add(ReturnBookMenu); //--信息一览菜单-- InfoBrowseMenu=new JMenu("信息一览"); BookListMenuItem=new JMenuItem("书籍列表"); BorrowBookListMenuItem=new JMenuItem("借阅情况表"); UserListMenuItem=new JMenuItem("用户列表"); InfoBrowseMenu.add(BookListMenuItem); InfoBrowseMenu.add(BorrowBookListMenuItem); InfoBrowseMenu.add(UserListMenuItem); BookListMenuItem.addActionListener(this); BorrowBookListMenuItem.addActionListener(this); UserListMenuItem.addActionListener(this); MenuB.add(InfoBrowseMenu); //---------------------------------- setJMenuBar(MenuB); //titleLabel=new JLabel("欢迎使用图书管理系统",JLabel.CENTER); //titleLabel.setFont(new Font("TimesRoman",Font.BOLD,24)); //AuthorLabel=new JLabel("作者:麦密辉",JLabel.RIGHT); //DateLabel=new JLabel("完成时间:04-11-04",JLabel.RIGHT); titleLabel=new JLabel(new ImageIcon(".\\pic.jpg")); c=getContentPane(); c.setLayout(new BorderLayout()); panel1=new JPanel(); panel1.setLayout(new BorderLayout()); //panel2=new JPanel(); //panel2.setLayout(new BorderLayout()); panel1.add(titleLabel,BorderLayout.CENTER); //panel2.add(AuthorLabel,BorderLayout.NORTH); //panel2.add(DateLabel,BorderLayout.SOUTH); c.add(panel1,BorderLayout.CENTER); //c.add(panel2,BorderLayout.SOUTH); setBounds(100,50,400,300); show(); //--设置初始功能:-- UserMGRMenu.setEnabled(false); BookMGRMenu.setEnabled(false); BorrowBookMenu.setEnabled(false); ReturnBookMenu.setEnabled(false); InfoBrowseMenu.setEnabled(false); } //--设置每个菜单点击后出现的窗口和窗口显示的位置-- public void actionPerformed(ActionEvent e) { if(e.getActionCommand()=="用户登录") { UserLogin UserLoginFrame=new UserLogin(this); Dimension FrameSize=UserLoginFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); UserLoginFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); UserLoginFrame.pack(); UserLoginFrame.show(); } else if(e.getActionCommand()=="添加用户") { UserAdd UserAddFrame=new UserAdd(); Dimension FrameSize=UserAddFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); UserAddFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); UserAddFrame.pack(); UserAddFrame.show(); } else if(e.getActionCommand()=="修改用户") { UserModify UserModifyFrame=new UserModify(); Dimension FrameSize=UserModifyFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); UserModifyFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); UserModifyFrame.pack(); UserModifyFrame.show(); } else if(e.getActionCommand()=="删除用户") { UserDelete UserDeleteFrame=new UserDelete(); Dimension FrameSize=UserDeleteFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); UserDeleteFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); UserDeleteFrame.pack(); UserDeleteFrame.show(); } else if(e.getActionCommand()=="添加书籍") { BookAdd BookAddFrame=new BookAdd(); Dimension FrameSize=BookAddFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BookAddFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BookAddFrame.pack(); BookAddFrame.show(); } else if(e.getActionCommand()=="修改书籍") { BookModify BookModifyFrame=new BookModify(); Dimension FrameSize=BookModifyFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BookModifyFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BookModifyFrame.pack(); BookModifyFrame.show(); } else if(e.getActionCommand()=="删除书籍") { BookDelete BookDeleteFrame=new BookDelete(); Dimension FrameSize=BookDeleteFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BookDeleteFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BookDeleteFrame.pack(); BookDeleteFrame.show(); } else if(e.getActionCommand()=="书籍出借") { BorrowBook BorrowBookFrame=new BorrowBook(); Dimension FrameSize=BorrowBookFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BorrowBookFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BorrowBookFrame.pack(); BorrowBookFrame.show(); } else if(e.getActionCommand()=="出借信息修改") { BorrowInfo BorrowInfoFrame=new BorrowInfo(); Dimension FrameSize=BorrowInfoFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BorrowInfoFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BorrowInfoFrame.pack(); BorrowInfoFrame.show(); } else if(e.getActionCommand()=="书籍还入") { ReturnBook ReturnBookFrame=new ReturnBook(); Dimension FrameSize=ReturnBookFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); ReturnBookFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); ReturnBookFrame.pack(); ReturnBookFrame.show(); } else if(e.getActionCommand()=="书籍还入信息修改") { ReturnInfo ReturnInfoFrame=new ReturnInfo(); Dimension FrameSize=ReturnInfoFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); ReturnInfoFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); ReturnInfoFrame.pack(); ReturnInfoFrame.show(); } else if(e.getActionCommand()=="书籍列表") { BookList BookListFrame=new BookList(); Dimension FrameSize=BookListFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BookListFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BookListFrame.pack(); BookListFrame.show(); } else if(e.getActionCommand()=="借阅情况表") { BorrowBookList BorrowBookListFrame=new BorrowBookList(); Dimension FrameSize=BorrowBookListFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); BorrowBookListFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); BorrowBookListFrame.pack(); BorrowBookListFrame.show(); } else if(e.getActionCommand()=="用户列表") { UserList UserListFrame=new UserList(); Dimension FrameSize=UserListFrame.getPreferredSize(); Dimension MainFrameSize=getSize(); Point loc=getLocation(); UserListFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y); UserListFrame.pack(); UserListFrame.show(); } else if(e.getActionCommand()=="退出") { this.dispose(); System.exit(0); } } //--设置登录用户的权限-- public void setEnable(String powerType) { if(powerType.trim().equals("系统管理员")) { UserMGRMenu.setEnabled(true); BookMGRMenu.setEnabled(true); BorrowBookMenu.setEnabled(true); ReturnBookMenu.setEnabled(true); InfoBrowseMenu.setEnabled(true); UserListMenuItem.setEnabled(true); } else if(powerType.trim().equals("书籍管理员")) { UserMGRMenu.setEnabled(false); BookMGRMenu.setEnabled(true); BorrowBookMenu.setEnabled(false); ReturnBookMenu.setEnabled(false); InfoBrowseMenu.setEnabled(true); UserListMenuItem.setEnabled(false); } else if(powerType.trim().equals("借阅管理员")) { UserMGRMenu.setEnabled(false); BookMGRMenu.setEnabled(false); BorrowBookMenu.setEnabled(true); ReturnBookMenu.setEnabled(true); InfoBrowseMenu.setEnabled(true); UserListMenuItem.setEnabled(false); } else if(powerType.trim().equals("else")) { UserMGRMenu.setEnabled(false); BookMGRMenu.setEnabled(false); BorrowBookMenu.setEnabled(false); ReturnBookMenu.setEnabled(false); InfoBrowseMenu.setEnabled(false); } } public static void main(String args[]) { MainWindow mainFrame=new MainWindow(); mainFrame.addWindowListener(new MyWindowListener()); } }
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值