java+jsp+Oracle+Tomcat 记账管理系统论文(二)

⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️

➡️点击免费下载全套资料:源码、数据库、部署教程、论文、答辩ppt一条龙服务

➡️有部署问题可私信联系

⬆️⬆️⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️​​​​​​​⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️

目录

第三章 系统分析

3.1 系统初步调查

该记账管理系统,主要有4个功能模块组成,分别是:用户登录,财务管理,财务统计和系统管理,不同用户登录该系统权限不同,若是普通用户登录,则可以进行一些基本操作,如自身的信息修改,账单查看,账单记录等功能,若是管理员登录,则可以对普通用户和其他管理员进行管理,如基本的删除等功能。这样能更好的管理整个系统,本来各个模块之间错综复杂的关系,一下子让用户看起来更简单化,人性化。

3.2 系统体系结构设计

整个系统分为 用户注册,用户登录,财务管理,财务统计,系统管理等功能模块,如3-1图所示。

图3-1 系统结构图

3.2.1 首页

登录之后进入首页,你将看到系统的整体界面和基本功能,在你面前展现出来的是该系统的基本信息,如版本号,版权所有,开发者以及开发者的一些基本信息容内等。

3.2.2用户信息管理

当你登录成功之后,点击用户信息管理,你将看到登录用户的基本信息,如电话,姓名,性别,密码等信息,然后可以直接在上面进行编辑修改自己的信息,修改完成之后,系统将会提示你信息已修改成功,请重新登录的提示,这样以保证用户信息的安全性。

3.2.3用户财务管理

当你登录成功之后,你才有权限看到该用户的财务信息,当你点击财务管理时,将会展现出两栏小菜单,一个财务信息一个财务记录,财务信息将展现该登录用户的所有账单信息,用户可以很清楚地看到自己以往的财务记录;财务记录是一个添加记账的功能,它能简单的记录该登录用户的财务记录,然后入库,将数据持久化到数据库。

3.2.4用户财务统计

财务统计是一个统计功能模块,当用户拥有多条财务记录的时候,他点击财务统计该功能,他将可以清楚的看到月收支统计和年收支统计两个菜单栏。月收支和年收支,显而易见,就是统计该用户财务中每个月所有财务记录的一个统计和每年所有财务记录的一个统计,让用户每个月或者每年对自己财务账单有一个清晰的记录。

3.2.5系统管理

该模块普通用户是看不到的,只有管理员登录才能看的到,管理员登陆之后,他将用户对所有用户的基本管理的功能,如删除用户,通过登录名查询用户等功能,当然还可以对用户添加其他操作功能,这个可以作为一个扩展;然后是管理员对管理员进行管理,也可以进行基本的删除、查看、修改的操作。

3.2.6退出

用户点击退出可以安全退出该系统,退出之后必须重新登陆。

3.3用例图

该系统可分为三大模块管理,一个是用户管理,用户分为普通用户和管理员,他们权限不同,所以所拥有的功能和所看到的页面不同;另一个是财务管理,里面包含用户所拥有的财务信息和财务记录等。还有一个就是系统管理,也就是不同用户所用权限不同。具体见下用例图。

财务管理:

用户管理:

系统管理:

图3-2 用户管理用例图

不同的用户他们的登录界面不同,他们所拥有的权限和基本功能也是不一样的,他们的属性也有所区别。

图3-3 财务管理用例图

财务管理是整个系统的核心模块,它的功能如上图描述,可以很好的为用户的财务收支做,有效的记录并且永久的保存到数据库,用户随时可以查看自己的财务记录。

3-4 系统管理用例图

不同的用户他们的权限也就不一样,管理员能让这个系统更完善,它可以更好的管理所有用户的行为和权限。

3.4用例说明

3.4.1用户登录用例说明

用户注册,登录功能的用例说明,列出一系列可能出现的错误,导致无法正常完成用户的注册,登录的功能。这些错误是我们事先就已经意料到的可能发生的错误,能在第一时间给以客户回应,使得系统的可操作性更加的真实,可靠,也让用户感觉到系统的人性化。这些也是我们程序员在编写代码时要考虑的基本事项,作为一个好的程序员应该在第一时间想到系统可能出现的情况,把系统错误发生的可能性降到最低。以下是关于用户登入和注册时可能发生的一些异常,如:注册时用户名已经存在,登入时用户名与密码不相匹配,用户不存在等。

表3-1 用户登录用例说明

3.4.2财务管理用例说明

表3-2 财务管理用例说明

3.4.3系统管理用例说明

表3-3 系统管理用例说明

第四章 系统设计

本章内容包括系统类分析、核心业务设计、数据库设计三个部分,其中系统类分析需要给出系统类图和类的说明,需要注意在给出类图的时候只需要给出核心业务类,对辅助类如界面类、数据库连接类这种类型的不需要给出,如果所涉及的类(包括类当中的内容)较多时,应首先给出类间关系图(图中的类只有名称没有属性和方法),之后在单个类说明中给出具体类的类图,类图同样需要用WORD进行绘制。

