版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、福建师范大学协和学院本科实验报告课程名称:JavaEE与中间件技术系 别: 信息技术系 专 业: 计算机科学技术 班 级: 计科一班 学 号: 124112012040 124112012055 124112012030 124112012050 学生姓名: 魏少华 郑云益 林准 俞伟杰 2014年实验项目列表序号实验项目名称学时实验时间实验地点指导老师1大型项目综合实验课外第1-16周机房总成绩实验相关说明实验要求:1.明确实验课是课程的重要组成部分,与理论课有着同等地位,是培养自身的实验技能与创新能力的重要途径;2.在实验前,对实验的目的、要求和基本内容,实验的重点和难点,应进行预习与讨论
2、,确定实施措施,并编写好程序;3.了解实验室的规章制度和安全用电常识、实验设备损坏赔偿制度等,加强安全意识,爱惜实验设备;4.实验课期间不得擅自离开实验室或从事与本实验无关的活动,按时按质完成实验作业,培养创造性思维,努力提高自身的实践能力。实验须知:1.实验完成之后,学生须填写实验报告,并打印上交。报告内容包括:实验目的、实验内容、实验步骤、需求分析、流程图、数据字典、核心算法思想、程序源代码(程序代码部分可以只交电子档)、实验中未解决的问题、屏幕出错提示代码、出错原因、解决方法及实验心得等内容。2.学生除了上交实验报告打印稿外,还须提交实验报告和程序代码电子文件,并以本人姓名和学号命名实验
3、报告文件和程序代码压缩文件,例如“张三·实验报告(12420050611).doc”,“张三·实验程序代码(12420050611).rar”。注意:程序代码压缩文件,包含程序代码、数据库转储文件、使用说明等。3.实验任务必须在课程结束前完成,并经过指导老师检查才能得分。没能按时完成,及没按时提交打印稿和电子文件的同学,实验成绩为0分。4.实验报告若有拷贝现象,程序代码大部分雷同的学生,实验成绩一律为分。5.电子档提交信箱:cylincylin。福建师范大学协和学院JavaEE与中间件技术课程实验报告JavaEE与中间技术大型综合实验一、实验目的充分利用JDBC数据库技术、
4、JSP技术、Servlet技术、Java Bean技术、SSH框架技术以及其他相关协议与开发包,进行深层次的技术开发与应用。使学生掌握JavaEE的编程思想和SSH框架技术的综合运用。并掌握业务需求分析的基本方法和完整系统的设计流程。通过基于 B/S结构的JavaEE项目开发,进而培养学生分析能力与解决实际问题的能力。二、实验环境1、操作系统Windows XP2、JAVA开发包JSDK1.63、代码编辑器Jcreart3.24、数据库管理系统MySQL5.05、数据库可视化管理平台CapVideo8.06、Web服务器TomCat5.0、WebLogic10.07、JAVA开发工具MyEcl
5、ipse7.08、微机三、实验选题综合项目名称:_工资信息管理系统_采用到的技术:JDBC数据库技术JSP技术Servlet技术Java Bean技术SSH框架技术四、进度安排与分工情况:表1 项目成员组成表学号姓名职责分工贡献程度124112012040魏少华负责人30124112012055郑云益25124112012030林准22124112012050俞伟杰23表2 进度安排表周次任务安排负责人备注第1周项目启动(任务分配,制定项目预期目标)全部第2周需求分析(功能需求:User Case 分析,数据库需求非功能需求:安全性、可用性等)郑云益第3周需求分析(系统原型测试用例与测试工具准
6、备)郑云益第4周E-R图设计郑云益第5周概要设计(系统架构设计概念类设计)林准第6周概要设计(数据库设计编写关键实现技术)林准第7周详细设计(详细设计类/模块详细设计界面设计)俞伟杰第8周详细设计(数据结构与算法设计)俞伟杰第9周 编码实现魏少华第10周 编码实现魏少华第11周编码实现魏少华第12周 编码实现魏少华第13周制定测试方案,功能测试(单元测试、集成测试)俞伟杰第14周性能测试(集成测试、压力测试)俞伟杰第15周实验报告编写林准第16周实验报告编写郑云益五、系统功能描述在本系统中需要对用户身份进行管理,包括员工身份和系统管理员身份2种,在登陆界面用户需要输入用户名及密码,选择权限,验
7、证成功后,才能进入系统。员工身份可以对自己的工资信息进行查询,系统管理员身份具有查看所有的工资信息,添加新的员工工资信息,修改工资信息,删除工资信息,根据员工考勤状况,来对员工工资进行增加或者减少。其具体功能实现如下:1、系统管理用户操作1)系统管理员可以对自己的个人信息进行查看,修改,和修改个人密码等操作2)管理工资信息:系统管理员添加员工工资信息,可对其查看、修改和删除。 3)管理考勤信息:系统管理员添加员工考勤信息,可对其查看、修改和删除。 2、员工用户操作 1)员工用户可以对自己的个人信息进行查看,修改,和修改个人密码等操作2)员工用户可以查看自己的具体工资信息。3)员工用户可以查看自
8、己的具体考勤信息。六、具体实现过程(核心功能算法设计或主要功能的实现代码)查询:public void search(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException Employee employee = new Employee();employee.setEid(request.getParameter("eid");IEmployeeDAO employeeDAO = new EmployeeDAO();PageUtil page
9、Util = new PageUtil(request);pageUtil.setPageSize(6); / 设置分页大小int pageSize = pageUtil.getPageSize();int rsCount = employeeDAO.getRsCount(employee);/ 获得记录总数pageUtil.setRsCount(rsCount);int pageCount = pageUtil.getPageCount();/ 计算页数int currentPage = pageUtil.getCurrentPage();/ 获得当前页String pageTool = p
10、ageUtil.createPageTool(PageUtil.BbsText);/ 创建分页工具条request.setAttribute("pageTool", pageTool);ArrayList<Employee> list = employeeDAO.search(employee,pageSize,currentPage);request.setAttribute("employeelist", list);request.getRequestDispatcher("/employeewage.jsp").f
11、orward(request,response);插入:public void insert(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Employee employee = new Employee(); employee.setEid(request.getParameter("eid"); employee.setEname(request.getParameter("ename"); employee.
12、setEworkyear(request.getParameter("eworkyear"); employee.setEgraduateschool(request.getParameter("egraduateschool"); employee.setEnative(request.getParameter("enative"); employee.setWmaritalstatus(request.getParameter("wmaritalstatus"); employee.setEtime(reque
13、st.getParameter("etime"); IEmployeeDAO employeeDAO = new EmployeeDAO(); if (employeeDAO.insert(employee) request.setAttribute("message", "账户添加成功!"); request.getRequestDispatcher("/register.jsp").forward(request, response); else request.setAttribute("messa
14、ge", "操作失败!"); request.getRequestDispatcher("/register.jsp").forward(request, response); 更新:public void update(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Employee employee = new Employee();String eid=request.getParameter(&qu
15、ot;eid");IEmployeeDAO employeeDAO = new EmployeeDAO();employee.setEid(request.getParameter("eid");employee.setEworkyear(request.getParameter("eworkyear");employee.setEname(request.getParameter("ename");employee.setEnative(request.getParameter("enative");e
16、mployee.setEgraduateschool(request.getParameter("egraduateschool");employee.setWmaritalstatus(request.getParameter("wmaritalstatus");employee.setEtime(request.getParameter("etime"); if (employeeDAO.update(employee) request.setAttribute("message", "修改成功!&q
17、uot;);search(request,response); else request.setAttribute("employee", employeeDAO.getById(eid);request.setAttribute("message", "操作失败!");request.getRequestDispatcher("/edit.jsp").forward(request,response);删除:public void deleteH(HttpServletRequest request, HttpS
18、ervletResponse response)throws ServletException, IOException Employee employee = new Employee();employee.setEid(request.getParameter("eid");employee.setEname(request.getParameter("ename");IEmployeeDAO employeeDAO = new EmployeeDAO();if (employeeDAO.delete(employee) request.setAtt
19、ribute("message", "删除成功!");search(request,response); else request.setAttribute("employee", employeeDAO.getById("eid");request.setAttribute("message", "操作失败!");request.getRequestDispatcher("/delete.jsp").forward(request,response);
20、七、UML视图(主要为用例图、类图、时序图、系统框架图等)用例图:类图:系统框架图:八、数据字典(ER关系图与数据库表)E-R关系图:员工信息表:属性名意义数据类型取值范围主键其他约束备注Eno工号字符串0001-9999是Ename姓名字符串否Enative籍贯字符串否Etime入职时间字符串否EMaritalstatus婚姻状况判断否是/否是否已婚Egraduate school毕业院校字符串否Eworkyeas工作年限时间否员工基本工资表:属性名意义数据类型取值范围主键其他约束备注wage工资字符串0001-9999是Eno在职人员工号字符串否wageslevel工资等级字符串否考勤情况
21、表:属性名意义数据类型取值范围主键其他约束备注Eno工号字符串否checkintime签到时间字符串否absencetime离开时间字符串否date年月日字符串否overtime加班时间字符串否missingpaper请假条字符串否attendancereward考勤奖励字符串否九、系统测试结果(主要功能界面效果截图)登入界面截图: 个人主界面:增加员工信息界面:信息查询界面:信息修改界面:注销界面:十、实验结论与系统评价(主要是已完成的情况,系统仍存在哪些问题与不足,以及拟采用什么技术解决等。)通过这次的实训,我感觉我学会了很多知识。J2EE是开发企业应用很好 的一项技术或者说平台它的内涵非
22、常丰富,使用人群也非常庞大,有很多最佳实践,优秀的工具,优秀的API和框架, SpringFramework,是一个比较新的开源框架很少有一个项目可以像它那样为JavaJ2EE的开发提供强有力的基础架构,同时又提供丰富的实用类和扩展。 首先就是对J2EE开源框架有了一个更深层次的了解J2EE框架的优点: 1.简化结构 J2EE平台支持简化的、基于组件开发模型,由于J2EE基于Java编程语言和J2SE平台,它提供了编写一次,随处运行的可移植性,遵循J2EE标准的所有服务器都支持该模型。另外,J2EE还支持异构环境。基于J2EE的应用程序不依赖任何特定操作系统、中间件或硬件。把其部署到异构环境中
23、,节省了由自己制订整个方案所需的费用。 2.提高开发效率 由于组件技术的使用,可以按照开发人员的技能对应用程序开发进行分工,并行开发,提供整体开发效率。例如:图形设计师创建JSP模板,商业逻辑由该领域的专家完成,JSP页面由Java工程师完成,应用程序的装配和部署由团队中其他的成员完成,其中许多工作可以同时进行,有助于加速应用程序的开发。 3.可移植性强 4.重用性好 5.易于维护 基于组件的设计简化了应用程序的维护。由于组件可以被独立地更新和替代,通过更新应用程序中特定的组件,新的功能可以被很容易地增加。 6.可伸缩性 企业必须要选择一种服务器端平台,以便满足那些在它们系统上进行商业动作大批
24、新客户。基于J2EE平台的应用程序可被部署到各种操作系统上,例如,可被部署到高端UNIX或其他的大型机系统上。J2EE领域的供应商提供了更为广泛的负载平衡策略,能消除系统中的瓶颈,允许多台服务器集成部署,实现可高度伸缩的系统,满足未来商业应用的需要。 7.被广泛接受 这之所以成为可能,主要是因为J2EE拥有广泛的业界支持和一些重要的“企业计算”领域供应商的参与,每一个供应商都对现有的客户提供了不用废弃自己已有投资的升级途径。由于基于J2EE平台的产品几乎能够在任何操作系统和硬件运行,现有的操作系统和硬件也能被保留使用十一、系统安装及使用说明1、 安装JDK 2、 安装MyEclipse 3、
25、安装Tomcat 4、 在MyEclipse环境中配置JDK,步骤如下: WindowPreferencesJavaInstalled JREs(右侧)AddStandard VM nextDirectory选择JDK 目录位置:如 C:Program FilesJavajdk1.6.0_18finish。 在Installed JREs中选中jdk1.6.0_18即可。 5、 在MyEclipse环境中配置Tomcat,步骤如下: WindowPreferencesMyEclipse Enterprise WorkbenchServersTomcat Tomcat 6.X JDK 选择jdk
26、1.6.0_18OK。 WindowPreferencesMyEclipse Enterprise WorkbenchServersTomcat Tomcat 6.X右侧Tomcat home directoryBrowser选择Tomcat地址。如:C:Program FilesApache Software FoundationTomcat 6.0。 上方Tomcat Server选项设为Enable。 WindowPreferencesMyEclipse Enterprise WorkbenchServers Integrated SandboxMyEclipse Tomcat6Disa
27、ble。6、 测试环境: 新建项目Web Project,ProjectName: WebDemo; J2EE Specification Level: Java EE5.0;Finish。 启动Tomcat 6.X:Run Server 装载项目:Add Deployment:WebDome 在IE中输入网址: http:/localhost:8088/WebDemo,则环境搭建成功安装说明: 1、数据库脚本导入MySql,或者根据脚本在不同类型的数据库管理系统中建立相应数据库,同时注意修改DbHelper类中的驱动连接,同时替换不同数据库的驱动程序。本例的驱动程序已经放置在WEB-INFl
28、ib下。 2、通过MyEclipse发布到Tomcat6.x,启动Tomcat就可以访问系统。12、 附件(主要源代码)public class AdminServlet extends HttpServlet Overridepublic void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException doPost(request, response);public void doPost(HttpServletRequest request, H
29、ttpServletResponse response)throws ServletException, IOException String method = request.getParameter("method");if (method = null) method = ""if (method.equals("login") login(request, response); else if (method.equals("insert") insert(request, response); else
30、if (method.equals("ssearchlist") ssearchlist(request, response);public void insert(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Admin admin =new Admin();admin.setAid(request.getParameter("aid");admin.setAname(request.getParameter(&
31、quot;aname");admin.setApass(request.getParameter("apass");admin.setAids(request.getParameter("aids");admin.setAphone(request.getParameter("aphone");SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");/ 设置日期格式admin.setAItime(df.format(new Dat
32、e();IAdminDAO adminDAO = new AdminDAO();if (adminDAO.insert(admin) request.setAttribute("message", "登记成功!"); else request.setAttribute("message", "操作失败!");private void login(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOEx
33、ception String rand = (String) request.getSession().getAttribute("rand");String code = request.getParameter("code");if (!code.equals(rand) request.setAttribute("message", "验证码不正确!");request.getRequestDispatcher("/login.jsp").forward(request,response)
34、; else String username = request.getParameter("username");String password = request.getParameter("password");IAdminDAO adminDao = new AdminDAO();Admin admin = adminDao.login(username, password);if (admin = null) request.setAttribute("message", "数据库连接异常!");requ
35、est.getRequestDispatcher("/login.jsp").forward(request,response); else if (Integer.parseInt(admin.getAid() > 0) HttpSession session = request.getSession();session.setAttribute("admin", admin);String path = request.getContextPath();/ 取项目名response.sendRedirect(path + "/welc
36、ome.jsp"); else request.setAttribute("message", "帐号密码错误!");request.getRequestDispatcher("login.jsp").forward(request,response);public void search(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException Employee employee = new E
37、mployee();employee.setEid(request.getParameter("eid");IEmployeeDAO employeeDAO = new EmployeeDAO();PageUtil pageUtil = new PageUtil(request);pageUtil.setPageSize(6); / 设置分页大小int pageSize = pageUtil.getPageSize();int rsCount = employeeDAO.getRsCount(employee);/ 获得记录总数pageUtil.setRsCount(rsC
38、ount);int pageCount = pageUtil.getPageCount();/ 计算页数int currentPage = pageUtil.getCurrentPage();/ 获得当前页String pageTool = pageUtil.createPageTool(PageUtil.BbsText);/ 创建分页工具条request.setAttribute("pageTool", pageTool);ArrayList<Employee> list = employeeDAO.search(employee,pageSize,curre
39、ntPage);request.setAttribute("employeelist", list);request.getRequestDispatcher("/employeewage.jsp").forward(request,response);public void insert(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Employee employee = new Employee(); empl
40、oyee.setEid(request.getParameter("eid"); employee.setEname(request.getParameter("ename"); employee.setEworkyear(request.getParameter("eworkyear"); employee.setEgraduateschool(request.getParameter("egraduateschool"); employee.setEnative(request.getParameter(&qu
41、ot;enative"); employee.setWmaritalstatus(request.getParameter("wmaritalstatus"); employee.setEtime(request.getParameter("etime"); IEmployeeDAO employeeDAO = new EmployeeDAO(); if (employeeDAO.insert(employee) request.setAttribute("message", "账户添加成功!"); re
42、quest.getRequestDispatcher("/register.jsp").forward(request, response); else request.setAttribute("message", "操作失败!"); request.getRequestDispatcher("/register.jsp").forward(request, response); public void change(HttpServletRequest request, HttpServletResponse
43、response)throws ServletException, IOException String eid = request.getParameter("eid");IEmployeeDAO employeeDAO = new EmployeeDAO();request.setAttribute("employee", employeeDAO.getById(eid);if (i=1) request.getRequestDispatcher("/edit.jsp").forward(request, response); e
44、lse if (i = 2) request.getRequestDispatcher("/delete.jsp").forward(request,response);public void deleteH(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Employee employee = new Employee();employee.setEid(request.getParameter("eid");em
45、ployee.setEname(request.getParameter("ename");IEmployeeDAO employeeDAO = new EmployeeDAO();if (employeeDAO.delete(employee) request.setAttribute("message", "删除成功!");search(request,response); else request.setAttribute("employee", employeeDAO.getById("eid&q
46、uot;);request.setAttribute("message", "操作失败!");request.getRequestDispatcher("/delete.jsp").forward(request,response); public void update(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException Employee employee = new Employee();String eid=request.getParameter("eid");IEmployeeDAO employeeDAO = new EmployeeDAO();emp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年电离辐射计量标准器具项目资金筹措计划书代可行性研究报告
- 编制说明-交通船闸闸阀门制造质量检验规程
- 2024年广东省深圳实验教育集团中考英语三模试卷
- 上海市市辖区(2024年-2025年小学五年级语文)人教版课后作业(下学期)试卷及答案
- 上海市县(2024年-2025年小学五年级语文)人教版竞赛题(下学期)试卷及答案
- 一年级数学计算题专项练习汇编
- 三年级数学上册教案
- 智能照明系统技术规格书
- 包装用皮袋信封小袋产业深度调研及未来发展现状趋势
- 名片纸半成品产业深度调研及未来发展现状趋势
- 消防系统供电与布线
- 疯牛病检测规范与防控
- 小学生写字教学经验交流
- 施工现场保卫方案
- 风力光伏新能源发电企业组织架构和部门职能
- 《柔性接口给水管道支墩》(10S505国标图集)简介-国标10s505
- 河沙开采工艺流程
- 机井通电标准化设计(200kVA
- [宝典]妻管严攻略游戏生活休闲
- 培养学生良好学习习惯的物理教学策略
- 湖北省博物馆英文导游词
评论
0/150
提交评论