前提掌握
1、掌握java基本语法
2、熟悉使用流程控制
3、理解面向对象思想
4、熟练封装,继承,多态
5、熟悉使用接口,异常
6、熟悉使用集合
7、熟悉掌握I/o流相关操作
思想要求
- 长期以来,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较烦琐。在借书时,读者首先将要借的书和借阅证交给工作人员,然后工作人员将每本书的信息卡片和读者的借阅证放在一个小格栏里,最后在借阅证和每本书贴的借阅条上填写借阅信息。在还书时,读者首先将要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证,并填好相应的还书信息。太过于繁琐了!所以,我们需求设计一个图书管理系统来方便学生的借书和图书馆管理书籍。
- 本系统功能分为读者信息管理模块、图书信息管理模块、图书借阅管理模块、基础信息维护模块和用户管理模块。
- 读者信息管理:能够对读者的基本信息进行管理,包括新增读者,如学校新来一名教师,想要借书,就必须先添加读者信息;读者信息的修改,如学生转到别的专业,此时要修改学生的基本信息;删除读者的信息,比如某个学生中途退学了,可以将其信息删除。查询读者的信息,比如有同学拾到了一张借阅卡,卡上有学生的编号,通过此号来查询学生的联系电话,从而可以找到学生。
- 图书信息管理:能够对图书的基本信息进行管理,包括新增图书,学校每年会购进新书,此时需要将新书的信息录入系统中;图书信息的修改,如学生借书后将图书丢失,此时需要修改图书的总数量,使总数减1;删除图书,学校在购进新书的同时,每年会对过期的图书进行清理,不再提供借阅,此时就需要将这些图书的信息从系统中删除。查询图书的信息,比如要查看有哪些是Java相关的书籍或者指定ISBN号的图书等。
- 图书借阅信息管理:能够对图书的借阅信息进行记录,包括读者信息、图书信息、借阅时间等信息。
- 图书归还信息管理:能够对图书的借阅信息进行记录,包括读者信息、图书信息、归还时间、是否超期、罚金等信息。
- 系统用户信息管理:能够对系统用户的信息进行管理,包括增加新的系统操作用户,对当前系统用户的密码进行修改,以及删除某一用户。
项目功能结构图
思想实现
1、实现分块
2、参考设计
图书实体:图书编号ISBN、图书名称、作者、出版社、出版日期、印刷次数、单价、图书类型
图书类型:图书类型编号、图书类型名称(通过集合存储)
读者实体:读者编号、读者姓名、出生日期、性别、电话、所在院系、注册日期
读者类型:读者类型编号、读者类型名称、可借阅天数、可借阅数量
用户:用户编号、用户名、密码
Book.java:ISBN,typeid,bookname,author,publish,pubilishdate,printtime,unitprice,typename
BookType.java:typeid,typename
BorrowBook.java:readerid,ISBN,borrowdate,returndate,fine
Reader.java:readerid,name,sex,age,dept,phone,regdat,limit,maxborrownum,type,typename
ReaderType.java:typeid,typename,limit,maxborrownum
Users.java:id,name,passwowrd
- 读者信息管理
ReaderDao.java:完成读者信息添加和读者信息查询与修改功能。 - 图书信息管理
BookDao.java:完成图书信息添加和图书信息查询与修改功能。 - 图书借阅管理
BookBorrowDao.java:包括图书借阅和图书归还功能。 - 图书类别设置
BookTypeDao.java图书类别设置包括查询所有图书类别信息,查询指定类型名的图书类型信息,添加图书类型,修改指定编号的图书类型信息,删除指定类型编号的图书类型。 - 读者类别设置
ReaderTypeDao.java读者类别设置包括查询所有读者类型信息,查询指定类型名的读者信息类型,添加读者类型,修改指定编号的读者类型信息,删除指定类型编号的读者类型。 - 用户管理
UserDao.java具体包括登录系统的时候,判断用户名和密码是否有效;查询所有用户信息;添加用户;修改指定编号的用户的密码;删除指定编号的用户信息。
一、实体域类(自动生成get、set、toString方法)
二、功能实现类
总结
博主在这里对于刚入坑的小白建议一下:对于任何问题,每个人都会有不一样的想法,实现代码的思想也是不一样的。不要过多的去纠结为啥别人跟着自己的思路不一样,可以去借鉴和了解别人的代码思想,但同时也要有自己的想法,不要被别人的代码禁锢了自己的思想。