职工考勤管理系统.doc 60页

  • 942.00 KB
  • 2022-05-17 13:40:17 发布

职工考勤管理系统.doc

  • 60页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
..设计报告职工考勤管理系统[ZHIGONGKAOQINGUANLIXITONG]2012.w ..前言20世纪90年代,随着我国市场经济的快速发展,职工考勤管理系统在企业的日常管理中发挥着越来越重要的作用。职工考勤管理系统可以进行员工信息管理、出勤管理和密码管理等,方便处理企业部员工的相关考勤信息。此外Internet的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。职工考勤系统是在适应市场需求的客观前提下,为了满足中小型公司或事业单位管理自己的员工而开发的。.w ..目录第一章开发背景1第二章需求分析2第三章概念结构设计3一、局部E-R图设计3(一)、确定局部围3(二)、确定实体与属性3(三)概念模型表示4二、合并成总体E-R图5第四章逻辑结构设计6一、E-R图转换为关系模型6关系模式的规化6第五章数据库实施与维护8一、定义数据库结构8二、组织数据入库9三、数据库试运行10第六章JAVA11一、JAVA代码:12(一)、登录代码12.w ..(二)、管理员主界面代码15二、JAVA运行29(一)、用户登录界面29(二)、主界面29(三)、基本功能30第七章参考文献34.w ..第一章开发背景我们都知道,考勤管理系统是任何一个营业单位不可缺少的部分,它的容对于单位的管理者和部员工来说都至关重要,所以考勤管理系统应该能够为用户提供充足的信息和快捷的安全查询,及实时管理手段。但在过去,人们一直在使用传统的人工的方式来进行考勤管理,这种落后的方式存在着许多缺点,如:效率低,性差,另外时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难。而使用计算机对员工出勤进行管理,具有手工作业所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、性好、寿命长、成本低等。这些优点能够极提高管理的效率。此次开发了一种基于SQLServer和Java下的考勤管理系统。其不但具有实际考勤管理系统应有的档案管理,信息安全认证等功能,且拥有用户使用更简单、界面更直观等优点。考勤管理系统在我国任何一个单位是必需的,随着我国的发展,考勤管理系统的作用会得到更加充分的体现。。.w ..第一章需求分析职工考勤管理系统,可用于企业等机构的职工考勤情况管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用Java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成职工基本信息的添加,查询,修改,删除的操作以及成绩的录入,修改,删除等。用ODBC驱动实现前台Java与后台SQL数据库的连接。Java语言跨平台性强,可以在windows,Linux,等系统下使用,方便简单,安全性好。SQLServer2005数据库高效安全,两者结合可相互利用各自的优势l用户登陆界面。该界面可以选择使用者的身份,“管理员,职工”。不同的身份有不同的操作界面和功能权限。账号和密码输入正确即可登录。l职工管理界面。提供了职工基本信息的查询,打卡、出差、加班、请假的查询以及相应权限的添加、删除、修改操作。l管理员管理界面。提供了对所有职工信息的查询、添加、修改、删除;职工考勤信息的录入、修改、删除、查询,修改密码等功能。管理员拥有最高的权限,允许对职工所有信息进行查询和修改。.w ..第一章概念结构设计一、局部E-R图设计(一)、确定局部围职工考勤管理系统分为七部分:l管理员登录l职工登录l职工基本信息l职工出勤信息l职工加班信息l职工出差信息l职工请假信息(二)、确定实体与属性两个准则:(1)属性不能在具有需要描述的性质,即属性必须是不可分的数据项,不能再由另一些属性组成.(2)属性不能与其他实体具有联系,联系只发生在实体之间根据两个准则进行分析:.w ..在职工考勤管理系统中,职工具有属性(职工编号、职工、性别、年龄、职称),其属性又是不可分的,因此将职工作为实体。出勤、加班、出差、请假都具有属性,其属性又是不可分的,因此将他们作为实体。管理员、用户登录也作为实体。表1-1实体属性管理员登录表管理员ID,密码用户登录表表职工编号,密码职工信息表职工编号,职工,性别,年龄,职称职工出勤信息表,编号,上班打卡时间,下班打卡时间,缺勤记录职工加班信息表,编号,加班开始时间,加班结束时间,统计加班天数职工出差信息表,编号,出差开始时间,出差结束时间,统计出差天数职工请假信息表请假开始时间,请假结束时间,统计请假天数(三)概念模型表示实体型:用矩形表示,矩形写实体名。属性:用椭圆形表示,并用边将其与相应的实体型连接起来。联系:用菱形表示,菱形框写明联系名,并用边与有关实体型连接起来,且在边旁标上联系的类型。.w ..管理员信息表ER图用户信息表ER图职工信息表ER图职工出勤信息表ER图职工加班信息表ER图.w ..职工出差信息表ER图请假信息表ER图二、合并成总体E-R图.w ..职工考勤管理系统第一章逻辑结构设计一、E-R图转换为关系模型关系模式的规化步骤非规关系是每个属性不能再分1NF消去非主属性対主码的部分依赖2NF消去非主属性対主码的传递依赖3NF管理员登录表(admin)列名数据类型约束是否允许为空默认值说明.w ..adminchar(6)主键管理员passwordchar(12)NOTNULL密码员工登录表(admin)列名数据类型约束是否允许为空默认值说明w_idchar(6)主键员工Password_wchar(12)NOTNULL密码职工基本信息表(worker)列名数据类型约束是否允许为空默认值说明w_idchar(4)主键NOTNULL职工编号w_namechar(6)NOTNULL职工w_sexchar(6)NOTNULL性别w_ageintNOTNULL年龄w_drgeechar(4)NOTNULL职称出勤记录信息表(work_note)列名数据类型约束是否允许为空默认值说明.w ..w_idchar(4)主键NOTNULL职工编号s_timdatetime上班打卡时间x_timdatetime下班打卡时间q_notInt0缺勤记录(1或0)出差信息(out_note)列名数据类型约束是否允许为空默认值说明w_idchar(4)主键职工编号k_timdatetime出差起始时间j_timdatetime出差结束时间c_daysInt统计总天数请假记录信息(off_note)列名数据类型约束是否允许为空默认值说明w_idchar(4)主键职工编号off_timdatetime请假开始时间off_e_timdatetime请假结束时间off_daysint统计请假天数.w ..加班信息(over_note)列名数据类型约束是否允许为空默认值说明w_idchar(4)主键NOTNULL职工编号jia_timdatetime加班开始时间jia_e_timdatetime加班结束时间jia_daysint统计加班时间第一章数据库实施与维护一、定义数据库结构分析数据库各个表的结构,在SQL中实现的创建SQL语句。--首先创建职工考勤数据库CREATEDATABASEzgkqON(name=zg_dat,filename="d:zg_dat.mdf",size=5,maxsize=20,.w ..Filegrowth=1)LOGON(name=zg_log,filename="e:zg_dat.ldf",size=5,maxsize=20,Filegrowth=1)--调到数据库zgkgUSEzgkqGO--管理员登录表CREATETABLElogin_admin(adminchar(6)PRIMARYKEY,passwordchar(12)NOTNULL)--员工登录表CREATETABLElogin_w(w_idchar(6)PRIMARYKEY,password_wchar(12)NOTNULL).w ..--创建职工信息表workerCREATETABLEworker(w_idchar(4)PRIMARYKEY,w_namechar(6)NOTNULL,w_sexchar(6)check(w_sex="男"orw_sex="女")NOTNULL,w_ageintNOTNULL,w_drgeechar(4)NOTNULL)--创建出勤记录信息work_noteCREATETABLEwork_note(w_idchar(4)PRIMARYKEY,s_timdatetime,x_timdatetime,q_notintCHECK(q_not=0ORq_not=1)DEFAULT0)--创建出差信息out_noteCREATETABLEout_note(w_idchar(4)PRIMARYKEY,k_timdatetime,j_timdatetime,c_daysint).w ..--创建请假信息off_noteCREATETABLEoff_note(w_idchar(4)PRIMARYKEY,off_timdatetime,off_e_timdatetime,off_daysint)--创建加班信息over_noteCREATETABLEover_note(w_idchar(4)PRIMARYKEY,jia_timdatetime,jia_e_timdatetime,jia_daysint)二、组织数据入库INSERTINTOlogin_adminVALUES("admin","123456")--INSERTINTOlogin_wVALUES("1001","100001")INSERTINTOlogin_wVALUES("1002","100002")INSERTINTOlogin_wVALUES("1003","100003").w ..INSERTINTOlogin_wVALUES("1004","100004")INSERTINTOlogin_wVALUES("1005","100005")--INSERTINTOwork_noteVALUES("1001","2010-5-2108:00:00","2010-5-2118:30:00",0)INSERTINTOwork_noteVALUES("1002","2010-5-2108:00:00","2010-5-2118:30:00",0)INSERTINTOwork_noteVALUES("1003","2010-5-2108:00:00","2010-5-2118:30:00",0)INSERTINTOwork_noteVALUES("1004","2010-5-2108:00:00","2010-5-2118:30:00",0)INSERTINTOwork_noteVALUES("1005","2010-5-2108:00:00","2010-5-2118:30:00",0)----INSERTINTOworkerVALUES("1001","芳","女","28","员工")INSERTINTOworkerVALUES("1002","王明","男","30","员工")INSERTINTOworkerVALUES("1003","江月","女","31","员工")INSERTINTOworkerVALUES("1004","芳","男","27","员工")INSERTINTOworkerVALUES("1005","芳","男","24","员工")--INSERTINTOout_noteVALUES("1002","2010-3-21","2010-4-21",31).w ..--INSERTINTOoff_noteVALUES("1003","2010-3-21","2010-4-21",31)--INSERTINTOover_noteVALUES("1004","2010-4-21","2010-4-21",1)三、数据库试运行1--查询所有职工信息SELECT*FROMworker2--查询所有出勤记录信息SELECT*FROMwork_note3--查询所有出差信息SELECT*FROMout_note4--查询所有请假信息SELECT*FROMoff_note.w ..5--查询所有加班信息SELECT*FROMover_note6--查询编号为1001的职工信息SELECT*FROMworkerWHEREw_id="1001"第一章JAVA一、JAVA代码:(一)、登录代码packageZGKQ;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;.w ..importjava.sql.*;publicclassLoginextendsJFrameimplementsActionListener{JFramejf;Containercon=getContentPane();JTextFieldtfName;JPasswordFieldps;JLabellabel;JLabellbName;JLabellbps;JLabelshenfen;JButtonbt1;JButtonbt2;privateStringpsword;JComboBoxbox;JPaneljp1;publicLogin(){jf=this;setTitle("用户登录界面");con.setBackground(Color.black);Fontf=newFont("新宋体",Font.PLAIN,22);/////////////////////////////////////////////////((JPanel)this.getContentPane()).setOpaque(false);.w ..ImageIconimg=newImageIcon("4.jpg");//添加图片JLabelbackground=newJLabel(img);this.getLayeredPane().add(background,newInteger(Integer.MIN_VALUE));background.setBounds(0,0,img.getIconWidth(),img.getIconHeight());jp1=newJPanel();////////////////////////////////////////////////tfName=newJTextField();ps=newJPasswordField();label=newJLabel("职工考勤管理系统");lbName=newJLabel("用户名:");lbps=newJLabel("密码:");bt1=newJButton("登录");bt2=newJButton("清空");///////////////////////////////////////////////con.setLayout(null);jp1=newJPanel();con.add(jp1);con.add(label);label.setFont(f);label.setBounds(220,100,300,40);con.add(lbName);con.add(tfName);.w ..lbName.setBounds(250,250,80,20);tfName.setBounds(330,250,100,20);shenfen=newJLabel("身份:");shenfen.setBounds(250,310,80,20);con.add(shenfen);box=newJComboBox();box.addItem("管理员");box.addItem("员工");con.add(box);box.setBounds(330,310,80,20);con.add(lbps);con.add(ps);lbps.setBounds(250,280,80,20);ps.setBounds(330,280,100,20);con.add(bt1);con.add(bt2);bt1.setBounds(260,340,60,20);bt1.setBackground(Color.gray);bt2.setBounds(350,340,60,20);bt2.setBackground(Color.gray);bt1.addActionListener(this);.w ..bt2.addActionListener(this);setBounds(310,150,700,500);setVisible(true);}publicvoidactionPerformed(ActionEvente){Databasedb=newDatabase();db.OpenConn();Stringpass=newString(ps.getPassword()).trim();Stringname=tfName.getText().trim();Objectsource=e.getSource();if(box.getSelectedItem().equals("管理员")){if(source==bt1){try{Stringsql="select*fromlogin_adminwhereadmin=""+name+""andpassword=""+pass+""";ResultSetres=db.executeQuery(sql);while(res.next()){psword=res.getString(2).trim();.w ..}if(name.equals("")){newJOptionPane().showMessageDialog(null,"用户名不能为空!");}elseif(pass.equals("")){newJOptionPane().showMessageDialog(null,"密码不能为空!");}elseif(pass.equals(psword)){this.dispose();newmain_1().setVisible(true);}else{newJOptionPane().showMessageDialog(null,"密码错误!");}}catch(SQLExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();}}}if((box.getSelectedItem().equals("员工"))){if(source==bt1){try{.w ..Stringsql="select*fromlogin_wwherew_id=""+name+""andpassword_w=""+pass+""";ResultSetres=db.executeQuery(sql);while(res.next()){psword=res.getString(2).trim();}Stringnum=tfName.getText().trim();if(name.equals("")){newJOptionPane().showMessageDialog(null,"用户名不能为空!");}elseif(pass.equals("")){newJOptionPane().showMessageDialog(null,"密码不能为空!");}elseif(pass.equals(psword)){this.dispose();newmain_2().setVisible(true);}else{newJOptionPane().showMessageDialog(null,"密码错误!");}}catch(SQLExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();.w ..}}}if(e.getSource()==bt2){tfName.setText("");ps.setText("");}}publicstaticvoidmain(Stringargs[]){newLogin();}}(二)、管理员主界面代码packageZGKQ;importjava.awt.*;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;.w ..importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjavax.swing.*;importZGKQ_add.*;importZGKQ_query.*;importZGKQ_delete.*;importZGKQ_update.*;publicclassmain_1extendsJFrameimplementsActionListener{Containercon;JTabletable1=newJTable(200,5);//JScrollPanescrollPane=newJScrollPane(table1);JPanelpn=newJPanel();//创建一个面板并实例化.w ..JPanelp1=newJPanel();JPanelp2=newJPanel();JPanelp3=newJPanel();//JPanelp4=newJPanel();Labellb1=newLabel("欢迎使用员工考勤管理系统!有不明白请看帮助!");JLabellb2=newJLabel(newImageIcon("2.jpg"));//实例化菜单栏JMenuBarmb=newJMenuBar();//实例化菜单开始JMenusystemM;JMenujibenM;.w ..JMenuguanliM;JMenuhelpM;JMenuaboutM;//文件的菜单项JMenuItempsUpdate;JMenuItemlogin;//JMenuItemaddDelete;JMenuItemexit;//基本信息的菜单项JMenuItemworker;JMenuItemwork_note;JMenuItemout_note;.w ..JMenuItemoff_note;JMenuItemover_note;//信息管理JMenukqquery;JMenuItemjibenquery;JMenuItemdakaquery;JMenuItemjiabanquery;JMenuItemchuchaiquery;JMenuItemqingjiaquery;JMenukqadd;JMenuItemjibenadd;.w ..JMenuItemdakaadd;JMenuItemjiabanadd;JMenuItemchuchaiadd;JMenuItemqingjiaadd;JMenukqupdate;JMenuItemjibenupdate;JMenuItemdakaupdate;JMenuItemjiabanupdate;JMenuItemchuchaiupdate;JMenuItemqingjiaupdate;JMenukqdelete;.w ..JMenuItemjibendelete;JMenuItemdakadelete;JMenuItemjiabandelete;JMenuItemchuchaidelete;JMenuItemqingjiadelete;JMenuItemhelpcon;JMenuItemaboutcon;JButtonb1,b2,b3,b4,b5,b6,b7,b8,b9;Fontf=newFont("宋体",Font.PLAIN,20);//设置一种字体main_1(){setTitle("员工考勤管理系统");//设置窗体标题con=getContentPane();con.setLayout(newBorderLayout());//创建一个布局.w ..con.add(pn,BorderLayout.CENTER);//实例虚拟桌面的布局//////////////////////////////////////////////////////////////////////////////((JPanel)this.getContentPane()).setOpaque(false);ImageIconimg=newImageIcon("3.jpg");//添加图片JLabelbackground=newJLabel(img);this.getLayeredPane().add(background,newInteger(Integer.MIN_VALUE));background.setBounds(0,0,img.getIconWidth(),img.getIconHeight());/////////////////////////////////////////////////////////////////////////////////实例化菜单栏mb=newJMenuBar();//实例化菜单开始systemM=newJMenu("菜单");jibenM=newJMenu("基本信息");guanliM=newJMenu("信息管理");helpM=newJMenu("帮助");aboutM=newJMenu("关于");//文件的菜单项psUpdate=newJMenuItem("密码修改");.w ..login=newJMenuItem("重新登陆");login.setBackground(Color.pink);//addDelete=newJMenuItem("添加/删除用户");exit=newJMenuItem("退出系统");psUpdate.addActionListener(this);login.addActionListener(this);//addDelete.addActionListener(this);exit.addActionListener(this);//添加菜单项systemM.add(psUpdate);systemM.add(login);//systemM.add(addDelete);systemM.add(exit);//基本信息的菜单项worker=newJMenuItem("职工信息");work_note=newJMenuItem("出勤信息");out_note=newJMenuItem("出差信息");off_note=newJMenuItem("请假信息");over_note=newJMenuItem("加班信息");//注册监听器worker.addActionListener(this);.w ..work_note.addActionListener(this);out_note.addActionListener(this);off_note.addActionListener(this);over_note.addActionListener(this);//添加jibenM.add(worker);jibenM.add(work_note);jibenM.add(out_note);jibenM.add(off_note);jibenM.add(over_note);//信息查询的菜单项kqquery=newJMenu("信息查询");jibenquery=newJMenuItem("基本信息查询");dakaquery=newJMenuItem("打卡信息查询");jiabanquery=newJMenuItem("加班信息查询");chuchaiquery=newJMenuItem("出差信息查询");qingjiaquery=newJMenuItem("请假信息查询");jibenquery.addActionListener(this);dakaquery.addActionListener(this);.w ..jiabanquery.addActionListener(this);chuchaiquery.addActionListener(this);qingjiaquery.addActionListener(this);kqquery.add(jibenquery);kqquery.add(dakaquery);kqquery.add(jiabanquery);kqquery.add(chuchaiquery);kqquery.add(qingjiaquery);kqadd=newJMenu("信息添加");jibenadd=newJMenuItem("基本信息添加");dakaadd=newJMenuItem("打卡信息添加");jiabanadd=newJMenuItem("加班信息添加");chuchaiadd=newJMenuItem("出差信息添加");qingjiaadd=newJMenuItem("请假信息添加");jibenadd.addActionListener(this);dakaadd.addActionListener(this);jiabanadd.addActionListener(this);chuchaiadd.addActionListener(this);qingjiaadd.addActionListener(this);.w ..kqadd.add(jibenadd);kqadd.add(dakaadd);kqadd.add(jiabanadd);kqadd.add(chuchaiadd);kqadd.add(qingjiaadd);kqupdate=newJMenu("信息修改");jibenupdate=newJMenuItem("基本信息修改");dakaupdate=newJMenuItem("打卡信息修改");jiabanupdate=newJMenuItem("加班信息修改");chuchaiupdate=newJMenuItem("出差信息修改");qingjiaupdate=newJMenuItem("请假信息修改");jibenupdate.addActionListener(this);dakaupdate.addActionListener(this);jiabanupdate.addActionListener(this);chuchaiupdate.addActionListener(this);qingjiaupdate.addActionListener(this);kqupdate.add(jibenupdate);kqupdate.add(dakaupdate);.w ..kqupdate.add(jiabanupdate);kqupdate.add(chuchaiupdate);kqupdate.add(qingjiaupdate);kqdelete=newJMenu("信息删除");jibendelete=newJMenuItem("基本信息删除");dakadelete=newJMenuItem("打卡信息删除");jiabandelete=newJMenuItem("加班信息删除");chuchaidelete=newJMenuItem("出差信息删除");qingjiadelete=newJMenuItem("请假信息删除");jibendelete.addActionListener(this);dakadelete.addActionListener(this);jiabandelete.addActionListener(this);chuchaidelete.addActionListener(this);qingjiadelete.addActionListener(this);kqdelete.add(jibendelete);kqdelete.add(dakadelete);kqdelete.add(jiabandelete);kqdelete.add(chuchaidelete);kqdelete.add(qingjiadelete);.w ..guanliM.add(kqquery);guanliM.add(kqadd);guanliM.add(kqupdate);guanliM.add(kqdelete);helpcon=newJMenuItem("帮助容");helpcon.addActionListener(this);helpM.add(helpcon);aboutcon=newJMenuItem("关于容");aboutcon.addActionListener(this);aboutM.add(aboutcon);//添加菜单mb.add(systemM);mb.add(jibenM);mb.add(guanliM);mb.add(helpM);mb.add(aboutM);this.setJMenuBar(mb);//Iconi1=newImageIcon("image/1.jpg");.w ..//Iconi2=newImageIcon("image/2.jpg");//Iconi3=newImageIcon("image/3.jpg");//Iconi4=newImageIcon("image/4.jpg");//Iconi5=newImageIcon("image/5.jpg");b1=newJButton("职工信息");b1.setBackground(Color.gray);b1.setFont(f);b2=newJButton("出勤信息");b2.setBackground(Color.gray);b2.setFont(f);b3=newJButton("出差信息");b3.setBackground(Color.gray);b3.setFont(f);b4=newJButton("请假信息");b4.setBackground(Color.gray);b4.setFont(f);b5=newJButton("加班信息");b5.setBackground(Color.gray);b5.setFont(f);b1.addActionListener(this);.w ..b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);//b1.setBounds(0,0,40,100);p1.setBounds(0,0,100,50);p1.setLayout(newBoxLayout(p1,BoxLayout.Y_AXIS));p1.add(Box.createRigidArea(newDimension(10,100)));p1.add(b1);p1.add(Box.createRigidArea(newDimension(20,5)));p1.add(b2);p1.add(Box.createRigidArea(newDimension(20,5)));p1.add(b3);p1.add(Box.createRigidArea(newDimension(20,5)));p1.add(b4);p1.add(Box.createRigidArea(newDimension(20,5)));p1.add(b5);p1.add(Box.createRigidArea(newDimension(20,20)));con.add(p1,BorderLayout.WEST);p1.setOpaque(false);.w ..//Iconi6=newImageIcon("image/6.jpg");//Iconi7=newImageIcon("image/7.jpg");//Iconi8=newImageIcon("image/8.jpg");//Iconi9=newImageIcon("image/9.jpg");b6=newJButton("查询");//b6.setIcon(i6);b7=newJButton("添加");//b7.setIcon(i7);b8=newJButton("修改");//b8.setIcon(i8);b9=newJButton("删除");//b9.setIcon(i9);b6.setBackground(Color.white);b7.setBackground(Color.white);b8.setBackground(Color.white);b9.setBackground(Color.white);b6.addActionListener(this);b7.addActionListener(this);b8.addActionListener(this);b9.addActionListener(this);////////////////////////////////////////////////////////////////////////////////((JPanel)this.getContentPane()).setOpaque(false);//ImageIconimg=newImageIcon("1.jpg");//添加图片.w ..//JLabelbackground=newJLabel(img);//this.getLayeredPane().add(background,new//Integer(Integer.MIN_VALUE));//background.setBounds(0,0,img.getIconWidth(),img.getIconHeight());//Containerc=this.getContentPane();//获取JFrame面板/////////////////////////////////////////////////////////////////////////////p3.setOpaque(false);p3.add(b6);p3.add(Box.createRigidArea(newDimension(20,0)));p3.add(b7);p3.add(Box.createRigidArea(newDimension(20,0)));p3.add(b8);p3.add(Box.createRigidArea(newDimension(20,0)));p3.add(b9);con.add(p3,BorderLayout.SOUTH);///////////////////////////////////////////////p2.setBackground(Color.pink);//JTabletable=newJTable(4,4);//p2.add(table);.w ..//con.add(p2);//con.add(scrollPane);lb2.setBounds(0,0,p2.getWidth(),p2.getHeight());p2.add(lb2);p2.add(lb1);con.add(p2);p1.setBackground(Color.red);p3.setBackground(Color.green);setBounds(310,150,700,500);//setBounds(0,0,1440,900);setVisible(true);//System.out.println(b1.getWidth());//System.out.println(b1.getHeight());}publicvoidactionPerformed(ActionEvente){if(e.getSource()==psUpdate){passUpdate1psup1=newpassUpdate1();psup1.setVisible(true);}if(e.getSource()==login){Loginlg=newLogin();.w ..lg.setVisible(true);}//if(e.getSource()==addDelete){//AddDeleteUseraduser=newAddDeleteUser();//aduser.setVisible(true);//}if(e.getSource()==exit){setVisible(false);}////////////////////////////////////////////////////if(e.getSource()==worker){workerswk=newworkers();}if(e.getSource()==work_note){work_notewknt=newwork_note();}if(e.getSource()==out_note){out_noteotnt=newout_note();}if(e.getSource()==off_note){off_noteofnt=newoff_note();}.w ..if(e.getSource()==over_note){over_noteovnt=newover_note();}/////////////////////////////////////////////if(e.getSource()==jibenquery){jibenqueryjbqy=newjibenquery();jbqy.setBounds(1010,150,250,500);jbqy.setVisible(true);}if(e.getSource()==dakaquery){dakaquerydkqy=newdakaquery();dkqy.setBounds(1010,150,250,500);dkqy.setVisible(true);}if(e.getSource()==jiabanquery){jiabanqueryjbaqy=newjiabanquery();jbaqy.setBounds(1010,150,250,500);jbaqy.setVisible(true);}if(e.getSource()==chuchaiquery){.w ..chuchaiqueryccqy=newchuchaiquery();ccqy.setBounds(1010,150,250,500);ccqy.setVisible(true);}if(e.getSource()==qingjiaquery){qingjiaqueryqjqy=newqingjiaquery();qjqy.setBounds(1010,150,250,500);qjqy.setVisible(true);}/////////////////////////////////////////////if(e.getSource()==jibenadd){jibenaddjbadd=newjibenadd();jbadd.setBounds(1010,150,250,500);jbadd.setVisible(true);}if(e.getSource()==dakaadd){dakaadddkadd=newdakaadd();dkadd.setBounds(1010,150,250,500);dkadd.setVisible(true);}.w ..if(e.getSource()==jiabanadd){jiabanaddjbanadd=newjiabanadd();jbanadd.setBounds(1010,150,250,500);jbanadd.setVisible(true);}if(e.getSource()==chuchaiadd){chuchaiaddccadd=newchuchaiadd();ccadd.setBounds(1010,150,250,500);ccadd.setVisible(true);}if(e.getSource()==qingjiaadd){qingjiaaddqjadd=newqingjiaadd();qjadd.setBounds(1010,150,250,500);qjadd.setVisible(true);}////////////////////////////////////////////if(e.getSource()==jibenupdate){jibenupdatejbut=newjibenupdate();jbut.setBounds(1010,150,250,500);jbut.setVisible(true);}if(e.getSource()==dakaupdate){.w ..dakaupdatedkup=newdakaupdate();dkup.setBounds(1010,150,250,500);dkup.setVisible(true);}if(e.getSource()==jiabanupdate){jiabanupdatejbaup=newjiabanupdate();jbaup.setBounds(1010,150,250,500);jbaup.setVisible(true);}if(e.getSource()==chuchaiupdate){chuchaiupdateccup=newchuchaiupdate();ccup.setBounds(1010,150,250,500);ccup.setVisible(true);}if(e.getSource()==qingjiaupdate){qingjiaupdateqjup=newqingjiaupdate();qjup.setBounds(1010,150,250,500);qjup.setVisible(true);}//////////////////////////////////////////if(e.getSource()==jibendelete){jibendeletejbdt=newjibendelete();.w ..jbdt.setBounds(1010,150,250,500);jbdt.setVisible(true);}if(e.getSource()==dakadelete){dakadeletedkat=newdakadelete();dkat.setBounds(1010,150,250,500);dkat.setVisible(true);}if(e.getSource()==jiabandelete){jiabandeletejbandt=newjiabandelete();jbandt.setBounds(1010,150,250,500);jbandt.setVisible(true);}if(e.getSource()==chuchaidelete){chuchaideleteccdt=newchuchaidelete();ccdt.setBounds(1010,150,250,500);ccdt.setVisible(true);}if(e.getSource()==qingjiadelete){qingjiadeleteqjdt=newqingjiadelete();qjdt.setBounds(1010,150,250,500);qjdt.setVisible(true);.w ..}////////////////////////////////////////////if(e.getSource()==helpcon){helpconhc=newhelpcon();hc.setBounds(1010,150,250,500);hc.setVisible(true);}///////////////////////////////////////////if(e.getSource()==aboutcon){aboutconac=newaboutcon();ac.setBounds(1010,150,250,500);ac.setVisible(true);}////////////////////////////////////////////if(e.getSource()==b1){newworkers();}if(e.getSource()==b2){work_notewknt=newwork_note();}if(e.getSource()==b3){out_noteotnt=newout_note();.w ..}if(e.getSource()==b4){off_noteofnt=newoff_note();}if(e.getSource()==b5){over_noteovnt=newover_note();}////////////////////////////////////////////////////if(e.getSource()==b6){QueryQ=newQuery();Q.setBounds(470,520,500,70);Q.setVisible(true);}if(e.getActionCommand()=="添加"){AddA=newAdd();A.setBounds(470,520,500,70);A.setVisible(true);}if(e.getActionCommand()=="修改"){UpdateU=newUpdate();U.setBounds(470,520,500,70);U.setVisible(true);.w ..}if(e.getActionCommand()=="删除"){DeleteD=newDelete();D.setBounds(470,520,500,70);D.setVisible(true);}/**if(e.getSource()==password){}if(e.getSource()==land){}if*(e.getSource()==addDelete){}if(e.getSource()==exit){*setVisible(false);}*/}///////////////////////////////////////////////////publicstaticvoidmain(String[]args){//主函数newmain_1();}}.w ..二、JAVA运行(一)、用户登录界面(二)、主界面.w ..(三)、基本功能.w ...w ...w ...w ..第一章参考文献[1]明忠数据库原理与应用中国海洋大学,2010[2]龙澍实用软件工程人民邮电,2007.w