189 8069 5689

数据库课程设计-人事管理系统-创新互联

学期就要结束了,要完成一个数据库的课程设计项目,想想自己一个学期下来啥也没学到,现在突然要独立完成一个小项目,不能偷懒,发个博客记录一下吧。

目前创新互联建站已为1000+的企业提供了网站建设、域名、网页空间、网站托管维护、企业网站设计、北镇网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
第一天:

完成软件下载与环境配置,成功运行老师写好的学生管理系统。8c11a848a06d4266a472e32d972be333.png

第一次实现用代码弹出具体的界面,虽然不是自己写的,但我真的感觉特别惊喜、满足。


第二天:

在网上学习相关内容,初步掌握JSwing,完成登录界面的设计。

7801e0b5adff44fea50f1433aca28473.jpeg

一个小小的登录界面写了一百多行代码,键盘敲得就像是烤爆米花一样,特别是中途有一次删图片文件的时候不小心把java文件删掉了,差点就要重写,还好有备份。

AWT 是基于本地方法的C/C++程序,其运行速度比较快;Swing是基于AWT的Java程序,其运行速度比较慢;Swing是AWT的拓展延伸。

swing学习:Java Swing 图形界面开发

背景用的是绘图类:Java Graphics类的绘图方法; 使用Java的Graphics类进行绘图


第三天: 创建项目的数据库:

虽然是数据库的课设,但是创建数据库过程显然比其他的步骤简单,因为最抽象最难想的部分(比如需求分析、概念模型E-R图等)指导书已经完成的差不多了,只要用数据库语法把数据库建立好即可。

1. 老是打错一个字母或者忘记什么内容导致要重写,泪目

fa49ba07f2014c589710f4800e87319f.png

2. 成功的一刻是那么的让人兴奋

f6105e87134b457cb3425dc763736f02.png

3. 插入数据,数据库建立完成。

0caec71b25c4464ea65f48ad7e1467ca.png

4. 插入数据的时候发现很多表格格式需要修改的地方,导致只能将原表格删除重新建立新的表格,这个时候Navicat确实是减轻了不少负担。

bec1e3f1f55248d1b64e61746612e98e.png

学习JDBC:
  • JDBC介绍
  • JDBC从入门到熟练使用——功能类详解、增删改查(CRUD)、sql注入、事务、连接池

第四天: 小小总结与反思:

这时我渐渐感受到了工程量的巨大,而且经过思考第二天设计的登录界面应该会有很大的改动:背景应该更加具有商务性质(原背景属于个人个性化背景);登录界面有管理员登录和普通员工登录;没有注册按钮,注册(即新增员工)应该是管理员在管理界面实现的功能。

为了不耽误进程,我还是打算先将整体框架建立好,最后再将系统进行完善处理。

实现登录设计:

实现一个登录功能思路还是比较简单的。增加一个监听器,内部功能就是首先通过用户输入的账号在数据库中进行查询,然后将查询到的密码与用户输入的密码对拍

如果一致则进入人事管理系统:

af4551ce2060418c9b1805f4a7e31f70.png

不一致则跳出报错消息对话框:

d912d7b2b6b34b1a9699eeac275f4b0f.png

按指导书上写的这里似乎要加一个用户密码加密的模块,我就先略过了。

管理界面设计:

我打算用一个选项卡面板做主体,做到能够快速切换功能,更加方便用户体验。

大体框架设计为:

343f565f6ac746dfb0ead9e51afbd729.png

运用的主要知识:JavaSwing_3.4: JTabbedPane(选项卡面板)

注册界面设计(出现一些bug):

89252a3505f749599c0edef993eb067c.png


第五天:

继续设计管理界面,预计如果正常工作还需要用两天时间设计界面,再留一个星期实现内部功能以及系统的完善处理。

遇见的bug:

6ce6d85840184af5801a93ba427bd2ba.png


第六天:

更新两个选项卡界面:

5c8981784eb548e98091aafbfd56bc09.png

员工信息查询界面,提供查询特定人物信息、查询所有人物信息、查询详细信息、删除特定人物信息和删除所有人物信息的功能。

cf7bca1f67f0419e88a0efa850f4122a.png

人事变动查询界面,表格记录所有人事变动的信息,也可以查询特定信息。


第七天: 界面设计:

ede2492aed884bb2b728f1616f4294c6.png

将昨天的人事变动界面拓展了一下,同时完成修改密码界面。至此界面设计已基本完成,剩下的就是功能设计与数据库完善。

功能设计:

1. 完成员工信息查询界面的五个基本功能,由于人事管理系统的员工基本属性有15条,非常的多,直接用一个表格列出来并不方便查阅,这里的想法是只用表格列出比较重要信息:

3adb5789cbeb4efaaba04a56632e2663.png

2. 同时提供“详细信息”功能,点开能查看详细信息,该员工的所有信息会列在里面:

9968a52bd9064804b0e8ec6002ddb421.png

这里稍微偷了个懒,因为设计了太多界面不想再重新设计一个,就直接套用了原来的界面代码。 

3. 当然这里的密码是不能查看的(保护隐私):

3d941ff3f6a74d59a6bc6a25388b8bee.png

4. 详细信息界面也提供修改功能,但这里只有修改基本信息的权限,比如不能修改员工号,有关人事变动的重要信息。


第八天:

完成注册新员工的功能设计:

1. 注册界面的员工号是系统根据当前的员工数(包括已经辞退的)自己填写上的,不能作出修改。

2. 完整性约束设计:如果没有填写完必要信息就直接注册,弹出对话框提示注册错误。

7c99e08b888f419eb35ab805936e8a53.png

3.密码系统自动填写为123456,这里填写注册信息时可以修改。

d9f09fb3991243f7820542ae94585914.png

4. 在注册界面输入带 * 的信息后,其它信息选填,点击注册可将员工信息记录数据库中:

983302c496da41b2beda78892ecf9bde.png

5. 可以发现,此时员工信息查询表已经可以看到新员工 小F:

c97e97c5cf2a47cdae58d2f43fbd9a59.png

8. 存在问题:注册一个新员工后不能继续进行注册,后续考虑新增一个刷新按钮进行下一个员工注册。

第九天:

1. 注册员工的同时实现新增人事变动的设计(同时注册员工后页面自动刷新,员工号递增,解决昨天一次只能注册一个员工的问题):

6a787a17d276449db3f9b557b4e298bb.gif

2. 实现 新增人事变动 功能:

22225790300d4bc688c643a72beb65f1.gif

可以看到此时小F的职位降到了员工:

6a43097d77264fca8ed9b31bf7c79a28.png

至此,功能设计已经基本完成。


第十天:

我喜欢整一些好玩的东西,所以这里弄一个更多界面,比如可以在更多这个界面设置一些休闲工具。这里是弄了一个点赞功能,点一下会变红,同时界面出现“Thank you!”:

(点赞图标来源:csdn)

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网页题目:数据库课程设计-人事管理系统-创新互联
转载来源:http://cdxtjz.cn/article/ddcjsc.html

其他资讯