JAVA课程设计——一个简单的教务人事管理系统
大三上学期期末总结,没错,上学期,写在下学期新学期开始,哈哈哈。
上学期学习了面向对象程序设计,课程设计的题目使用JAVA语言完成一个简单的教务人事管理系统,能够实现访问数据库的登录验证,分别按部门和员工编号查看员工信息,增添新员工,删除离职员工,修改员工信息等功能,并且根据不同的操作准确实现对数据库的访问和相应业务逻辑的实现。
直接徒手写一个管理系统肯定是不现实的,就算写出来了,也有很大的改进空间,索性就去读书馆查了一下,使用JAVA+Mysql+Navicat+NetBeans的综合项目书。
原本是教务管理系统,但是写下来太庞大了,我记得包括学生信息管理,教师信息管理,成绩信息管理等等好多模块,从时间和技术上考虑,打算只写一个教务人事管理系统,能够实现访问数据库的登录验证,分别按部门和员工编号查看员工信息,增添新员工,删除离职员工,修改员工信息等功能。
首先是安装Mysql,启动服务器后,安装图形化工具Navicat创建数据库,建表:
包括使用者User表,属性有UserNO,UserID,UserName,UserPWD;
教师信息表TeacherInfo,属性应该有教师编号,教师姓名,教师生日,教师性别,教师毕业院校,教师专业,教师地址,教师入职时间,教师部门,教师岗位;
部门表DepartmentInfo,属性包括DEPARTMENTID,DEPARTMENTNAME;
然后填表。
然后使用NetBeans编写程序,先是用户登录验证模块,了解使用DAO模式。
再编写主窗体模块,实现按部门查询,按员工编号查询,入职新员工,员工离职,信息修改,退出管理等模块。
最后在登录模块增加了注册账户和重置密码两个功能模块。
其中实现了几个常用类,包括JDBCUtil类,该类实现了数据库访问的准备工作;
User类,User类中封装了系统使用者的基本信息;
gui窗体类,窗体类包括登录窗体(LoginFrame)、管理窗体(ManageFrame)、入职新员工窗体(AddTeacherFrame)、员工离职窗体(DelTeacherFrame)、修改信息窗体(ModifyTeacherFrame)、用户密码重置窗体(UserPasswordResetFrame)和用户注册账户窗体(UserRegisterFrame);
InfoBean类,InfoBean类实现对教师和部门信息的封装;
Action类,本课程设计采用MVC模式,用Action类实现了对教师和部门不同行为的封装;
之后就是具体给对应的控件绑定事件,能够根据不同的情况,调用相应的类中的方法达到显示出不同教师信息的效果。
如果有需要的同学可以在百度网盘中下载,其中包括使用NetBeans打开的程序,使用Navicat运行的sql文件,具体请读一下文件中的hint,预祝使用愉快。
登录界面和操作界面效果图:


另外这个课程设计还可以在码云上下载使用,点击这里。
写在最后,通过这么一个课程设计,基本了解了使用面向对象语言JAVA开发一个信息管理系统的流程,熟悉了它的基本语法,特别是熟悉了Navicat的使用,掌握了怎么搭建一个数据库,明白了JAVA操作数据库的基本原理和流程,懂得了事件处理的基本原理和流程,初步了解了DAO模式和MVC模式在软件开发中的优势。
JAVA课程设计——一个简单的教务人事管理系统的更多相关文章
- 【python免费代码】设计一个简单的学生信息管理系统
文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...
- Java课程设计 ssm电影售票选座管理系统 电影网站的网页设计与制作mysql
注意:此项目只截图部分功能,可评论区咨询查看项目全部功能演示 1.开发环境 开发语言:Java 后台框架:SSM(Spring+SpringMVC+Mybatis) 前端技术:HTML+CSS+Jav ...
- Java RMI 实现一个简单的GFS(谷歌文件系统)——背景与设计篇
目录 背景 系统设计 1. 系统功能 2. Master组件 2.1 命名空间 2.2 心跳机制 2.3 故障恢复和容错机制 3. ChunkServer组件 3.1 本地存储 3.2 内存命中机制 ...
- java课程设计(计算器)
JAVA课程 设 计 报 告 1206401-18 瞿杰 一.设计时间 2013年6月 24日-----6月28日 二.设计地点 湖南城市学院实验楼计算机506机房 三.设计目的 1.巩固学习VB ...
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
- java课程设计--We Talk(201521123061)
java课程设计--We Talk(201521123061) 团队博客链接:http://www.cnblogs.com/slickghost/ 数据库 一.通过Dao模式建立与数据库的连接 1.数 ...
- Java课程设计—学生成绩管理系统(201521123005 杨雪莹)
一.团队课程设计博客链接 学生成绩管理系统 二.个人负责模块或任务说明 学生成绩录入 显示所有学生信息 显示各科平均成绩 显示学生成绩(按降序排序) 三.自己的代码提交记录截图 四.自己负责模块或任务 ...
- JAVA课程设计——“小羊吃蓝莓”小游戏
JAVA课程设计--"小羊吃蓝莓"小游戏 1. 团队课程设计博客链接 http://www.cnblogs.com/HXY071/p/7061216.html 2. 个人负责模块或 ...
- JAVA课程设计——团队(&个人)博客
JAVA课程设计--团队(&个人)博客 1. 团队名称.团队成员介绍(需要有照片) 团队名称:是独立小分队啦 团队成员介绍:包梦榕 网络1513 201521123068 2. 项目git地址 ...
随机推荐
- Spring流行的十大理由
Spring大概是每个JAVA程序员都听过的框架,但是它为什么能这么流行? 听到咕泡学院的Tom老师的公开课,下面是他总结的阿里为什么选择Spring的十大理由,我觉得这也是Spring能流行的原因: ...
- ABAP 图形练习(GFW_PRES_SHOW and GRAPH_2D)
创建屏幕0100(元素清单中含定制控制CONTAINER和OK_CODE) 创建GUI状态100(功能键含BACK和EXIT用于返回和退出 ) 代码 *&------------------- ...
- 计算机网络三:域名、IP地址和TCP/IP协议
一.域名 域名(Domain Name),简称域名.网域,是由一串用点分隔的字符型标志名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时 ...
- oracle之 any、some、all 解析
举几个例子来说明ALL和ANY的用法 1. SELECT * FROM TABLEA WHERE FLD > ALL(SELECT FLD FROM TABLEA) 这相当于 SELECT * ...
- CentOS6.2上安装pip
如果yum install pip执行失败.按如下步骤执行 首先安装epel扩展源: yum -y install epel-release 然后执行yum --disablerepo=epel -y ...
- SSAS 后端数据库访问模块中存在错误。 为绑定指定的大小太小,导致一个或多个列值被截断。
在处理AS的过程中报错如上,经排查发现原因为数据库 “工号” 字段长度过长导致. 因为我的字段内容基本是人名加工号:张三/1001 不曾想有用户录入非正常数据 :张三/100/1001 这样导致我截取 ...
- Elasticsearch简介和安装对比
各位小伙伴,又到了本期分享大数据技术的时间,本次给大伙带来的是Elasticsearch这个技术,闲话不多聊,我们开始进入正题. 一.什么是elasticsearch Elasticsearch是一个 ...
- rabbitmq系统学习(一)
各种mq activemq,kafka使用zookeeper做管理 rocketmq自己实现nameserver broke管理 AMQP核心概念 高级消息队列协议 publisher applica ...
- 增删改查Spring+MyBatis
其实这次写这个增删改查,我的收获很大,在同学的帮助下和老师的推动下,我也是学会了很多的技能点. 1.显示数据 显示数据对我而言可以说很好做,因为我以前增删改查做了有N遍,但是我却每次都是无功而返,半途 ...
- Python入门必学,用Python练习画个美队盾牌
0 环境 Python版本:3.6.6 操作系统:Mac OS Mojave 10.14.2 1 引言 最近我媳妇每天晚上吃饭时候也拿手机看,上厕所也在看. 看着看着还会笑?WTF?你在干嘛呢? 没错 ...