核心业务设计主要描述的是完成某项具体业务时,类之间的消息配合,用时序图进行表述,时序图可以用其他工具绘制,但不能够有其他的颜色出现。

数据库设计主要描述在系统中需要持久化的对象,需要给出ER图,如果系统所涉及的实体(或实体的属性)较多时同样采用分层绘制的方法,顶层图给出实体间关系,下层图针对每一个实体进行具体绘制。

4.1系统类分析

经分析,该系统核心业务类见下图:

图4-1 系统核心类

4.1.1 User类

USER类用于记录系统的用户信息,并完成登陆和注销的操作。

表4-1 USER类功能表

类功能描述 处理和用户相关的业务操作

所在包名称 com.graduation.bean.User

继承对象 无

实现对象

类属性

保护属性 类型 名称 描述 备注

Public String ID 用户ID 系统中用户的唯一标示,由系统自动生成

Public String Name 登录号 长度限制20位

Public String Password 密码 长度限制20位

Public String sex 性别 长度限制20位

Public String age 年龄 长度限制20位

Public String tel 手机号码 长度限制200位

Public String rname 姓名 长度限制20位

Public Date adddate 注册时间 长度限制20位

主要实现方法

保护属性 方法名 输入参数 输出参数 方法功能描述

Public loginUser string id,string pwd String" 登陆系统,用户输入ID和PASSWORD后进行验证,验证通过返回用户名,并登记日志,验证失败返回空串。

public logout string id Void 注销系统,注销成功清理用户的相关信息并登记日志。

4.1.2 Admin类

Admin类用于管理员信息记录,并且让管理员进行登录等操作。

表4-2 Admin类功能表

类功能描述 处理和管理员相关的业务操作

所在包名称 com.graduaion.bean.Admin

继承对象 无

实现对象

类属性

保护属性 类型 名称 描述 备注

Public String ID 用户ID 系统中用户的唯一标示,由系统自动生成

Public String Name 登录号 长度限制20位

public String Password 密码 长度限制20位

主要实现方法

保护属性 方法名 输入参数 输出参数 方法功能描述

Public loginUser string id,string pwd String 登陆系统,管理员输入ID和PASSWORD后进行验证,验证通过返回用户名,并登记日志,验证失败返回提示框。

public logout string id Void 注销系统,注销成功清理用户的相关信息并登记日志,安全退出。

4.1.3 Zhang类

Zhang类用于用户进行账单记录的时候要用的,对账单进行记录,然后导入数据库中。

表4-3 Zhang类功能表

类功能描述 处理和用户记账记录相关的业务操作

所在包名称 com.graduaion.bean.Zhang

继承对象 无

实现对象

类属性

保护属性 类型 名称 描述 备注

Public String ID 用户ID 系统中用户的唯一标示,由系统自动生成

Public String Name 登录号 长度限制20位

public String Password 密码 长度限制20位

Public String username 用户登录名 长度限制20位

Public String rname 用户姓名 长度限制20位

Public String type 类型 长度限制50位

Public String kind 种类 长度限制50位

Public Date time 时间

Public Double count 金额

Public String yong 用处 长度限制100位

Public String Info 说明 长度限制200位

主要实现方法

保护属性 方法名 输入参数 输出参数 方法功能描述

Public addZhang Zhang zhang void 用户登陆系统之后,对于今天进行的消费或者其他进行记账,分别输入名称,类型,种类,金额等,然后通过系统进行保存。

public findZhangByName string name Zhang 通过输入账单名称,从数据库中查找所需要查看的记账记录。

4.1.4 Tong类

Tong类用于对zhang类进行统计,从而给用户看到某个时间段的总计。

表4-4 Tong类功能表

类功能描述 处理和用户记账记录统计相关的业务操作

所在包名称 com.graduaion.bean.Tong

继承对象 无

实现对象

类属性

保护属性 类型 名称 描述 备注

Public String ID 用户ID 系统中用户的唯一标示,由系统自动生成

Public String Name 登录号 长度限制20位

public String Password 密码 长度限制20位

Public String username 用户登录名 长度限制20位

Public String rname 用户姓名 长度限制20位

Public String type 类型 长度限制50位

Public String kind 种类 长度限制50位

Public Date time 时间

Public Double count 金额

Public String yong 用处 长度限制100位

Public String Info 说明 长度限制200位

主要实现方法

保护属性 方法名 输入参数 输出参数 方法功能描述

Public addZhang Zhang zhang void 用户登陆系统之后,对于今天进行的消费或者其他进行记账,分别输入名称,类型,种类,金额等,然后通过系统进行保存。

public findZhangByName string name Zhang 通过输入账单名称,从数据库中查找所需要查看的记账记录。

4.2关键业务设计

4.2.1 财务管理

用户通过记录账单,然后添加账单到该系统,在点击财务信息时将可以显示该用户的所有账单记录。

图4-2 财务管理时序图

