java课程设计工资管理系统.docx
《java课程设计工资管理系统.docx》由会员分享,可在线阅读,更多相关《java课程设计工资管理系统.docx(19页珍藏版)》请在冰点文库上搜索。
java课程设计工资管理系统
得分:
课程设计报告
企业工资管理系统
姓名
陈志
班级
122011
学号
12201107
课程名称
Java课程设计
指导教师
2015年12月12日
一.工资管理系统需求分析…………………………………
1.1功能需求…………………………………………………
1.1.1功能划分………………………………………
1.1.2功能描述……………………………………………
1.2性能需求…………………………………………………
1.3数据流图………………………………………………
二.总体设计…………………………………………………
2.1数据库概念设计…………………………………………
2.2功能模块…………………………………………………
三.系统详细设计……………………………………………
3.1数据库逻辑设计…………………………………………
3.2各模块功能………………………………………………
四.系统实现…………………………………………………
4.1界面截图…………………………………………………
4.1.1主界面及工资基本信息界面……………………
4.1.2登录界面…………………………………………
4.1.3系统主界面………………………………………
4.1.4信息录入,修改,删除,查询界面…………
4.2设计代码…………………………………………………
五.系统运行环境。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
六.参考文档。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
七.开发过程中遇到的问题、,。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
八.数据库英文数据参考翻译。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
九.实验总结…………………………………………………
1、需求分析
1.1功能需求
1.1.1功能划分
(1)、员工模块:
查看工资情况,打印工资表格
(2)、管理员模块:
对员工基本信息的插入,数据更新。
对其他(部门,职位,工资,福利)的更新,初始化。
1.1.2功能描述
(1)、基本工资的设定
(2),员工基本信息的输入,修改,删除
(3)、员工工资浏览
(4)、员工个人工资的计算
(5)、福利发放,设定
(6)、打印报表
1.2性能需求
本课程设计是用Java语言编写,mysql数据库。
移植性强,易于管理。
1.3数据流图
根据工资管理要求及用户需求调查分析,得到以下数据流图
图1.1员工数据流图
图1.2管理员数据流程图
2.总体设计
2.1数据库概念设计
有了数据流图,用E-R图来说明工资信息管理系统的数据库概念模式,如图
3.系统详细设计
3.1数据库逻辑设计
将以上E-R转换成如下关系模式
员工(职工号,姓名,性别,所在部门,职位,工龄)
管理员(id,账号,密吗)
部门(部门名)
职位(职位名称,职位基本工资,职位所在部门,职位工资水平)
福利(福利名称,福利金额)
员工福利(id,员工号,福利名称)
工龄(工龄,工龄工资)
其中,标有下划线的字段表示为该数据表的主码,即主关键字。
在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。
工资信息管理系统数据库中各个表格的设计结果如下面的几个表格所示。
每个表格表示在数据库中的一个表。
表一:
员工信息表:
表二:
管理员表:
表四:
部门表
表四:
职位表
表五:
福利表
表六:
员工福利表
表七:
工龄表
3.2各模块
3.2.1模块框架
系统框架呈现一种mvc的设计理念
MVC全名是ModelViewController,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
3.2.2系统各模块相应代码解析
View(视图)是应用程序中处理数据显示的部分。
通常视图是依据模型数据创建的。
员工部分视图
管理员部分视图
Controller(控制器)是应用程序中处理用户交互的部分。
通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
这里程序在设计时,把大量的控制直接写在了页面中,是一个不足的地方。
如:
这个按钮的触发事件直接写在了employeeupdatehomeviews中了。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
通常模型对象负责在数据库中存取数据。
Servlet层
主要是接受页面的输入,并向Service传值,接受Service的返回值,并发回页面中的控制器。
Service层
接受Servlet的传值并调用dao层,接收来自dao层的数据库数据,进行处理之后,返回Servlet层
Dao层
接收service的调用,在这层,程序与数据库对话,调用jdbc驱动,建立连接。
并把查询的结果集发送给service层进行处理。
3.2.3顺序图解析
以员工查询为例
3.2.4其他代码块
实体类
这些类是程序与数据库的一种映射,临时存放查询运行的数据。
数据转换
表格模型
数据库连接工厂
4.系统实现
4.1界面截图
4.1.1主界面
4.1.2管理员登录界面
4.1.3管理员管理工资界面
4.2设计代码
略。
5.系统运行环境
Jdk1.6以上,数据库是mysql.
6参考文档
《数据库系统概论》王珊萨师煊
《uml系统分析与设计教程》季振燕
《web开发技术实用教程》陈车失
极客学院javaswing主件acely_ra老师
极客学院servletDao学习darkmi老师
XX文档mvc结构图
7开发中问题总结
在数据库的设计中,数据库的完整性约束
1参照完整性检查和违约处理,在这里给主键和外键考虑的约束条件不同,可能会出现问题
2在数据库设计初,有员工工资表,考虑到数据库的完整性和数据库的优化,后来将其删除。
3在view各视图设计中,由于没有考虑ui线程的安全性问题,可能系统在运行过程中会出现问题‘
4程序并没有实现各表格的打印操作
5界面交互性不完善,丑的不行
8数据库英文翻译
医疗保险medicalinsurance
劳工保险labourinsurance
节日福利holidaybenefits
商业保险commercialinsurance
红利bonus
保洁员cleaner
宿舍管理员dormitoryadministrator
保安securitystaff
后勤主管logisticssupervisor
培训科员stafftraining
招聘科员recruitmentclerk
劳资科员clerkoflabor
人力资源部主管humanresourcedepartment
会计accounting
财务经理financialmnager
财务总监chieffinancialofficer
初级软件测试师juniorsoftwaretestengineer
中级软件测试师intermediatesoftwaretestengineer
中级软件工程师intermediatesoftwareengineer
高级软件工程师seniorsoftwareengineer
初级软件工程师juniorsoftwareengineer
美工artdesigner
助理设计assistantdesigner
文员clerk
代表representative
秘书secretary
工程主管engineeringdirector
跟单员documentary
采购员buyer
采购部经理purchasingdepartmentmanager
经营部科员businnerdepartmentclerk
经营部长businesssecretary
后勤部logisticdepartment
人力资源部humanresourcesdepartment
财务部financedepartment
测试部testdepartment
软件开发部softwaredevelopmentdepartment
技术服务部techinicalservicedepartment
产品事业部productdivision
工程部engineerdepartment
采购部purchasingdepartment
8.课设总结
此次课设难度有点大,通过几天的努力终于完成了,开始对如何连接数据库不太了解,通过小组合作,和网上查阅资料,最终解决了问题,在写员工登陆界面时,要从数据库读取和验证密码,开始遇到了些问题,后来慢慢都完成了,总的来说收获很大,了解了如何将所学数据库运用到编程里,对数据库数据的查询,更改,添加都有了更一步的了解。