1、课程设计任务书系别电气和电子工程系专业计算机应用技术班级指导老师题目JAVA考勤管理系统设计目标:熟练掌握JAVA程序设计图形开发、事件驱动机制、多种组件使用。设计要求:用JAVA设计一个计算器小程序;设计作品以单个Java文件形式,若是Applet小程序,则附带相关网页;不要使用包路径;代码书写规范,无语法和逻辑错误;课程设计要求:1画出程序设计步骤图,说明程序设计步骤。2. 依据步骤图,说明所使用相关知识。3.编写出程序4. 撰写课程设计说明书。课程说明书里应包含目录,程序步骤图,程序,总结(印象较深经验/教训等)。要求:设计要有对应设计汇报,汇报要包含题目、目录、摘要、关键字、正文、参考
2、文件几部分;字体、字号格式按样文设置;正文要有需求分析、概要设计、具体设计、代码、结论等部分组成,并有必需图表和效果图;结题形式程序代码,设计说明书时间分配:总体设计时间为1周1 设计步骤图 1天2 编写各部分程序 2天3 上机调试,实现功效 1天4 写说明书、答辩 1天目录第一章 考勤管理系统功效3第二章 软件开发42.1 用户登录42.2 用户管理模块开发42.2.1 用户添加42.2.2 用户修改62.2.3 用户删除62.3 考勤管理模块开发82.3.1 考勤人员添加82.3.2 考勤管理设置92.3.3 考勤课程设置102.3.4 人员考勤管理112.4 考勤查询132.4.1 考勤
3、卡号查询132.4.2 考勤姓名查询142.4.3 考勤周次查询15第三章 总结173.1 建立数据源173.2 控件使用173.3 JAVA 代码结构认识18第一章 考勤管理系统功效说明考勤管理系统为了处理班级考勤,开发一个基于JavaSwing和mssql桌面管理系统。 介绍关键功效(模块结构图)考勤周次查询考勤姓名查询考勤卡号查询考勤人员添加考勤课程设置人员考勤管理考勤管理设置用户修改系统退出用户删除用户添加考 勤 查 询考 勤 管 理用 户 管 理考勤管理系统第二章 软件开发2.1 用户登录 1、用户登录界面 2、程序开发步骤输入用户名、密码数据库中是否有统计进入管理界面是否3、关键代
4、码 str3=select * from hy where name=+str1+and pwd=+str2+;con = DriverManager.getConnection(jdbc:odbc:wk,sa,);stmt=con.createStatement();2.2 用户管理模块开发 2.2.1 用户添加 1、用户添加界面 2、程序开发步骤 按下 下一个 按钮统计是否到底否显示下一统计是游标到起始统计 3、关键代码 Stringstr_sql=insert into biao (name,pwd,grade) values (+str_name+,+str_pwd+,+user_ty
5、pe+);try conn=DriverManager.getConnection(jdbc:odbc:wk, sa, );stmt=conn.createStatement(); stmt.executeUpdate(str_sql);JOptionPane.showConfirmDialog(this, 添加成功!, 系统提醒,JOptionPane.CLOSED_OPTION,JOptionPane.INFORMATION_MESSAGE);tx.setText(); fd1.setText(); fd2.setText(); catch (SQLException e) e.print
6、StackTrace();2.2.2 用户修改 1、用户修改界面 2、程序开发步骤 开始修改用户修改用户或密码是否更新用户或密码更新否是 3、关键代码conn = DriverManager.getConnection(jdbc:odbc:wk,sa,);sta=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);rs=sta.executeQuery(select name,pwd,grade from hy);rs.next();text1.setText(rs.getString
7、(name);pwd.setText(rs.getString(pwd);cpwd.setText(pwd.getText();2.2.3 用户删除 1、用户删除界面 2、程序开发步骤 删除获取卡号是否删除删除是否 3、关键代码conn=DriverManager.getConnection(jdbc:odbc:wk, sa, );stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);rs=stmt.executeQuery(select name,pwd,grade from
8、 hy);rs.next();tx.setText(rs.getString(name);fd1.setText(rs.getString(pwd);rs.updateString(1,tx.getText();rs.updateString (2, fd1.getText();rs.updateInt(3, user_type);rs.updateRow();JOptionPane.showConfirmDialog(this, 确定要删除吗?, 系统提醒,JOptionPane.CLOSED_OPTION,JOptionPane.INFORMATION_MESSAGE);rs.delete
9、Row();rs=stmt.executeQuery(select name,pwd,grade from hy);2.3 考勤管理模块开发 2.3.1 考勤人员添加 1、考勤人员添加界面 2、程序开发步骤 开始添加人员信息是否为空,反复否完成,显示在表中是 3、关键代码conn=DriverManager.getConnection(jdbc:odbc:wk, sa, );stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);rs=stmt.executeQuery(sel
10、ect id,code,name,class,tel from biao1);rs.last(); r_date=new Objectrs.getRow();rs.beforeFirst();rs.close();stmt.close();conn.close();i=0bg=new JTable(r_date,t); s=new JScrollPane(); s.setViewportView(bg);sql=insert into kq (code,name,class,tel) values(+scode+,+sname+,+sclass+,+stel+); 2.3.2 考勤管理设置 1
11、、考勤管理设置界面 2、程序开发步骤 开始检测数据库中是否存在统计设置按钮不可用,重置,可重新设置删除表中数据,设置按钮不可用是否则不可设置 3、关键代码 b1.setEnabled(false); b2.setEnabled(true);try conn=DriverManager.getConnection(jdbc:odbc:wk,sa,);stmt=conn.createStatement();stmt.executeUpdate(insert into check_option (kx,c1,c2,c3,c4,c5) values (+tx1.getText()+,+tx2.getT
12、ext()+,+tx3.getText()+, +tx4.getText()+,+tx5.getText()+,+tx6.getText()+);stmt.close(); conn.close();2.3.3 考勤课程设置 1、考勤课程设置界面 2、程序开发步骤 新建Visual class类建立课程管理窗体添加课程将数据加入库 3、关键代码 try conn=DriverManager.getConnection(jdbc:odbc:wk,sa,);stmt=conn.createStatement();for(int i=1;i=5;i+)if(i=1)stmt.executeUpdat
13、e(insert into check_class (x1,x2,x3,x4,x5) values (+jTextField1.getText()+,+jTextField6.getText()+,+jTextField11.getText()+,+jTextField16.getText()+,+jTextField21.getText()+);2.3.4 人员考勤管理 1、人员考勤管理界面 2、程序开发步骤 选择课程扫描卡号确定选择考勤类型添加 3、关键代码 计算日期 Date date1=new Date(); Calendar c=Calendar.getInstance(Locale
14、.CHINESE); c.setTimeInMillis(date1.getTime(); c.add(Calendar.HOUR,-10); DateFormat df=DateFormat.getDateTimeInstance(); try return c.getTime().before(df.parse(date2); catch (ParseException e) e.printStackTrace();return false;conn=DriverManager.getConnection(jdbc:odbc:wk,sa,); stmt=conn.createStateme
15、nt();rs=stmt.executeQuery(select code from yu_kq where name=+tx2.getText()+);if(rs.next()s_code=rs.getString(1);Calendar c=Calendar.getInstance(Locale.CHINESE);SimpleDateFormat sim=new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);c.getTime(); c.add(Calendar.HOUR, +14); s_datetime=sim.format(c.getTime(); 2.
16、4 考勤查询2.4.1 考勤卡号查询 1、考勤卡号查询界面 2、程序开发步骤 输入考号/日期从数据库中获取信息显示在表中 3、关键代码 date=new Objectrs.getRow();rs.beforeFirst();s.remove(bg); bg=new JTable(date,t);bg.setBounds(10, 120, 350, 180); s.setViewportView(bg);s.setBounds(10, 120, 350, 185); 2.4.2 考勤姓名查询 1、考勤姓名查询界面 2、程序开发步骤 输入姓名/日期从数据库中获取信息显示在表中在数据库中建立“人员考
17、勤”视图 3、关键代码 conn=DriverManager.getConnection(jdbc:odbc:wk,sa,);stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);rs=stmt.executeQuery(select * from find_code where name=+t_code.getText()+); rs.last();2.4.3 考勤周次查询 1、考勤周次查询界面 2、程序开发步骤 输入信息从数据库中获取信息输出显示 3、关键代码 周次转换为天
18、数算法 (周数-1)*7+星期几调用以下类中方法daycount=(Integer.parseInt(t_week.getText()-1)*7+Integer.parseInt(t_date.getText();System.out.println(天数+daycount); String result = ; DateFormat df = new SimpleDateFormat(yyyy-MM-dd); long i=86400000; try Date ldate = df.parse(ymd);result = df.format(new Date(ldate.getTime()+
19、nextYmd * i).toString(); catch (ParseException e) e.printStackTrace(); return result;第三章 总结3.1 建立数据源 1、使用JDBC-ODBC java联接了数据源 2、使用JDBC for SQL* 驱动。映射ODBC 桥JAVA 3、建立数据源ODBC控制面板管理工具数据源ODBC系统DSN添加选择数据库类型SQL指定数据源名称:(名称:ts)服务器名称:在服务管理中粘贴登录方法 系统默认更改默认数据库(新建库)数据源测试完成private Connection conn=null;/申明数据联接 pri
20、vate Statement stmt=null;/传输sql语句private ResultSet rs=null;/接收结果(统计集)3.2 控件使用 1、JFrame添加背景图片/菜单背景.private Image img_main=null;private ImageIcon icon_main=null;private JLabel l=null;private JLayeredPane p=null;/背景图标img_main=ImageIO.read(this.getClass().getResource(/pro_2/pic/main.jpg);icon_main=new I
21、mageIcon(img_main);/添加背景图片l=new JLabel(icon_main);p=this.getLayeredPane();p.setOpaque(false); l.setBounds(0,0,icon_main.getIconWidth(), icon_main.getIconHeight();/设置背景标签位置p.add(l, new Integer(Integer.MIN_VALUE);/注意这里是关键,将背景标签添加到jframLayeredPane面板里。 Container cp=this.getContentPane();cp.setLayout(nul
22、l);(JPanel)cp).setOpaque(false);2、怎样在jTextField上添加事件,实现输入数据触发事件t-jTextField对象t.getDocument().addDocumentListener(new DocumentListener()public void changedUpdate(DocumentEvent arg0) /当属性或属性集发生改变时通知public void insertUpdate(DocumentEvent arg0) /文本输入时通知public void removeUpdate(DocumentEvent arg0) /删除文本时通知);3、在容器中添加滚动条容器private JScrollPane p=new JScrollPane(); /申明并创建滚动条容器p.setBounds(10, 10, 300, 300); /设置位置this.add(p);/添加3.3 JAVA 代码结构认识 经过这次课程设计,让我愈加好巩固了JAVA课程中所学习地知识,对JAVA开发程序有了一个系统了解。知道了在开发程序时,应该先构建一个体系,在设计程序前应该先将程序步骤图画出来,再有目标去编写各部分程序。同时,也让我感觉到了JAVA语言功效强大。
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100