数据库编程——简易图书管理系统
题目: 数据库编程——简易图书管理系统
目的:
- 熟练掌握SQL命令
- 掌握Swing图形用户界面编程
- 掌握Java与数据库的连接技术
- 掌握java.sql包中提供的各种类,编写程序实现数据库信息的存取和查询
任务:
-
用户可通过相应界面,依据图书的ISBN、Title、Authors、Publisher、PublicationDate、Type的组合,查询数据库中符合条件的书籍,程序需将查询结果以表格的方式展示给用户,用户可选择结果排序的依据。
-
提供用户相应的方式借书。当用户选择借阅某本书籍时,应查询该书是否已经被借出:如果被借出,则显示信息(“该书已被借出,归还时间XXXXX”);如果该书未被借出,则查询读者权限(是否超出该读者所能借阅的最大数目),如果未超出则显示借书成功,并向数据库中增加一条借阅记录,如果超出,则显示信息(“已超过您的最大借阅数目)。
-
提供用户相应的方式还书。还书成功时,将该次的借阅记录删除。
-
修改数据库设计,通过相应界面,提供Reader、Books的增加、删除、修改功能。
思路:
开发工具
-
JDK1.8
-
IntelliJ IDEA
-
引用库mysql-connector-java-8.0.20.jar
界面设计
-
主界面包含用户登录、用户注册、管理员登录、查看图书、删除图书、添加图书、借阅图书、归还图书等按钮,可以实现对应的功能。
-
用户登录界面,要求用户选择身份(普通用户或者管理员),输入账号密码后则登录成功。
-
用户注册界面,有六个文本框,分别要求输入账号、用户名、密码、重复密码、电话号码、地址等用户信息,下方有一个提交按钮,必须输入完整的内容才能提交,如果有一项未填写将无法提交。
-
对应用户登入后,则回到主界面,此时就可以通过各个按钮进行相关操作了。
-
查询图书界面,输入书号、书名、作者任意一项就可以查找到对应的图书。
-
图书借阅界面,输入对应编号就可以进行借阅,如果书不存在或者书已经被借走则无法借阅。
-
图书归还界面,实现原理和图书查询的实现方式类似。
-
管理员登入后,才能使用图书添加、删除、用户添加、删除等功能,普通用户无法使用这些功能。
逻辑设计
-
Java文件分为设计窗口的frame界面包,跟数据库操作有关的dao包,实现各种实体类的model包,实现数据库连接的util包。
-
数据库内有四张表,分别为reader(用户表),books(书籍表),admin(管理员表),record(记录表),在dao包和model包内有分别对应这四张表的类。
-
用户登入后,可通过书籍的图书号、书名、作者进行查询,也可以通过图书编号进行借阅和归还。如果书籍借阅状态为借出,则会弹出一个消息框提示书籍的归还时间;如果用户的借阅数量大于4(设置的最大可借阅数量),会提示借阅数量超出限制,无法借阅,借阅时间获取为电脑内时间,归还时间为当前时间一个月后。
-
管理员点击添加图书按钮时,必须得输入book表内的全部信息,否则会提示图书信息不完整;删除图书只需输入图书编号,点击删除按钮时会让管理员再确认一遍,删除该图书,会删除该图书对应的借阅记录,并且对应用户的借阅数量会减一;查询用户只需输入用户编号,左边会显示出该用户的所有信息;删除用户需要输入用户编号,点击删除按钮会让管理员再确认一遍,删除该用户,会删除该用户借阅书本的所有记录,并改变所借阅书本的借阅状态。
运行:
- 主界面
- 登录界面
- 注册界面
- 查询界面
- 添加图书
- 删除图书
- 查找用户
- 删除用户