




免费预览已结束,剩余17页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
装订线长 春 大 学 课程设计纸目 录一 设计目的1二 功能介绍1三 程序流程1四 设计步骤11 任务解析12 功能实现33 系统测试.3五 设计总结6六 程序清单6参考文献21一设计目的 通过java程序设计的学习,使学生对软件编程能力有一定的提高。java学习是锻炼学生在进一步掌握模块化、结构化程序设计的方法的同时,培养学生运用已学知识分析问题、解决问题及编写实用程序的能力,从而巩固和加深对java编程的基础理论知识的理解,培养学生综合运用所学理论解决实际问题的能力,使学生成为具有扎实的计算机理论基础和较强动手能力的综合型、应用型人才。为专业课的深入学习和毕业设计打基础。二功能介绍 能够对单位的职工进行管理,具有插入、删除、查找、排序等功能三程序流程 四设计步骤1任务解析该职工工资管理系统的总体功能可以从两个方面来分析,一是查找功能,二是编辑功能-包括修改,删除,和添加,员工和管理员都可以通过在进入工资管理子系统后,对员工的基本,和基本工资信息进行查询,管理员通过管理权限登录后,可根据改变员工信息,对基本工资表,工资表进行修改,添加和删除操作。2.代码设计(如:职工证号和部门代号等)每一个代码都只代表唯一的实体或属性,代码必须简单明了,但必须有利于对数据进行统计、汇总、分析等操作。同时必须满足系统要求,便于记忆和使用。该工资管理子系统是针对员工信息进行管理的,主要涉及到的人员是员工。下面对员工的相关代码结构及编码规则进行说明,如下所示:3系统测试(1)普通员工进入后的界面,只有查询功能,其余有添加修改删除操作的菜单为灰色,不能操作。(2)这是管理员进入后的界面,全部可以操作,菜单显示可以全部操作(3)工资查询的功能截图(4)这是工资设置的功能截图:(5)添加职工截图(6)五设计总结 本次课程设计即将结束,总的来说,经过这门课程,收获是非常大的。从理论到实践,是有很大的不同的,在实际设计这个职工工资管理系统的过程中,需要考虑很多的问题,学到了很多很多的东西,不仅巩固了以前所学的东西,也拓展了视野。也然我明白,光掌握理论是远远不够的,只有将理论和实践相结合,才有好的效果。也发现了自己对之前学过的知识理解的不够深刻,掌握得不够牢固,有待加强。以后会继续努力的。六程序清单import java.awt.*;class denglu extends frame public label name=new label(用户名); public label pass=new label(密码); public textfield txtname=new textfield(); public textfield txtpass=new textfield(); public button btok=new button(登陆); public button btexit=new button(取消); public condb conu=new condb(); private string sql=null; private resultset rs=null; private image img; public denglu() img=gettoolkit().getimage(getclass().getresource(/ww.png); settitle(欢迎使用工资管理系统); setlayout(null); setresizable(false); setsize(500,350); dimension scr=toolkit.getdefaulttoolkit().getscreensize(); dimension frm=this.getsize(); setlocation(scr.width-frm.width)/2,(scr.height-frm.height)/2-18); txtpass.setechochar(*); txtname.setbounds(120,260,120,27); txtpass.setbounds(120,300,120,27); btok.setbounds(340,260,100,28); btexit.setbounds(340,300,100,28); add(name); add(txtname); add(pass); add(txtpass); add(btok); add(btexit); setvisible(true); btexit.addactionlistener(new actionlistener() public void actionperformed(actionevent e) dispose(); system.exit(0); ); btok.addactionlistener(new actionlistener() public void actionperformed(actionevent e) sql=select * from 数据库用户 where 用户名=+txtname.gettext()+ and 密码=+txtpass.gettext()+; try rs=conu.getrs(conu.con,sql); if(rs.next() ) mainff mf=new mainff(); if(rs.getint(4)!=0) mf.getinitsys().setenabled(false); mf.getuser().setenabled(false); mf.getgong2().setenabled(false); dispose(); mf.show(); else joptionpane jop=new joptionpane(); jop.showmessagedialog(null,用户名或密码错误,信息提示!,-1); catch(exception ee) ); addwindowlistener( new windowadapter() public void windowclosing(windowevent e) dispose(); system.exit(0); ); public void paint(graphics g) g.setclip(new rectangle2d.float(0,0,500,350); g.drawimage(img,0,0,this); public class dl public static void main(string args) denglu deng=new denglu(); 查询代码:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;class whole extends jdialog implements actionlistener private condb con = null;private resultset rs = null;private string sql = null;private jlabel bmhao = new jlabel(员工编号:);private jlabel bmname = new jlabel(姓名:);private jtextfield wholetx1 = new jtextfield();private jtextfield wholetx2 = new jtextfield();private jbutton ok = new jbutton(查询);private joptionpane jop = new joptionpane();private jtable ta = null;private jscrollpane taooo = new jscrollpane();private string col = 员工编号, 姓名, 旷工, 迟到, 底薪, 加班, 绩效奖励,出勤金额, 实发工资 ;private object rowline = new string4510;private boolean tf = false;public whole() con=new condb();settitle(全部信息);setsize(600, 300);getcontentpane().setbackground(color.light_gray);getcontentpane().setlayout(null);dimension scr = toolkit.getdefaulttoolkit().getscreensize();dimension frm = getsize();setlocation(int) (scr.getwidth() - frm.getwidth() / 2, 150);bmhao.setbounds(50, 20, 80, 30);wholetx1.setbounds(140, 20, 50, 20);bmname.setbounds(210, 20, 80, 30);wholetx2.setbounds(300, 20, 50, 20);ok.setbounds(400, 20, 100, 30);getcontentpane().add(bmhao);getcontentpane().add(wholetx1);getcontentpane().add(bmname);getcontentpane().add(wholetx2);getcontentpane().add(ok);ok.addactionlistener(this);setvisible(true);public void inittable(object row, string col) if (wholetx1.gettext().equals()& wholetx2.gettext().equals() sql = select * from 员工数据表,出勤表,员工绩效,最终工资 where + 员工数据表.员工编号=最终工资.员工编号 and 最终工资.员工编号=出勤表.员工编号 and 出勤表.员工编号=员工绩效.员工编号; else if (wholetx1.gettext().equals() = false) sql = select * from 员工数据表,出勤表,员工绩效,最终工资 where + 员工数据表.员工编号=最终工资.员工编号 and 最终工资.员工编号=出勤表.员工编号 and 出勤表.员工编号=员工绩效.员工编号 and 员工数据表.员工编号= +wholetx1.gettext() + ;system.out.println(sql);else if (wholetx2.gettext().equals() = false) sql = select * from 员工数据表,出勤表,员工绩效,最终工资 where + 员工数据表.员工编号=最终工资.员工编号 and 最终工资.员工编号=出勤表.员工编号 and 出勤表.员工编号=员工绩效.员工编号 and 员工数据表.员工姓名=+wholetx2.gettext() + ;system.out.println(sql);connection conn=con.getconn();statement sta=null;try sta = conn.createstatement();resultset rs=sta.executequery(sql);int cnt = 0;while (rs.next()rowlinecnt0 = rs.getstring(员工编号);rowlinecnt1 = rs.getstring(员工姓名);rowlinecnt2 = rs.getstring(矿工次数);rowlinecnt3 = rs.getstring(迟到次数);rowlinecnt4 = rs.getstring(底薪);rowlinecnt5 = rs.getstring(加班次数);rowlinecnt6 = rs.getstring(绩效奖励);rowlinecnt7 = rs.getstring(出勤金额);rowlinecnt8 = rs.getstring(实发工资);cnt+;ta = new jtable(rowline, col);ta.setsize(580, 190);taooo = new jscrollpane(ta);taooo.setlocation(20, 50);taooo.setsize(560, 190);getcontentpane().add(taooo);this.repaint(0, 0, 500, 300);tf = false; catch (sqlexception e) / todo 自动生成 catch 块e.printstacktrace();public void actionperformed(actionevent ae) /* int cnt=1; while(cnt11) rowlinecnt0=1; rowlinecnt1=2; rowlinecnt2=3; rowlinecnt3=4; rowlinecnt4=5; rowlinecnt5=6; rowlinecnt6=7; rowlinecnt7=8; rowlinecnt8=9; rowlinecnt9=10; cnt+; ta=new jtable(rowline,col); ta.setsize(580,190); taooo=new jscrollpane(ta); taooo.setlocation(20,50); taooo.setsize(560,190); getcontentpane().add(taooo); this.repaint(0,0,500,300); con.dbclose(con.con,rs); con=null; tf=false;/删除*/if (tf = false) for (int i = 0; i rowline.length; i+)for (int j = 0; j 10; j+)rowlineij = null;inittable(rowline, col);wholetx1.settext();wholetx2.settext();import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.*;class bm extends frame implements actionlistener,itemlistener private condb conx=null; private resultset rs=null; private string sql=null; long id; private label num=new label(员工编号); private label jb=new label(姓名); private label fj=new label(底薪); private label in=new label(绩效奖励); private label chu=new label(出勤金额); private label sf=new label(实发工资); private textfield numtx=new textfield(); private textfield jbtx=new textfield(); private textfield fjtx=new textfield(); private textfield chutx=new textfield(); private textfield sftx=new textfield(); private textfield intx=new textfield(); private choice numcho=new choice(); private button add=new button(增加); private button exit=new button(退出); private button set=new button(设置); public bm() settitle(添加工资); setsize(400,300); setbackground(color.light_gray); this.setlocationrelativeto(this.getparent(); this.setresizable(false); setlayout(null); num.setbounds(80,50,50,20); jb.setbounds(80,70,50,20); fj.setbounds(80,90,50,20); in.setbounds(80,110,50,20); chu.setbounds(80,130,50,20); sf.setbounds(80,150,50,20); numtx.setbounds(160,50,100,20); jbtx.setbounds(160,70,100,20); fjtx.setbounds(160,90,100,20); intx.setbounds(160,110,100,20); chutx.setbounds(160,130,100,20); sftx.setbounds(160,150,100,20); numcho.setbounds(160,170,100,20); add.setbounds(60,220,50,20); set.setbounds(180,220,50,20); exit.setbounds(300,220,50,20); add(add); add(set); add(exit); add(num); add(jb); add(fj); add(in); add(chu); add(sf); add(numtx); add(jbtx); add(fjtx); add(intx); add(chutx); add(sftx); add(numcho);/lb add.addactionlistener(this); set.addactionlistener(this); exit.addactionlistener(this); numcho.additemlistener(this); initnumcho(); setvisible(true); addwindowlistener(new windowadapter() public void windowclosing(windowevent e) dispose(); ); public void itemstatechanged(itemevent i) numtx.settext(numcho.getselecteditem(); string str=numtx.gettext(); conx=new condb(); sql=select * from 最终工资 where 员工编号=+str;/ system.out.println(sql); try rs=conx.getrs(conx.con,sql); rs.next(); jbtx.settext(rs.getstring(3); fjtx.settext(rs.getstring(4); intx.settext(rs.getstring(7); chutx.settext(rs.getstring(6); sftx.settext(rs.getstring(9); conx.dbclose(conx.con,rs); conx=null; rs=null; catch(exception eo) public void initnumcho() conx=new condb(); sql=select * from 最终工资 ; numcho.removeall(); try rs=conx.getrs(conx.con,sql); while(rs.next() numcho.add(rs.getstring(员工编号); conx.dbclose(conx.con,rs); conx=null; rs=null; catch(exception eo) public void actionperformed(actionevent e) conx=new condb(); if(e.getactioncommand().equals(退出) this.dispose(); if(e.getactioncommand().equals(设置) try sql=update 最终工资 + set 姓名=+ jbtx.gettext()+,底薪=+fjtx.gettext()+,绩效奖励=+intx.gettext()+,出勤金额=+chutx.gettext()+,实发工资=+sftx.gettext()+ where 员工编号=+numtx.gettext(); / system.out.println(sql); conx.moddb(conx.con, sql); try /system.out.println(sql); conx.con.close(); catch(exception ue)system.out.println(+ue); joptionpane jop=new joptionpane(); jop.showmessagedialog(null, 修改成功!,修改成功,-1); conx=null; rs=null; catch(exception et) joptionpane jop=new joptionpane(); jop.showconfirmdialog(null,修改失败!,警告!,-1); conx=null; rs=null; system.out.println(+et); if(e.getactio
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- LED户外屏施工方案
- 劳务分包合同年度分包
- 现代服务业运营与管理案例分析题集
- 路面铺装施工方案
- 工程木工承包合同
- 水生植物的施工方案
- 露天煤矿施工方案
- TCSHB 0023-2024 中型可编程控制柜设计规范
- 导流明渠开挖专项施工方案
- 地暖排管现场施工方案
- 六年级语文上册14文言文二则《两小儿辩日》公开课一等奖创新教学设计
- 专题01相交线与平行线(原卷版+解析)
- 工程造价预算书
- 便民驿站运营方案
- 终止授权代理协议书模板
- 2024年保密教育培训知识考试题库(含答案)
- TGDNAS 043-2024 成人静脉中等长度导管置管技术
- CNG生产运营管理规章制度汇编提纲
- 2024至2030年中国羽毛球行业发展现状及投资趋势研究报告
- 医疗垃圾的分类及处理-95
- 智慧家庭工程师岗位技能培训装维练习卷附有答案
评论
0/150
提交评论