2022年java人事管理系统 .pdf
《2022年java人事管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年java人事管理系统 .pdf(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1人事管理系统用户登录信息入库身份验证管理员权限一般用户权限添加职工信息修改密码和权限添加用户修改职工信息查询职工信息退出系统查询职工信息退出系统删除职工信息1 系统设计目标1.1 需求分析本系统应具有以下功能:(1)系统管理员:可以添加用户信息、修改密码和设置用户权限,以及对职工信息进行添加、修改、查询、删除等操作。(2)一般用户:可以查询职工信息。1.2 系统功能设计(1)系统功能结构图,如图1-1 所示:图 1-1 系统功能结构图 1.3 系统开发工具本系统采用 Access 2003 创建后台数据库,前台开发工具采用Eclipse ,开发语言为java 。名师资料总结 - - -精品资
2、料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 41 页 - - - - - - - - - 2系统用户职工号密码用户类员工信息职工号姓名工资参加工作时间部门电话地址职务2 系统数据库设计与实现 2.1 数据表的实体 E-R 图通过对的系统总体分析,可以得到大概的实体-关系模型( E-R模型) ,如下:(1)员工信息表的 E-R 图,如图 2-1 所示:图 2-1 员工信息表的E-R 图(2)系统用户表的 E-R 图,如图 2-2 所示:图 2-2 系统用户表的E-R 图 2.2 数据表的结构(1)员
3、工信息表的结构如图2-3 所示:图 2-3 员工信息表结构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 41 页 - - - - - - - - - 3(2)系统用户表的结构,如图2-4 所示:图 2-4 系统用户表结构3 窗体设计3.1 登录页面设计启动程序“ Eclipse ”后,选择“文件”、 “新建” 、 “Java 项目” ,打开“新建Java 项目”对话框,输入项目名称为“personInfo ” ,在项目下添加包和所需的类。(1)登录界面如图 3-1 所示
4、:图 3-1 系统登录界面(2)用户身份验证,如图3-2 所示:图 3-2 用户身份验证界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 41 页 - - - - - - - - - 4 3.2 管理员权限(1)管理员权限主菜单,如图3-3 所示:图 3-3 管理员主菜单界面(2)用户修改密码和设置权限,如图3-4 所示:图 3-4 用户修改密码和设置权限界面(3)添加新职工如图3-5 所示:图 3-5 添加新职工界面名师资料总结 - - -精品资料欢迎下载 - - -
5、 - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 41 页 - - - - - - - - - 5(4)查询职工信息如图3-6 所示:图 3-6 查询职工信息界面(5)删除职工信息如图3-7 所示:图 3-7 删除职工信息界面(6)退出系统消息提示,如图3-8 所示:图 3-8 退出系统消息提示对话框名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 41 页 - - - - - - - - - 6 3.3
6、 一般用户权限(1)一般用户权限主菜单,如图3-9 所示:图 3-9 一般用户主菜单界面(2)查询职工信息如图3-10 所示:图 3-10 查询职工信息界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 41 页 - - - - - - - - - 74 设计体会及今后的改进意见 4.1 设计体会经过一个周的努力,已基本上完成了“人事管理系统”的课程设计。其功能基本符合用户需求,能够实现用户身份验证、主界面管理、用户管理以及添加、修改、查询、删除职工信息等功能。由于时间较
7、短和自身因素,该系统必然会存在缺陷和不足。期间,通过查阅相关资料,以及向老师和同学请教,纠正了一些开始设计时的错误和误区,弥补了自己在编程思想的疏漏。4.2 今后的改进意见通过本次课程设计,使我明白了画功能结构图的重要性,它对设计思想以及编写程序代码有指导性的意义。在开始时,由于没能意识到这一点,走了不少弯路,浪费了时间。它启发了我的思维,培养了动手实践的能力。同时,也让我学会了一些编程技巧和方法,使我的学习能力和编程能力都得到了提高,它将为我以后的学习和发展打下坚实的基础。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精
8、心整理 - - - - - - - 第 7 页,共 41 页 - - - - - - - - - 8参 考 文 献1 郑莉编著 .Java 语言程序设计 M. 北京:清华大学出版社,2011 2 於东军,杨静宇等编著 .Java 程序设计与应用开发 M. 北京:清华大学出版社, 2005名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 41 页 - - - - - - - - - 9附录:源程序代码(1)LoginFrame.java import java.awt.*;
9、import java.awt.event.*; import javax.swing.*; import java.sql.*; public class LoginFrame extends JFrame Container contentPane; JPanel paneTop = new JPanel(); JPanel paneMid = new JPanel(); JPanel paneBut = new JPanel(); JLabel Top = new JLabel(); JLabel Names= new JLabel(); JLabel Pwd = new JLabel(
10、); JLabel Model = new JLabel(); JLabel Null = new JLabel(); JTextField Namefield = new JTextField(15); JPasswordField Pwdfield = new JPasswordField(15); JComboBox cmb = new JComboBox(); JButton button2= new JButton(取消); JButton button1 = new JButton(登录); int ss; LoginFrame() Names.setText(职工号 :); Pw
11、d.setText(密码:); Model.setText(用户类 :); Null.setText( ); String s1 = 管理员 , 一般用户 ; cmb.addItem(s10); cmb.addItem(s11); paneTop.add(Names); paneTop.add(Namefield); paneMid.add(Pwd); paneMid.add(Pwdfield); paneMid.add(Model); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
12、 9 页,共 41 页 - - - - - - - - - 10 paneMid.add(cmb); paneBut.add(button1); paneBut.add(button2); contentPane = this.getContentPane(); contentPane.add(paneTop,BorderLayout.NORTH); contentPane.add(paneMid,BorderLayout.CENTER); contentPane.add(paneBut,BorderLayout.SOUTH); setTitle(欢迎登录 ); setSize(260,170
13、); / 将窗口放置在中央 Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); setLocation(screen.width - getSize().width)/2,(screen.height - getSize().height)/2 ); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); button1.addActionListener(new ButtonHandle(); cmb.addActionListener(ne
14、w GetSelected(); button2.addActionListener(new Exit(); public class Exit implements ActionListener public void actionPerformed(ActionEvent e) dispose(); public class GetSelected implements ActionListener public void actionPerformed(ActionEvent e) ss=cmb.getSelectedIndex(); public class ButtonHandle
15、implements ActionListener public void actionPerformed(ActionEvent e) switch(ss) case 0: administer();break; case 1: commonclass();break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 41 页 - - - - - - - - - 11 public void administer() String str1,str2; str1=Na
16、mefield.getText(); str2= new String(Pwdfield.getPassword(); try if(str1.equals()|str2.equals() JOptionPane.showMessageDialog(null,请 输入 职 工 号 和密码! ); return; Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection conn = DriverManager.getConnection(jdbc:odbc:redsun,); PreparedStatement stmt = conn.pr
17、epareStatement(select * from 系统用户 where 职工号 =? and 密码=?); stmt.setString(1,str1); stmt.setString(2,str2); ResultSet rs =stmt.executeQuery(); if (rs.next() JOptionPane.showMessageDialog(null,登录成功 !,欢迎登录人事管理系统 ,JOptionPane.INFORMATION_MESSAGE); MenuFrame o=new MenuFrame(); o.go(); else JOptionPane.sho
18、wMessageDialog(null,非 系 统 用 户 , 返回!,登录失败 ,JOptionPane.INFORMATION_MESSAGE); System.out.println(无此用户 , 返回!); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 41 页 -
19、- - - - - - - - 12 public void commonclass() String str1,str2; str1=Namefield.getText(); str2= new String(Pwdfield.getPassword(); try if(str1.equals()|str2.equals() JOptionPane.showMessageDialog(null,请输入职工号和密码!); return; Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection conn = DriverManager.ge
20、tConnection(jdbc:odbc:redsun,); PreparedStatement stmt = conn.prepareStatement(select * from 系统用户 where 职工号 =? and 密码=?); stmt.setString(1,str1); stmt.setString(2,str2); ResultSet rs =stmt.executeQuery(); if (rs.next() JOptionPane.showMessageDialog(null,登录成功 !,欢迎登录人事管理系统 ,JOptionPane.INFORMATION_MES
21、SAGE); MenuFrame1 o=new MenuFrame1(); o.go(); else JOptionPane.showMessageDialog(null,非系统用户, 返回 !,登录失败 ,JOptionPane.INFORMATION_MESSAGE); System.out.println(无此用户 , 返回!); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); 名师资料总结 - - -精品资料欢迎下载 - - - - - -
22、 - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 41 页 - - - - - - - - - 13 public static void main(String args) new LoginFrame(); (2)MenuFrame.java import java.awt.*; import javax.swing.*; import java.awt.event.*; class MenuFrame extends JFrame private JPanel panel=new JPanel(); JMenuBar jmenu
23、bar1=new JMenuBar();/创建菜单栏 JMenu jmenu1=new JMenu(); JMenu jmenu2=new JMenu(); JMenu jmenu3=new JMenu(); JMenu jmenu4=new JMenu();/创建菜单 JMenuItem jmenuitem1=new JMenuItem(); JMenuItem jmenuitem2=new JMenuItem(); JMenuItem jmenuitem3=new JMenuItem(); JMenuItem jmenuitem4=new JMenuItem(); JMenuItem jm
24、enuitem5=new JMenuItem(); JMenuItem jmenuitem6=new JMenuItem(); JMenuItem jmenuitem7=new JMenuItem();/创建菜单条 /定义方法 public void go() / 设置窗口容器的布局管理器this.getContentPane().setLayout(new BorderLayout(); / 设置窗口的标题this.setTitle(人事管理系统 ); / 添加菜单栏this.setJMenuBar(jmenubar1); / 设置菜单和菜单项名称jmenu1.setText(用户管理 );
25、 jmenuitem2.setText(修改密码和权限 ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 41 页 - - - - - - - - - 14jmenuitem4.setText(添加用户 ); jmenu2.setText(职工信息管理 ); jmenuitem1.setText(添加职工信息 ); jmenuitem3.setText(修改职工信息 ); jmenuitem5.setText(查询职工信息 ); jmenu3.setText(删除员
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年java人事管理系统 2022 java 人事管理系统
限制150内