标签:变更 publish 三层 date 拒绝 环境 rgb mini api
1 系统架构
本系统采用MVC模式实现:
1)最上面的一层,是直接面向最终用户的"视图层"(View)。它是提供给用户的操作界面,是程序的外壳。
2)最底下的一层,是核心的"数据层"(Model),也就是程序需要操作的数据或信息。
3)中间的一层,就是"控制层"(Controller),它负责根据用户从"视图层"输入的指令,选取"数据层"中的数据,然后对其进行相应的操作,产生最终结果。
这三层是紧密联系在一起的,但又是互相独立的,每一层内部的变化不影响其他层。每一层都对外提供接口(Interface),供上面一层调用。这样一来,软件就可以实现模块化,修改外观或者变更数据都不用修改其他层,大大方便了维护和升级。
架构风格为浏览器-服务模式(B/S模式),用户通过浏览器访问服务器上的数据:
2 用例设计
未注册读者的主要功能:查看图书列表,注册。
已注册读者的主要功能:登录,查看图书列表,完善个人信息,借阅,翻页等。
管理员的主要功能:对图书的增删改查,审核读者的借阅请求,管理读者用户。
画出用例图如下:
3 UML类图设计
通过需求分析确定所需的所有功能,以及对应的实现方法,具体到每一个类/接口上,整理相关逻辑和依赖,得到如下UML类图:
4 分解视图
将功能分为一个个具体模块:
5 数据库设计与实现
根据UML类图设计所需的类,系统数据库交由MySQL实现。
1)图书表(book)
字段名称 | 字段类型 | 字段描述 |
id | int | 主键 |
name | varchar | 书名 |
author | varchar | 作者 |
publish | varchar | 出版社 |
pages | int | 页数 |
price | double | 价格 |
bookcaseid | int | 图书类型编号【外键】 |
2)读者表(reader)
字段名称 | 字段类型 | 字段描述 |
id | int | 主键 |
username | varchar | 用户名 |
password | varchar | 密码 |
name | varchar | 姓名 |
tel | varchar | 电话 |
cardid | int | 读者卡编号 |
gender | varchar | 性别 |
3)管理员表(admin)
字段名称 | 字段类型 | 字段描述 |
id | int | 主键 |
username | varchar | 用户名 |
password | varchar | 密码 |
4)图书类型表(bookcase)
字段名称 | 字段类型 | 字段描述 |
id | int | 主键 |
name | varchar | 图书类型 |
5)借阅表(borrow)
字段名称 | 字段类型 | 字段描述 |
id | int | 主键 |
bookid | int | 图书编号【外键】 |
readerid | int | 读者编号【外键】 |
borrowtime | varchar | 借阅时间 |
returntime | varchar | 归还时间 |
adminid | int | 管理员编号【外键】 |
state | varchar | 借阅状态 |
6 API接口
URL | 功能 |
/login | 读者登录 |
/register | 读者注册 |
/allbook | 显示所有书籍 |
/admin/allbook | 管理员页面 |
/admin/addbook | 增加图书 |
/admin/delbook | 删除图书 |
/admin/updatebook | 更新图书 |
/admin/querybook/ | 查询图书 |
/user/borrow | 读者提交借阅申请 |
/user/dropout | 读者退出登录 |
/user/logout | 读者注销 |
/user/return | 读者还书 |
/admin/dellborrow | 管理员审核借阅申请 |
7 实现视图
项目采用了MVC分层架构,主要将程序分到controller,service,dao这三个包里面:
entity包里是具体的实现类,repository包用来和数据库进行交互,filter包的功能为过滤器,过滤没有登录的请求,并转发到登录页面登录,只有登陆之后才能查看相关数据。
8 执行视图
UML时序图,以读者登录借阅为例:
9 部署视图
浏览器和服务器进行交互,服务器和数据库交互:
10 技术选型
开发技术:
语言:Java
后端框架:MVC
数据库:MySQL
部署环境:Windows
设计模式:
模板方法设计模式:声明一些抽象函数来使子类实现相应的功能。
单例模式:通过建立一个数据库连接池,当需要建立数据库连接时,从连接池中取一个连接返回,节省重新建立数据库连接的时间。
11 系统概念原型工作机制
该系统主要是给读者借阅图书,给管理员审核提供便利。读者通过注册登录进入系统,可以看到所有的图书列表,对于心仪的图书可以提交申请借阅;在管理员通过管理员账号登录,进入到管理员界面,在该界面中可以看到读者提交的借阅请求,在收到这些借阅请求之后,可以对该借阅进行处理(通过/拒绝),同时管理员可以对图书进行增删改查等操作。
标签:变更 publish 三层 date 拒绝 环境 rgb mini api
原文地址:https://www.cnblogs.com/csluoxing/p/14202595.html