《Java sqlsever人事管理系统报告.docx》由会员分享,可在线阅读,更多相关《Java sqlsever人事管理系统报告.docx(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Java+sqlsever人事管理系统报告据库课程设计班 级:学 号:姓 名:设计题目:指导老师:设计时间:09计算机应用技术人事管理系统2011-12-28 2012-1-10口四、物理设计1、数据库物理设计数据库物理设计阶段的任务是根据具体计算机系统(DBMS与硬件等)的特点,为给定的 数据库系统确定合理的存储结构与存取方法。所谓的“合理”要紧有两个含义:一个是要使 设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。要 紧表达在后者。(1)建立索引:对表部门在属性列部门号上建立非聚集索引,对表员工在属性列出生日期上建立非聚集索引,在属性列学历上建立非聚 集索引(
2、2)存储结构确定数据库的存储结构要紧指确定数据的存放位置与存储结构,包含确定关系、索 引、FI志、备份等的存储安排及存储结构,与确定系统存储参数的配置。将日志文件与数据库对象(表、索引等)分别放在不一致的磁盘,能够改进系统的性 能,提高系统的安全性。因此,系统应将日志文件与数据文件存放在不一致磁盘上。2、数据库的建立具体SQL代码如下:create database人事管理系统on primary(惘111=人事管理系统,filename士F:朱赞人事管理系统Data人事管理系统.mdf,size=5MB,maxsize=20MB,filegrowth=10%)log on(伍01匕=人事管理
3、系统一日志,filename=F:人事管理系统Data人事管理系统_日志dF,size=5MB,maxsize=10MB,filegrowth=10%)go-创建用户表create table 用户表(UserID int primary key,UserName varchar(20) not null,UserPassword char( 10) not null)g。-创建职工信息表create table 员工表编号 int primary key,姓名 char(10) not null,性别 char(2) check(性别 in(男,女),出生日期datetime,民族 varc
4、har(16) not null,学历 varchar(32) not null,部门名 char(20) not null,照片image,联系电话char(20),联系地址char(50),身份证号 varchar(32) not null,)g。-创建部门表create table 部门表(部门号 int primary key,部门名char(20)五、系统实现与测试1、开发工具与平台选择NetBeans IDE是一个屡获殊荣的集成开发环境,能够方便的在Windows, Mac, Linux与Solaris中运行。NetBeans包含开源的开发环境与应用平台,NetBeans IDE能
5、 够使开发人员利用Java平台能够快速创建Web、企业、桌面与移动的应用程序, NetBeans IDE 目前支持 PHP、Ruby、JavaScript Ajax、Groovy、Grails 与 C/C + +等 开发语言NetBeans平台是一种可重复使用的框架用于简化其他桌面应用程式的开发。当 基于NetBeans平台的应用被执行,平台要紧类别的main方法便会被执行。可用的模 组会被放置在存储器中,同时开始执行任务。通常模组会只在被需要时,其代码才会 被装进经历。2、系统实现具体JAVA代码如下:(1)、连接数据库的类与有关方法package a;import java.sql.*;i
6、mport javax.swing. JOptionPane;public class dbcon private Connection conn;private ResultSet rs;private Statement stmt;private PreparedStatement pstmt = null;定义预处理对象public boolean login(String name, String pwd) boolean flag = false;try (Class.forName(nn);conn= riverManager.getConnection(njdbc:odbc:zh
7、uyunu);stmt = conn.createStatement();rs = stmt.executeQuery(select UserID from 用户表where UserName- + name + and UserPassword= * + pwd +if (rs.next() flag = true; else JOptionPane.showMessageDialog(null, ”用户名不存在! ,“提示,1);flag = false;) catch (Exception e) JOptionPane.showMessageDialog(null, e.toString
8、(), “错误,1);)return flag;)将部门名的信息放到node中public ResultSet node() try (Class.forName(,n);conn= riverManager.getConnection(,jdbc:odbc:zhuyun,);stmt = conn.createStatement();rs = stmt.executeQuery(nselect 部门名 from 部门表”); catch (Exception e) JOptionPane.showMessageDialog(null, e.toString。,“错误,1);)return r
9、s;将员工的信息放到tab表中public ResultSet tab(String name) try (Class.forName(,H);conn= riverManager.getConnection(njdbc:odbc:zhuyun);stmt = conn.createStatement();rs = stmt.executeQuery(select a.* from 员工表 a,部门表 b where a.部门名二b.部门名and b.部门名廿+ name + ); catch (Exception e) JOptionPane.showMessageDialog(null,
10、e.toString。,错误,1);)return rs;添加员工信息的方法public boolean insert(String id, String name, String sex, String birth, String minzu, String xueli, String bumenhao, String cellphone, String address, String idcard) boolean flag = false;int eid = Integer.parselnt(id);/int did = Integer.parselnt(bumenhao);try (C
11、lass.forName(,n);conn= riverManager.getConnection(,jdbc:odbc:zhuyun,);/stmt = conn.createStatement();pstmt = conn.prepareStatement(ninsert into 员工表(编号, 姓名,性别,出生日期,民族,学历,部门名,联系电话,联系地址,身份证号) values ( + eid + J + name + 二” + sex + 1 + birth + 二+ minzu + 丁 + xueli + ”?” + bumenhao + 二”+ cellphone + “7 +
12、 address +丁 + idcard + ”)”);pstmt.executeUpdate();flag = true;JOptionPane.showMessageDialog(null, “添力口成功!“提示”,1); catch (Exception e) JOptionPane.showMessageDialog(nulI, e.toString。,错误,1);) return flag;删除的方法public boolean Del(int k) boolean flag = false;try (Class.forName(,);connDriverManager.getCon
13、nection(jdbc:odbc:zhuyun);pstmt = conn.prepareStatement(ndelete from 员工表 where 编号=?);pstmt.setlnt(l, k);赋值int n = pstmt.executeUpdate();if(n0) JOptionPane.showMessageDialog(nuH, ”册除成功!”);flag = true; else JOptionPane.showMessageDialog(null,“册邨余失败! ”);)stmt.executeUpdate(ndelete from 员工表 where 编号=);
14、catch (Exception e) JOptionPane.showMessageDialog(null, e.toString。,错误,1);return flag;获取编号的的方法public void getNum(int k) boolean flag = false;try (n);conn=DriverManager.getConnection(jdbc:odbc:zhuyunM);stmt = conn.createStatement();stmt.executeUpdate(nselect 编号 from 员工表 where 编号=flag = true;JOptionPa
15、ne.showMessageDialog(null, ”删除成功!“提示“,1); catch (Exception e) JOptionPane.showMessageDialog(null, e.toString。,”错误,1);)查询出员工信息并放到指定的位置public void info(int k) int id, hao = 0;Stringname,sex,brith,minzu,xueli,bumenhao:=,cellphone,address,idcard;try Class.forName(1,H);conn= riverManager.getConnection(jd
16、bc:odbc:zhuyunH);stmt = conn.createStatement();rs = stmt.executeQuery(nselect * from 员工表 where 编号= + k + ”); while (rs.next() id = rs.getlnt(l);name = rs.getString(2);sex = rs.getString(3);birth = rs.getString(4);minzu = rs.getString(5);xueli = rs.getString(6);bumenhao = rs.getString(7);cellphone =
17、rs.getString(9);address = rs.getString(lO);idcard = rs.getString(l 1);new Modify(String.valueOf(id), name, sex, birth, minzu, xueli, bumenhao, cellphone, address, idcard,k).setVisible(true);) catch (Exception e) JOptionPane.showMessageDialog(nuII, e.toString(), “错误,1);)人事管理系统是企业管理系统中不可缺少的重要构成部分,它的内容
18、关于企业的决策 者与管理者来说都至关重要,因此人事档案管理系统应该能够为用户提供充足的信息与快 捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着 许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件何数据,这关于查找、更新 与保护都带来了很多的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能 己为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对人事档案信息进行管理,具有着手工管理所无 法比拟的优点.比如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本 低等。这些优点能够极
19、大地提高人事档案管理的效率,也是企业的科学化、正规化管理,与世 界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的情况。目录一、系统定义1/修改员工信息的方法public boolean change(String name, String sex, String birth, String minzu, String xueli,String bumenhao, String cellphone, String address, String idcard,int k) boolean flag = false;try (Class.forName(,n);conn= riverMa
20、nager.getConnection(,jdbc:odbc:zhuyun,);stmt = conn.createStatement();stmt.executeUpdate(nupdate 员工表 set 姓名=,” + name 十 二性别二”+ sex + 匚出生日期二+ birth + 二民族二”+ minzu 十 ”学历+ xueli + 二部门名士” + bumenhao + 二联系电话二”+ cellphone + 二 联系地址二+ address + 二”身份证号二+ idcard + where 编号=+k+”);flag = true;JOptionPane.showMe
21、ssageDialog(null, ”修改成功!“提示,1); catch (Exception e) JOptionPane.showMessageDialog(nulI, e.toString(), “错误,1);) return flag;查询员工全面信息public ResultSet tabl(int id) /int idd=lnteger.parselnt(id);try (Class.forName(,H);conn= riverManager.getConnection(jdbc:odbc:zhuyun);stmt = conn.createStatement();stmt.
22、executeQuery(select * from 员工表 where 编号=+ id+ catch (Exception e) JOptionPane.showMessageDialog(null, e.toString。,错误,1);return rs;3、系统测试圉登陆10 I欢迎登陆人事管理系统当输入用户名与密码(admin与123),点击“登录”按钮,就自动连接到相应的数据库彩充设百彩充设百漆加员工由员工修改信息看入员工编号快速查找看入员工编号快速查找病号姓名 性别出生日期民族学历部i1名崩系电话款系地址身份证号2015未费一见 】98;-12-26. 汉 大寺 经理部1528sl
23、5235s.费力腕怠大学5224221987122668II登录进去后进入主界面,鼠标点击部门名称,会自动弹出数据库表中的部门名,当单击部门名时,在右边界面会自动弹出该部门下的所有员工并输出基本信息。I-,j添加信息当点击主界面上的“添加员工”按钮,会自动弹出添加信息的界面,填写完相应的信息后点击“储存”按钮,系统将会把相应的信息写入数据库中储存。察统设2E输入员工编号二快速查板二联系她址联系她址身份证号编号姓名 性别出生日好民旅学历 部门名 寐系电话当要删除某个员工信息时,选中该员工,点击主界面上的“删除员工”按钮,就能够从 数据库中删除该员工的信息。当要修改某个员工信息时,选中该员工,点击
24、主界面上的“修改信息”按钮,就能够从数据修改员工信息,并重新储存在数据库中。添加员工删除员工修改信息系统设置快速查找2015当要查看某个员工的全面信息时,能够在主界面“快速查找”前的文本框中输入员工编 号,就能够查看到该员工的全面信息六、设计日志2011-12-28 星期三今天是实训的第一天,没想到这一学期还是数据库的实习课程,这次我们实训只有两 个周了,时间很紧急,我也有了一些紧迫感。2011-12-29 星期四已经分好了组,能够九人一组,也能够八人一组,由于时间的原因,我选择了六人一 组,同时确定了要做的内容人事管理系统。2011-12-30 星期五今天,我们还是得乖乖呆在教室做实习,我们
25、想,既然定好了目标,我们就该分工合 作,查找资料。2011-12-31 星期六今天,我们继续昨天的工作,并开始了数据库的有关设计,每个人都各行其是,认真做 自己的工作。2012-1-4 星期三又是一个星期的开始,今天的实习很轻松,由于已经有了一些头绪,因此做起来比较 得心应手,只想着要这样一直进展下去就好了。2012-1-5 星期四我们己经开始调试程序了,在数据库中建表,实现了数据库与JAVA程序的连接,只要 能顺利调试成功,我们就算是得到一半的收获了。2012-1-6 星期五昨天的程序在今天终于能够运行了,数据库中的数据能够传到JAVA程序中去了,只 是好久没有接触JAVA 了,现在对它好像
26、又有种似曾相识的感受。2012-1-9 星期一今天,在程序能够运行的时候,我们就考虑到了怎么来美化界面了,这方面也只是在 JAVA中去实现,然后传给数据库,这样一来,我们都轻松了一半了。 到今天为此,好多 人都已经做完了自己的任务,就等着老师的检查了,想想这两个星期也过得真快啊,现在只 想有个完整的结束。2012-1-10 星期二:今天老师检查所有的作业,大家都如释重任。七、设计总结通过两个星期的学习,数据库实训已经结束。回想这两个周的学习。我们获益匪浅。这门学科是让我们明白如何设计程序,还要就是写出来的程序要与数据库相连。我们要 考虑很多的因素在里面,不仅要安照别人的要求来做而且还要符合要求
27、,同时写出来的程序 要能够运行,给人不一致的感受。在这门学科中,我们学习了如何编写JAVA程序来连接数据库,怎么才能快速、如何才 能让去浏览你的程序。重要的是我们写出来的程序要有人来去试你的程序,不管如何的程序, 要有人去看才算是最好的程序。这次实习,使得我们能够更多的学习程序的编写,让我们有 独立思考问题的思维。同时也让我们展现了同学们之间的互相帮助的这种友谊。表达了团队 精神。这一次的学习,我们是以组进行的。首先,在实习之前,每个组给自己确立一个程序名 即确立要设计如何的一个程序。我们这次设计的是人事管理系统数据题目。根据每个同学掌握的JAVA知识点的差异,我们选择的程序是不一致的,也是不
28、一样的。 我们是六个人一组的,通过这次实训,我们合作的很好。这次学习的过程中,最难的就是写程序了同时要把写出来的JAVA程序与数据库相连, 在写程序是时候,我们会遇到很多的问题,不明白如何去写,怎么让写的程序能达到运行的 效果,在很多时候,我们写出来的程序会有很多的问题,不符合要求,但这样也让我们学会 了在网上查别人做好的程序来解决问题,独立思考的好习惯。尽管如此,我们还是坚持下来这次学习。由于我们深知,学习上遇到困难,那正是提升 我们学习能力的机会,学习上遇到烦恼,那正是在考验我们毅力。因此,当面对这些问题时, 我们抱着务必战胜的意念,询问同学,请教老师,组内进行讨论。终于,一步步走过来,把
29、 这门学习完成。或者许,我们的程序还不是很完善,仍存在缺陷,或者许,我们的编写上还有许多的差 错,但是,这都是通过我们的坚持与努力做出来的,是团队合作的成果,也是个人努力的成 果。这一次学习,少不了同学们的帮助,组员间的配合,更少不了老师的指导。在此,感谢 老师、同学们的耐心帮助与指导!祝我们的老师工作顺利进行!我们的同学学业有成!朱赞八、参考文献数据库原理与应用国防科技大学出版社SQLServer2005有用教程国防科技大学出版社管理信息系统西南财经大学出版社Java程序设计清华大学出版社九、附录小构成员:组长:教师评语:指导老师:设计时间:2011年12月28日至2012年1月10日二、需
30、求分析21、系统功能的基本要求22、系统功能模块图23、数据流程图2三、系统设计41、概念结构设计42、数据库结构的全面设计 5四、物理设计71、数据库物理设计72、数据库的建立7五、系统实现与测试101、开发工具与平台选择 102、系统实现103、系统测试19六、设计日志22七、设计总结23八、参考文献24九、附录25一、系统定义不管是公司还是企业的管理离不开人事管理,关于现代社会的公司管理,人事管理系 统是不可或者缺的一部分,它为人事管理部门的工作人员提供多种方式的人事查询与统计功 能,另外还提供对企业的人事调动(包含添加新员工、人员退休、人员辞职等)、人员信息 的改动与查询企业员工信息等
31、操作。本文按照数据库系统设计的基本步骤,采取r事先进行需求分析,然后进行数据库的 概念设计与逻辑结构设计,最后进行数据库全面设计的方法,完成了一个人事管理系统数据 库系统的设计。最终,在SQL SEVER 2000完成的人事管理系统,能够实现:对员工基本档 案的管理、奖惩记录的管理、出勤记录的管理、职务调动记录的管理、工资管理、请销假管 理。二、需求分析1、系统功能的基本要求(1)登录管理(2)人员管理:包含添加,浏览,修改,删除,查询等(3)部门管理:部门管理包含添加、修改,删除(4)报表打印2、系统功能模块图人事信息系统data人员图2员工信息管理数据流三、系统设计1、概念结构设计图6管理
32、员实体图图7各实体之间联系图(总体E-R图)2、数据库结构的全面设计通过检杳,此数据库的全面逻辑设计满足第3范式的要求。人事管理系统中各表的属性设计逻辑结构如下:用户表(编号,用户名,密码)员工表(编号,姓名,性别,出生日期,民族,学历,部门名,照片,联系电话,联系地址, 身份证号)幅 设计表“员工表,位置是.人事告理系统中、-(local)-上列名数据类型长度允许空闹用int4姓名char10性另char2Z出生日期datetime8Z民族var char16学历var char32部门名var char50照片image16Z联系电话char20V联系地址char50V身份证号var char32部门表(部门号,部门名)