4.2.2 财务统计

记录这该用户的年统计和月统计的总体数据,能更直观的展示出用户等收支情况。

图4-3 财务统计时序图

4.3数据库设计

4.3.1概述

本系统总共有四个实体类,分别是Admin,User,Zhang,Tong。他们分别对应着四张数据库表admin,t_user,zhang,tong表。

4.3.2概念设计

1.普通用户E-R图

用户实体图主要包含:用户性别,年龄,姓名,登录名,电话等信息,下图展现的很清晰,让人很容易看出其中关系,所以可以很容易设计数据表出来。

图4-4 用户E-R图

2.管理员E-R图

管理员实体图主要包含:只有管理员密码和登录名两个字段,下图展现的很清晰,让人很容易看出其中关系,所以可以很容易设计数据表出来。

图4-5 管理员E-R图

3.账单E-R图

账单实体图主要包含:账单名,类型,种类,金额等属性,下图展现的很清晰,让人很容易看出其中关系,所以可以很容易设计数据表出来。

图4-6 账单E-R图

4.统计E-R图

统计实体图主要包含:年份,月份,收入,支出等属性,下图展现的很清晰,让人很容易看出其中关系,所以可以很容易设计数据表出来。

图4-7统计E-R图

系统总体总体E-R图:

图4-8系统总体总体E-R图

4.3.3数据库表

系统中使用到数据库基本如表4-3-3所示。

表4-5系统数据库表

编号 表名 描述

01 t_user 用户表

02 t_admin 管理员表

03 zhang 账单表

04 tong 统计表

数据库中的用户表用来存储各类用户的相关数据,每个用户都要在用户表中有相相应的记录。管理员表用来记录管理员各个信息。账单表记录每个用户的账单信息。统计表用于管理账单的统计。

 用户表

系统用户表用于登录系统使用,用户表的具体字段如表4-3-3-1所示。

表4-6 用户表

字段名 字段描述 类型/长度 约束 备注

Id 用户编号 Int PK

name 用户名称 Varchar2(20) NOT NULL

password 用户密码 Varchar2(20) NOT NULL

sex 性别 Varchar2(20)

age 年龄 Varchar2(20)

tel 电话 Varchar2(20)

rname 姓名 Varchar2(20)

adddate 注册时间 Date

字段用户编号为本表的主键用来标识一个用户,用户帐号和密码是两个非空字段,用户使用用户名和密码作为登录系统的凭证。

 管理员表

系统管理员表用于登录管理员系统使用,用户表的具体字段如表4-3-3-2所示。

表4-7 管理员表

字段名 字段描述 类型/长度 约束 备注

Id 用户编号 Int PK

name 用户名称 Varchar2(20) NOT NULL

password 用户密码 Varchar2(20) NOT NULL

 账单表

登录用户用于账单记录的表,账单表的具体字段如表4-3-3-3所示。

表4-8 账单表

字段名 字段描述 类型/长度 约束 备注

Id 用户编号 Int PK

name 账单名称 Varchar2(20) NOT NULL

username 用户登录名 Varchar2(20) NOT NULL

rname 姓名 Varchar2(20)

type 类型 Varchar2(20)

kind 种类 Varchar2(20)

time 时间 Varchar2(20)

count 金额 double

yong 用处 Varchar2(20)

info 备注 Varchar2(20)

 统计表

登录用户用于统计账单记录的表,统计表的具体字段如表4-3-3-4所示。

表4-9 统计表

字段名 字段描述 类型/长度 约束 备注

Id 用户编号 Int PK

username 用户登录名 Varchar2(20) NOT NULL

type 类型 Varchar2(20)

kind 种类 Varchar2(20)

time 时间 Varchar2(20)

year 金额 Double

month 用处 Varchar2(20)

shou 收入 Double

zhi 支出 Double

相关推荐
FF在路上24 分钟前
Knife4j调试实体类传参扁平化模式修改:default-flat-param-object: true
java·开发语言
真的很上进31 分钟前
如何借助 Babel+TS+ESLint 构建现代 JS 工程环境?
java·前端·javascript·css·react.js·vue·html
众拾达人1 小时前
Android自动化测试实战 Java篇 主流工具 框架 脚本
android·java·开发语言
皓木.1 小时前
Mybatis-Plus
java·开发语言
不良人天码星1 小时前
lombok插件不生效
java·开发语言·intellij-idea
守护者1701 小时前
JAVA学习-练习试用Java实现“使用Arrays.toString方法将数组转换为字符串并打印出来”
java·学习
源码哥_博纳软云1 小时前
JAVA同城服务场馆门店预约系统支持H5小程序APP源码
java·开发语言·微信小程序·小程序·微信公众平台
禾高网络1 小时前
租赁小程序成品|租赁系统搭建核心功能
java·人工智能·小程序
学会沉淀。2 小时前
Docker学习
java·开发语言·学习
如若1232 小时前
对文件内的文件名生成目录,方便查阅
java·前端·python