赵 娟
(西安铁路职业技术学院,陕西 西安 710014)
基于TableMode的企业员工管理系统构建
赵 娟
(西安铁路职业技术学院,陕西 西安 710014)
利用JAVA语言简单、可直观查询运行信息和安全性高的特点,为了科学有效地对企业员工信息进行管理, 基于TableMode构建了企业员工管理系统,并结合企业不同部门员工的特点,对设计方案进行了完善和改进。
JAVA;TableMode;企业员工管理
JAVA是SUN(stanford university network)公司开发出来的一套编程语言,是一种简洁有效、移植性强、面向对象、具有多线程处理能力和安全性高的计算机语言。本文介绍了基于JAVA开发的一套适用于企业的员工管理系统[1]。
JAVA中提供了JTable和TableMode 2种表格组件,可以通过行和列的形式显示数据的视图,它们都是程序开发中非常重要的组件,在Swing中可以通过JTable组件非常轻松地构造出所需要的表格,并且也提供了一些方法来管理这些表格的内容;但是,使用JTable构建的表格相对比较单一,如果要制作一些操作界面更加友好的表格,例如在表格中加入一些单元按钮或下拉列表框,则需借助TableMode接口,在该接口中定义了许多与表格操作相关的方法,常用的方法见表1[2]。
表1 TableModel接口的常用方法
2.1 系统分析
根据题目给出的字段抽象成数据库表,题目中包含企业部门信息、人员信息和一些基本信息。根据给出的字段及各个信息之间的关系,以部门类别(见表2)和部门详细信息(见表3)为例得到数据库的表[3-4]。
表2 部门类别
表3 部门详细信息
2.2 系统主界面开发
打开MyEclipse并建立工程,命名为ExployeeManager。在工程下建立frame包,以后关于本程序所有的窗体类都放在这个包中,在此包中建立类MainFrame.java,并在里面编写创建主窗体类的代码[5]。
主窗体形式设计如下:程序运行后,主窗体打开铺平整个屏幕,主窗体带有菜单栏,上面有5个菜单项,分别是部门管理、信息查询、员工信息操作、基本信息管理和系统;在部门管理菜单项下面有1个部门信息查询与管理项,信息查询下又有查询全部员工信息和条件查询2个项,员工信息操作包括添加员工信息、修改员工信息和删除员工信息3个项;基本信息管理下包括学历添加、职务添加、职称添加和岗位添加;系统项中有帮助和退出2个项。将这些菜单项都添加到菜单中,然后将菜单放入“frame”中,实现后的效果如图1所示。
图1 主窗体显示
2.3 表格源程序建立
表格源程序如下:
package org.lxh.demo 18.jtablemo;
import java.awt.BorderLayout;
import java.awt.WindowAdapter;
import java.awt. WindowEvent;
import java.swing.DefaultCellEditor;
import java.swing.JComboBox;
import java.swing.JFrame;
import java.swing.JPanel;
import java.swing.JScrollPane;
import java.swing.JTable;
import java.swing.table.AbstractTableModel;
class DefaultTable extends AbstractTableModel{
private String[]titles={“姓名”, “年龄”, “性别”, “职称”, “部门”, “职务”, “学历”}; //定义数组表示表格标题
private Object[][]userInfo={{“李兴华”, “30”, “男”, “工程师”, “生产部”, “组长”, “本科”},
{“李康”, “38”, “男”, “高级工程师”, “研发部”, “主任”, “本科”}}; //定义二位对象数组表示数据
public int getColumnCount(){ //返回列的个数
renturn this.titles.length;
}
public int getRowCount(){ //返回表格的行数
renturn this.userInfo.length;
}
public Object getValueAt(int row,int col){ //返回指定行和列的数据
renturn this.userInfo[row][col];
}
//得到列的名字,如果不覆写此方法,则以后无法显示列的名称
public String getColumnName(int col){
return this.titles[col]; //根据下标返回指定列的名字
}
/*返回列的类型,如果不覆写此方法,则无法按格式显示数据,格式如下:
*1、boolean类型:以CheckBox方法显示
*2、数值类型:以JLable显示,文字向右排列
*/
public Class>getColumnClass(int col){
return this.getValueAt(0,col).getClass(); //取得指定列的类型
}
//如果不覆写此方法,则表格无法编辑
public Boolean isCellEditable(int row,int col){
return ture; //所有表格单元均可编辑
}
public void setValueAt(Object newValueAt(Object newValue,int row,int col){ //修改表格数据
this.userInfo[row][col]=newValue; //修改数据
}
}
class TableColumnModeIDemo{
private JFrame frame =new JFrame(“Welcome To MLDN”);
//实例化窗体对象
private JTable table=null; //声明JTable对象
private DefaultTable defaultTable=new DefaultTable(); //实例化
private JComboBox sexList =new JComboBox(); //定义下拉列表框
public TableColumnModeIDemo(){ //定义构造方法,完成显示
this.table=new JTable(this.defaultTable); //实力化JTable对象
this.sexlist.addltem(“男”); //增加下拉选项
this.sexlist.addltem(“女”); //增加下拉选项
this.table.getColumnMode().getColumn(2).setCellEditor(
new DefaultCellEditor(this.sexList)); //将下拉列表项加入表格
JScrollPane scr=new JScrollPane(this.table); //加入滚动条
JPanel toolbar=new JPanel(); //定义面板
this.frame.add(toolBar,BorderLayout.NORTH); //将面板加入窗体
this.frame.add(scr,BorderLayout.CENTER); //将表格加入窗体
this.frame.setSize(370,160); //定义窗体大小
this.frame.setVisible(ture); //显示窗体
this.frame.addWindowListener(newWindowAdapter(){
//加入事件监听
public void windowClosing(WindowEvent arg0){
//覆写窗口关闭方法
System.exit(1); //系统退出
}});
}
}
public class JTableDemo02{
public static void main(String args[]){
new TableColumnModelDemo();
}
}
2.4 运行结果
运行结果如图2所示,员工信息添加界面如图3所示。
图2 员工数据
图3 员工信息添加界面
企业员工管理系统的开发程序较为复杂,需要不断地进行完善及修改,本文只对其中表格设计部分做了简要介绍。系统的建立可以简便有效地实现企业员工信息的自动化管理与部门间的共享应用。
[1] 埃克尔.JAVA编程思想[M].北京:机械工业出版社,2007.
[2] 王小科.JavaScript程序设计[M].北京:人民邮电出版社,2014.
[3] 徐明远.Java常用算法手册[M].北京:中国铁道出版社,2014.
[4] 徐传运.Java高级程序设计[M].北京:清华大学出版社,2014.
[5] Jone L. Java程序设计与数据结构教程[M].北京:电子工业出版社,2014.
责任编辑李思文
EnterpriseStaffManagementSystemBuildingbasedonTableMode
ZHAO Juan
(Xi′an Railway Vocational and Technical College,Xi′an 710014, China)
Based on the characteristics of JAVA of simple language, intuitive query operation information, and the characteristics of high safety, and for the employees of the enterprise information management of scientific and effective, the paper built enterprise staff management system by using TableMode and improved the designing scheme considering the characteristics of enterprises of different employees.
JAVA, TableMode, enterprise staff management
TP 311
:B
赵娟(1978-),女,讲师,主要从事无线通信和计算机技术等方面的研究。
2014-07-24