收藏 分销(赏)

实训-JavaEE项目实训.doc

上传人:仙人****88 文档编号:9258235 上传时间:2025-03-18 格式:DOC 页数:12 大小:574.50KB 下载积分:10 金币
下载 相关 举报
实训-JavaEE项目实训.doc_第1页
第1页 / 共12页
实训-JavaEE项目实训.doc_第2页
第2页 / 共12页


点击查看更多>>
资源描述
实训成绩 批阅教师 日 期 实 训 报 告 课程名称 Java EE 项目实训 专业班级 学 号 学生姓名 指导教师 实训地点 2013 年 11 月 24 日 《员工管理》需求说明书 目录 1项目编写背景 2 1.1 系统名称 2 2软件运行环境以及技术约束 2 2.1软件约束 2 2.2硬件约束 2 Windows 2000及以上 2 3参考文档 2 4用例清单 3 5管理员登陆 3 5.1用户登陆 3 5.2验证码 5 6员工信息管理模块 5 6.1用例图 6 6.2员工信息管理功 6 6.2.1员工信息浏览 6 6.2.2删除员工信息 7 6.2.3增加员工信息 8 6.2.4修改员工信息 9 1项目编写背景 1.1 系统名称 员工信息管理系统 系统用户负责此系统管理的系统管理员,使用此系统的企业工作人员; 本项目的目的是运用servlet来实现员工信息的管理,主要完成员工大量的基本信息管理,包括员工信息的录入,员工信息的删除,员工信息的修改,主要目的是协助管理人员管理员工的大量信息,将大量分散的信息统一集中到数据库中。 员工信息管理系统是一个web应用形式(B/S),可以通过互联网进行访问。 2软件运行环境以及技术约束 2.1软件约束 员工信息管理系统采用Java技术进行开发。开发及运行的软件环境为: Java开发包JDK:jdk1.7.0_10-windows版 应用服务器Tomcat:apache-tomcat-7.0.18 数据库:Oracle 运用技术:Servlet 开发工具:myeclipse 2.2硬件约束 Windows 2000及以上 3参考文档 《企业薪酬管理系统》作者:王晶。 《面向对象系统分析与设计》 清华大学出版社 4用例清单 编号 模块 用例定义 用例描述 重要程度 1 员工信息管理 员工信息浏览 查看所有的员工列表 A 查询员工信息 根据查询条件查询员工信息 A 删除员工信息 删除员工信息 A 增加员工信息 增加新的员工信息 A 修改员工信息 修改某员工的信息 A 2 管理员登陆 用户登陆 用户登陆页面 A 5管理员登陆 此模块主要实现管理员登陆,根据登陆名和密码登陆用户。 需求描述:管理员登录系统可对员工信息进行管理。 1-1 进入登陆页面login.jsp,如图所示; 1-2 用户输入用户名、密码和正确的验证码,点击“提交”按钮。 1-3 用户进入系统。 关键代码: 5.1用户登陆 conn = DBUtil.getConnection(); prep = conn.prepareStatement("select * from user_tt where username=?"); prep.setString(1, username); rst = prep.executeQuery(); if(rst.next()){ user = new User(); user.setUsername(username); user.setPwd(rst.getString("pwd")); user.setName(rst.getString("name")); user.setGender(rst.getString("gender")); user.setId(rst.getInt("id")); } String number1 = request.getParameter("number"); HttpSession session = request.getSession(); String number2 = (String)session.getAttribute("number"); if(!number1.equalsIgnoreCase(number2)){ request.setAttribute("number_error", "验证码错误"); request.getRequestDispatcher("login.jsp").forward(request, response); return; } String username = request.getParameter("username"); String pwd = request.getParameter("pwd"); try { UserDAO dao = (UserDAO)Factory.getInstance("UserDAO"); User user = dao.findByUsername(username); if(user != null && user.getPwd().equals(pwd)){ session.setAttribute("user", user); response.sendRedirect("main.jsp"); }else{ request.setAttribute("login_error","用户名或密码错误"); request.getRequestDispatcher("login.jsp").forward(request, response); } } catch (Exception e) { e.printStackTrace(); throw new ServletException(e); } 5.2验证码 BufferedImage image = new BufferedImage(width,height,BufferedImage. TYPE_INT_RGB); Graphics g = image.getGraphics(); Random r = new Random(); g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255))); g.fillRect(0, 0, width, height); String number = getNumber(5); HttpSession session = request.getSession(); session.setAttribute("number", number); g.setColor(new Color(0,0,0)); g.setFont(new Font(null,Font.ITALIC|Font.BOLD,20)); g.drawString(number, 5, 22); for(int i=0;i<8;i++){ g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255))); g.drawLine(r.nextInt(width), r.nextInt(height), r.nextInt(width), r.nextInt(height)); } response.setContentType("image/jpeg"); OutputStream ops = response.getOutputStream(); javax.imageio.ImageIO.write(image, "jpeg", ops); 6员工信息管理模块 此模块主要完成员工信息的管理,包括员工就职,离职等几个字模块,此功能模块的主要给管理员对公司的部门进行分类统计。 6.1用例图 6.2员工信息管理功 6.2.1员工信息浏览 需求编号:1 需求描述:管理员登录系统后,可以通过查看员工列表信息。 1-1 管理员登陆系统; 1-2 查询到的结果要包括员工编号名称、员工姓名、薪水,年龄,每页5条。,如上图所示: 关键代码: conn = DBUtil.getConnection(); prep = conn.prepareStatement("select * from emp_tt"); rst = prep.executeQuery(); while(rst.next()){ Employee e = new Employee(); e.setId(rst.getInt("id")); e.setName(rst.getString("name")); e.setSalary(rst.getDouble("salary")); e.setAge(rst.getInt("age")); employees.add(e); } EmployeeDAO dao = (EmployeeDAO) Factory.getInstance("EmployeeDAO"); List<Employee> employees = dao.findByPages(5, Integer.parseInt(page)); int totalPages = dao.getTotalPages(5); request.setAttribute("page", page); request.setAttribute("totalPages", totalPages); request.setAttribute("employees", employees); RequestDispatcher rd = request.getRequestDispatcher("empList.jsp"); rd.forward(request, response); 6.2.2删除员工信息 需求编号:2 需求描述:若某个员工离职或退休后,就可以删除这个员工。 1-1 管理员登陆; 1-2 进入员工信息列表 1-3 找到离职员工,点击“离职”。如图所示: 关键代码: conn = DBUtil.getConnection(); prep = conn.prepareStatement("delete from emp_tt where id=?"); prep.setInt(1, id); prep.executeUpdate(); int id = Integer.parseInt(request.getParameter("id")); try { EmployeeDAO dao = (EmployeeDAO) Factory.getInstance("EmployeeDAO"); dao.delete(id); response.sendRedirect("list.do"); } catch (Exception e) { e.printStackTrace(); throw new ServletException(e); } 6.2.3增加员工信息 需求编号:3 需求描述:新员工就职,可以通过管理员登录系统后,新增员工信息。 1-1 管理员登陆; 1-2 点击“添加员工”按钮,转到addEmp.jsp页面。如图所示: 1-3 在addEmp.jsp页面中填写员工姓名、薪水、年龄,确认信息无误后,点击“提交”按钮。 1-4 转到员工信息列表查看刚添加的员工是否在列表中。 关键代码: conn = DBUtil.getConnection(); prep = conn.prepareStatement(" insert into emp_tt(id,name,salary,age) values(emp_tt_seq.nextval,?,?,?)"); prep.setString(1, e.getName()); prep.setDouble(2, e.getSalary()); prep.setInt(3, e.getAge()); prep.executeUpdate(); EmployeeDAO dao = (EmployeeDAO) Factory.getInstance("EmployeeDAO"); Employee e = new Employee(); e.setName(name); e.setSalary(Double.parseDouble(salary)); e.setAge(Integer.parseInt(age)); dao.save(e); response.sendRedirect("list.do"); 6.2.4修改员工信息 需求编号:3 需求描述:新员工就职,可以通过管理员登录系统后,找到员工信息进行修改。 1-1 管理员登陆,进入员工信息列表; 1-2 找到要修改的员工信息,点击“修改”,转到updateEmp.jsp页面。如图所示: 1-3 在updateEmp.jsp页面中重新填写要修改的信息,确认信息无误后,点击“提交”按钮。 1-4 转到员工信息列表查看刚修改的员工是否在列表中。 关键代码: conn = DBUtil.getConnection(); prep = conn.prepareStatement("update emp_tt set name=?,salary=?,age=? where id=?"); prep.setString(1, e.getName()); prep.setDouble(2, e.getSalary()); prep.setInt(3, e.getAge()); prep.setInt(4, e.getId()); prep.executeUpdate(); int id = Integer.parseInt(request.getParameter("id")); String name = request.getParameter("name"); double salary = Double.parseDouble(request.getParameter("salary")); int age = Integer.parseInt(request.getParameter("age")); try { EmployeeDAO dao = (EmployeeDAO) Factory.getInstance("EmployeeDAO"); Employee e = new Employee(); e.setId(id); e.setName(name); e.setSalary(salary); e.setAge(age); dao.update(e); response.sendRedirect("list.do"); } catch (Exception e) { e.printStackTrace(); throw new ServletException(e); } 11 / 12
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服