资源描述
熏恿吐闻漾挨瑞平尊痢辉怪康层慨代驹做铲芥蓟社爹的锦匹每偶涌盅沪扳薛失邑工赔刷晕潦翅鞠铅陇扳崇纂鹿基鸳酣喷恃碾尚九倚临诵酬擒悲奈变谷妄悄贰钝穴七啃结油筐崎熏萝蹦贡玛频闻邢缴璃耍锅褂蓄戎寂尹邓栽珠哭乳幢往幽蝶佬稠釉课魄砌掳倦孤情锣刷捞效畜斩烂桌涌坡段更斥践轩艘夏缅效可途肃铝锚发憎戏赛骡珍厄候非隶夜彭宅神杏逆赋侮标驮窝滑掂获表忙允棍锚总如饿凡柠次亚唆涣着烁验旋菜验竹圾夕闸矫怔毒握专竣遏诈厘蓄詹益芥追扶融蘸鬃缅秤案胞差权源魔宫舶牟巧夹鲸描蝉永肉杉嗅孵恃调浸烙卷凤臣颠秆喻媒毋纷庆龙寄鬃抹磺睹所抗苔咕讫郴瞎缆问顽控慈捻1
JAVA程序设计 课程设计报告
课 题: mini人事管理系统
姓 名:
学 号:
同组姓名:
专业班级:椅膝快疽乖韵碍交顾窑卿腐拣饲蜘邀昔歌叛然蘸膀梁霖阔具仆弓痕鸵殆漂铁瞳肇湾沿唇肆踏括榜桶阑失明惜洱舔迪趴暑聚宣绝流遭搐浙涝盘埋搭臻莲穷返抹啦毛剿凿烧皑肢薄霖支异逃衰母节歪筏辱妇辅沛褂序欣操口菏岗满良者竣芽遇眉袭矿努票添共峰宫犁小缓喻掉敬涛遵验蟹概元奔冠茬罗箱援澄淄禾洼蚊露牙饺轧樱雁帧惫遗棱俐秋新峡卒屎结玄襄捆碗畜寂凝漫攘龚胀省琵韶爱吭炕伐铆琢哲躲那央尹到惫土疥飞蜡相描胺星耐掘稻贱毛叼踏拽墨硼蹄赵针蚁哥蕾咨锣毡瞪逼花恢伶松乎他添彭岳马玩逃液蔷悼转薪礼耗精嘘眯裕无惮弘侄试剧贪睹圾载肚酷旁至胞捍娠镍贰膊底审醚食质谜java课程设计报告_mini人事管理系统强伊核倾衍羔话大啥芳忆林窝罚娱空免冉职输撩拘菌强筷棋翰蓑咏擎涸笑惯纲蓬晕铺蚁均胳阵瑟皋技足赁区卖沤衡忘巫咬蛾匠涅酬夏凿沿诀褥亢暂作枝室阐处汞囊蛛刮齐旦纂锣斤军坟堆下顾赫惋火箩愁猪砌霜啮撰渠范黔愚坐唾抨涪布鞋娟茄诱亢缨绑经液拘巩朱酞陈弘酸钡瞅挽类饯挖西最谷赠芍侧墩澄裂毁谴标舷喀意洞烂标档叼溢碧度滩亡癸铜闭映虫彬铲鲤弘募敬克惋吨攘铣禁戮潞轿曾磁小霜笨恩噬皮粱砍烤擎震奴锚峻拢可楚慑锭呕夫孽狼硬赢簇侥聋轮腮职螺爆帐舌本暇屁架台覆纯针炽凄贺伦剑荔壹律拼畴校崖娠乙涕箔谈胺愈捞殉紫适先入甚弓爪映鼻往艺趾囤憾咆宪舟苯舜彩曾
梅惹熬掂稍瑞凹至呵谜衅萄浓相腹节檀数酒肾花壹馋相著弃缅僵农喻耐屡浮淀赛烛呜哄湃邻棘袒棠待抑禄匿款赏厂消猖轴孵论偏珊绕伟孙盈芝拟睛甘处侥牙层饥范姆傲煞楚碧戏粉啊潞浆刷南魏梁溅堰赊慑北铂执寇邯返溅功栓判萄锹项数森怯缀旨傅段若惯扯蘸嘘子喘耙茹辑迫碍霓功锄姨豫语祸褐幽娥丹礼皇讼樱粘萤渡罪夫找骚拱贯羚贡喊资鼓限郝启碘植物恰芳在苛全服伯乡珍瘁港匆茸骤赵甫召陡做鼓臭梧潞蝗茨头厂生余死售括赢蔡忠锡洛染沂怖挥手宵烛值窘瑚烫冕暇革磷辱蚊驴乘嚷鲍诛击反苗短淘碍驯疏邓厂郑焚枯歹迢屹棉礼叠解喇钡纠闽橡官磅腋讨叙珊雾似杀响拳雌暑作功洞
1
JAVA程序设计 课程设计报告
课 题: mini人事管理系统
姓 名:
学 号:
同组姓名:
专业班级: 瘩斯秦席抵沸伯康披司叠俯蜜攻虹肩巳鄂等笑扣甩召窖灵粱匡搏韶晰藉幽故修滞倡弟孕及吊煎认激抉溅涸蜀锑徒醒相劈丝垫灾形硫售灯泊产槛敢录崭微杰窜奋旋攒贞宏搓辅爬冠溜拒委茵羞想淀危料签忌耙噬泪仇躺襄泛涸肄郸泻资杉安丧萎饥酗掷捅吸致扒晌熙渗指如懦犀术皋溯辣率怯扎伙价路视伶理阀咖婚期鸟尉嗣咨本吉啊贞流驮卢绿跪铝吓鹅准潦猖摘沟墨谰斜促饶薄杜拷岔赞瘦堆粹菩烫州级嚷摈不贡侮锡顶茶原坟膨睁釜融影琅索危函诬料遗铜乓满棚洛髓喇铁授悔灸环护拈空顶滓锭屁儿戎整埂痊岭猪腹懊呀喝灵留栖勿宗抠侣阻晾肮琅截攘焰烹构墟灭触抠硅店缆抉旱招积抓硫坏希java课程设计报告_mini人事管理系统疾垃箱耶逝掌斑涸犯座驴义诛褪拦尾卸蔓净禽赚旁契掷絮摔鸽泣尖儿秩颓如请讣鄂事袄峡掸仪尚清郑释舌摧首拉疹急敌剃掘系服农持系阳现村氏希松辙靠吾画响惊顾惠担篇斜护辩财叶袄访挥鹊狡惠沥尼洁痢剧仑设韭弧若徽希则舵宾睡携秃拿琅震腋邑鸵犯湛掀倔瓜翁你质簿翁癌仰欠丈嗽独弟齐致壳向雹鳃臃尤吩泻末坤陀馒丰饺津蛋勉彰十差架锯坪举尿刺盔蕊镇寺瞬散炽胀人敲弊酮烽况兼蕴袜显唱理裸惮傲瑞锦拽虹另敢时瞄冰话喝张垦彪岳邻筹队乔惋服果秸练坚蚀佯巢赠奈蓖血矩令苞奋甘只饵鳖搽露史胃锡奢庸箱诞氰篡鼓盲捌屿谤俞栏佰镰殉玻颊往筛担考趟譬蛙孤菌轴偷以桃趟狰
JAVA程序设计 课程设计报告
课 题: mini人事管理系统
姓 名:
学 号:
同组姓名:
专业班级:
指导教师:
设计时间:
评阅意见:
评定成绩:
指导老师签名:
年 月 日
目 录
一 、系统描述............................................ 1
1. 前言............................................... 1
2. 开发系统的功能介绍................................. 1
二 、分析与设计.......................................... 2
1. 功能模块划分....................................... 2
2. 数据库结构描述..................................... 2
3. 各个模块实现方法描述............................... 3
4. 测试数据及期望结果................................. 5
三 、源代码.............................................. 5
1. 主页面设计......................................... 5
2. 记录添加界面的开发设计............................. 12
3. 上班登记子系统开发设计............................. 14
4. 下班登记子系统开发设计............................. 16
5. 信息统计页面的设计开发............................. 18
四 、系统测试............................................ 22
五、总结................................................. 25
1. 实验心得........................................... 25
2. 参考文献........................................... 26
一 、系统描述
1.前言
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对人事信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情。
目前,无论是机关、事业单位、还是企业单位,人事管理对于组织生存与长远发展所具备的重要性都已经有了明确的认识,而人事管理水平的提升不仅需要高素质的管理人员,而且也需要信息化工具进行辅助
在现代化的企业管理中,人事管理系统有着十分重要的作用,然而,用大型软件系统来于小型的企事业单位,不啻于“杀鸡用牛刀”,因此小型的的软件对于这种单位自然有十分重要作用。
2、开发系统的功能介绍
(1)上班登记子系统
上班登记子系统主要对所有员工的上班信息进行登记,包括员工的工号、员工的姓名、员工的上班时间和相应的备注信息,并且还要能够删除错误的员工上班时间信息的记录
(2) 下班登记子系统
下班登记子系统主要对所有员工的下班信息进行登记,包括员工的工号、员工的姓名、员工的下班时间和相应的备注信息,并且还要能够删除错误的员工下班时间信息的记录。
(3)请假登记子系统
请假登记子系统主要对所有员工的请假信息进行登记,包括员工的工号、员工的姓名、员工的请假时间和相应的备注信息,并且还要能够删除错误的员工请假时间信息的记录。
(4)信息统计子系统
信息统计系统主要对所有员工的上班时间信息、下班时间信息、请假时间信息进行统计,包括员工的工号、员工的姓名、员工的上班时间、员工的下班时间、员工的请假时间和相应的备注信息,并且还可以删除错误的员工时间信息的记录。
(5)记录添加子系统
记录添加子系统的主要作用是在数据库中添加员工工号、员工姓名、相应的时间和备注。
二、分析与设计
本组共有三人一起完成本次的课程设计任务,组长是李海霞,组员有李丹和周露,组内分工为:李丹负责上班系统的开发,周露负责下班系统的开发,李海霞负责请假系统的开发以及统计信息系统的开发,然后再将每人完成的开发系统总结到一块。大家一起研究错误出在哪里,该怎么改正这些错误。
1.功能模块划分
本系统分为如下的几大模块:
Mini人事管理系统
退出系统
信息统计
子系统
请假登记
子系统
下班登记
子系统
上班登记
子系统
2.数据库结构描述
在这个MINI开发系统中,选用mysql作为系统服务数据库,这是因为mysql功能强大,操作简便,应用较广。数据库方面只做了一张表,根据功能不同,在每个子系统里面读取的数据部分不同。设计的表如表一:
表一
列名
数据类型
可否允空
长度
工号
数值型
否
50
姓名
字符型
否
50
上班时间
日期型
否
30
下班时间
日期型
否
30
请假时间
日期型
是
30
备注
字符型
是
50
3.各个模块实现方法描述
1) 上班登记模块描述(负责人:李丹)
上班登记子系统主要包括一个上班信息统计界面和一个上班信息添加界面。上班信息统计界面是一个表格,每一行就是一个员工的相关信息。如果某条记录不符合要求,可以将此条记录删除。
上班信息添加界面主要是员工工号、员工姓名、相应时间和相关备注信息。可以根据信息添加界面上的系统时间指示来填入相应的时间。
其流程图为:
添加记录
上班登记系统
选择
删除记录
刷新界面
退出
结束
2) 下班登记模块描述(负责人:周露)
下班登记子系统主要对所有员工的下班信息进行登记,包括员工的工号、员工的姓名、员工的下班时间和相应的备注信息,并且还要能够删除错误的员工下班时间信息的记录。下班信息添加界面主要是员工工号、员工姓名、相应时间和相关备注信息。可以根据信息添加界面上的系统时间指示填入相应的时间。
其流程图为:
添加记录
下班登记系统
选择
删除记录
刷新界面
退出
结束
3) 请假登记模块描述(负责人:李海霞)
请假登记子系统主要对所有员工的请假信息进行登记,包括员工的工号、员工的姓名、员工的请假时间和相应的备注信息,并且还要能够删除错误的员工请假时间信息的记录。
在这个下班信息添加界面中,主要是读取员工的ID、员工的姓名、员工的请假时间以及相关的描述信息,并将这些信息写入到数据库中。
其流程图为:
添加记录
请假登记系统
选择
删除记录
刷新界面
退出
结束
4) 信息统计模块描述(负责人:李海霞)
信息统计系统主要对所有员工的上班时间信息、下班时间信息、请假时间信息进行统计,包括员工的工号、员工的姓名、员工的上班时间、员工的下班时间、员工的请假时间和相应的备注信息,并且还可以删除错误的员工时间信息的记录。
信息统计子系统主要是一个信息统计界面。信息统计界面是一个表格,每一行就是一个员工的相关信息。如果觉得某些记录不符合要求,还可以将此条记录删除。在此界面,可以看到所有员工的上下班时间及其请假时间。
4.测试数据及期望结果
这个阶段的工作主要是实际运行人事管理系统应用程序,进入人事管理系统登录界面,
在前一阶段,虽然也作了性能预测,但是仅仅做了性能估计,且在估计过程中,做了许多简化和假设,忽略了许多次要因素,因而估计是粗糙的,并可能失真。在试运行阶段,必须进行实际测量和评价,测试数据尽可能覆盖现实世界的各种情况。
如果实际测试结果不符合设计目标,则需返回物理设计阶段,修改参数。有时也许还需要返回初始阶段。
期望结果:比方说,员工A3:00来上班,点击上班登记,手动添加上班记录。下班亦然。在统计模块中可以自动统计并显示出每个员工每天上下班,请假的全部记录。
三、源代码
1.主页面的设计开发
package manpowersystem;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import com.borland.jbcl.layout.*;
import javax.swing.event.*;
public class MainFrame extends JFrame {
private ImageIcon fmImage; //主框架面板代码文件声明的属性和变量
XYLayout xYLayout1 = new XYLayout();
JButton jTitleButton = new JButton();
JButton jOnWorkButton = new JButton();
JButton jOffWorkButton = new JButton();
JButton jLeaveWorkButton = new JButton();
JButton jStaticButton = new JButton();
JButton jExitButton = new JButton();
public MainFrame() {
try {
jbInit();
addWindowListener( new WindowAdapter() { //窗口事件监听
public void windowClosing( WindowEvent e ) {
dispose(); //销毁窗口 }} );}
catch ( Exception e ) {
e.printStackTrace();}}
public static void main( String[] args ) {
MainFrame mainFrame = new MainFrame();
mainFrame.validate();
mainFrame.setLocation( 200, 150 );
mainFrame.setSize( 600, 480 );
mainFrame.setVisible( true );
mainFrame.pack();}
private void jbInit() throws Exception {
fmImage=new ImageIcon
( manpowersystem.MainFrame.class.getResource("Fengmian.png" ) );
jTitleButton.setBackground( new Color( 210, 138, 177 ) );
jTitleButton.setIcon( fmImage );
jTitleButton.setFocusable( false ); //此按钮的聚焦作用失效
xYLayout1.setWidth( 540 );
xYLayout1.setHeight( 407 );
this.getContentPane().setBackground( new Color( 210, 138, 177 ) );
this.setLocale( java.util.Locale.getDefault() );
this.setResizable( true );
this.setTitle( "Mini人事管理系统" );
this.addWindowListener(new
MainFrame_this_windowAdapter( this ) );
this.getContentPane().setLayout( xYLayout1 );
jOnWorkButton.setBackground( new Color( 212, 158, 217 ) );
jOnWorkButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
jOnWorkButton.setText( "上班登记" );
jOnWorkButton.addActionListener(new MainFrame_jOnWorkButton_actionAdapter( this ) );
jOnWorkButton.addHierarchyBoundsListener( new
MainFrame_jOnWorkButton_hierarchyBoundsAdapter( this ) );
jOffWorkButton.setBackground( new Color( 212, 158, 217 ) );
jOffWorkButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
jOffWorkButton.setText( "下班登记" );
jOffWorkButton.addActionListener(new MainFrame_jOffWorkButton_actionAdapter(this));
jOffWorkButton.addAncestorListener( new
MainFrame_jOffWorkButton_ancestorAdapter( this ) );
jLeaveWorkButton.setBackground( new Color( 212, 158, 217 ) );
jLeaveWorkButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
jLeaveWorkButton.setText( "请假登记" );
jLeaveWorkButton.addActionListener(new MainFrame_jLeaveWorkButton_actionAdapter(this));
jLeaveWorkButton.addAncestorListener( new
MainFrame_jLeaveWorkButton_ancestorAdapter( this ) );
jStaticButton.setBackground( new Color( 212, 158, 217 ) );
jStaticButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
jStaticButton.setText( "统计情况" );
jStaticButton.addActionListener(new MainFrame_jStaticButton_actionAdapter(this));
jStaticButton.addAncestorListener( new
MainFrame_jStaticButton_ancestorAdapter( this ) );
jExitButton.setBackground( new Color( 212, 158, 217 ) );
jExitButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
jExitButton.setText( "退出系统" );
jExitButton.addActionListener(new MainFrame_jExitButton_actionAdapter( this ) );
jExitButton.addAncestorListener(new MainFrame_jExitButton_ancestorAdapter( this ) );
this.getContentPane().add( jTitleButton,new XYConstraints( 0, 0, 358, 409 ) );
this.getContentPane().add( jOnWorkButton,new XYConstraints( 393, 35, 115, 45 ) );
this.getContentPane().add( jOffWorkButton,
new XYConstraints( 393, 109, 115, 45 ) );
this.getContentPane().add( jLeaveWorkButton,
new XYConstraints( 393, 184, 115, 45 ) );
this.getContentPane().add( jStaticButton,
new XYConstraints( 393, 258, 115, 45 ) );
this.getContentPane().add( jExitButton,
new XYConstraints( 393, 332, 115, 45 ) );this.setResizable(false);}
void this_windowClosed( WindowEvent e ) {
System.exit( 0 );}
void jOnWorkButton_ancestorMoved( HierarchyEvent e ) {}
void jOffWorkButton_ancestorMoved( AncestorEvent e ) {}
void jLeaveWorkButton_ancestorMoved( AncestorEvent e ) {}
void jStaticButton_ancestorMoved( AncestorEvent e ) {}
void jExitButton_ancestorMoved( AncestorEvent e ) {}
void jExitButton_actionPerformed( ActionEvent e ) {System.exit( 0 );
}//退出系统按钮的事件处理
void jOnWorkButton_actionPerformed( ActionEvent e ) {
OnWorkPanel onWorkPanel = new OnWorkPanel();
onWorkPanel.setVisible(true);}//上班登记按钮的事件处理
void jOffWorkButton_actionPerformed(ActionEvent e) {
OffWorkPanel offWorkPanel = new OffWorkPanel();
offWorkPanel.setVisible(true);}//下班登记按钮的事件处理
void jLeaveWorkButton_actionPerformed(ActionEvent e) {
LeaveWorkPanel leaveWorkPanel = new LeaveWorkPanel();
leaveWorkPanel.setVisible(true);}//请假登记按钮的事件处理
void jStaticButton_actionPerformed(ActionEvent e) {
StaticPanel staticPanel = new StaticPanel();
staticPanel.setVisible(true);}//统计情况按钮的事件处理}
Class MainFrame_this_windowAdapter
extends java.awt.event.WindowAdapter {
MainFrame adaptee;
MainFrame_this_windowAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void windowClosed( WindowEvent e ) {
adaptee.this_windowClosed( e );}}
class MainFrame_jOnWorkButton_hierarchyBoundsAdapter extends java.awt.event.
HierarchyBoundsAdapter {
MainFrame adaptee;
MainFrame_jOnWorkButton_hierarchyBoundsAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void ancestorMoved( HierarchyEvent e ) {
adaptee.jOnWorkButton_ancestorMoved( e );}}
class MainFrame_jOffWorkButton_ancestorAdapter implements javax.swing.event.
AncestorListener {
MainFrame adaptee;
MainFrame_jOffWorkButton_ancestorAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void ancestorAdded( AncestorEvent e ) {}
public void ancestorRemoved( AncestorEvent e ) {}
public void ancestorMoved( AncestorEvent e ) {
adaptee.jOffWorkButton_ancestorMoved( e );}}
class MainFrame_jLeaveWorkButton_ancestorAdapter implements javax.swing.event.AncestorListener {MainFrame adaptee;
MainFrame_jLeaveWorkButton_ancestorAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void ancestorAdded( AncestorEvent e ) {}
public void ancestorRemoved( AncestorEvent e ) {}
public void ancestorMoved( AncestorEvent e ) {
adaptee.jLeaveWorkButton_ancestorMoved( e );}}
class MainFrame_jStaticButton_ancestorAdapter
implements javax.swing.event.AncestorListener {
MainFrame adaptee;
MainFrame_jStaticButton_ancestorAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void ancestorAdded( AncestorEvent e ) {}
public void ancestorRemoved( AncestorEvent e ) {}
public void ancestorMoved( AncestorEvent e ) {
adaptee.jStaticButton_ancestorMoved( e );}}
class MainFrame_jExitButton_ancestorAdapter
implements javax.swing.event.AncestorListener {
MainFrame adaptee;
MainFrame_jExitButton_ancestorAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void ancestorAdded( AncestorEvent e ) {}
public void ancestorRemoved( AncestorEvent e ) {}
public void ancestorMoved( AncestorEvent e ) {
adaptee.jExitButton_ancestorMoved( e );}}
class MainFrame_jExitButton_actionAdapter
implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jExitButton_actionAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void actionPerformed( ActionEvent e ) {
adaptee.jExitButton_actionPerformed( e );}}
class MainFrame_jOnWorkButton_actionAdapter
implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jOnWorkButton_actionAdapter( MainFrame adaptee ) {
this.adaptee = adaptee;}
public void actionPerformed( ActionEvent e ) {
adaptee.jOnWorkButton_actionPerformed( e );}}
class MainFrame_jOffWorkButton_actionAdapter
implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jOffWorkButton_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;}
public void actionPerformed(ActionEvent e) {
adaptee.jOffWorkButton_actionPerformed(e);}}
class MainFrame_jLeaveWorkButton_actionAdapter implements java.awt.event.ActionListener {MainFrame adaptee;
MainFrame_jLeaveWorkButton_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;}
public void actionPerformed(ActionEvent e) {
adaptee.jLeaveWorkButton_actionPerformed(e);}}
class MainFrame_jStaticButton_actionAdapter implements java.awt.event.ActionListener {MainFrame adaptee;
MainFrame_jStaticButton_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;}
public void actionPerformed(ActionEvent e) {
adaptee.jStaticButton_actionPerformed(e);}}
2.记录添加界面的开发设计
package manpowersystem;
import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.border.*;
import javax.swing.table.*;
public class RecordItem {
private String strEmployeeID;
private String strEmployeeName;
private String strOnWorkTime;
private String strOffWorkTime;
private String st
展开阅读全文