《JavaEE》课程设计报告实验
(完整版)javaee实验报告

南华大学计算机科学与技术学院实验报告(2011 ~2012 学年度第2学期)课程名称_________ Java EE ______ 实验名称Java EE课程实验姓名陈楷学号20094440110专业计算机科学班级计算机09级1与技术班地点8-209 教师谢卫星、系统需求分析会员部分:1登录注册功能:用户可以在本购物系统注册,并使用注册信息登陆•2•图书浏览:Site visitor可以自由浏览图书信息,并在注册后可购买•3.购买:会员在选中图书后可以把图书添加到自己的购物车中,还可以在购物车中删除图书管理员部分:1登录功能:输入管理员名称和密码进入的是后台的图书信息管理中心2 •添加图书:管理员可以在后台添加图书信息3•修改图书信息:管理员可以在后台修改图书信息4•删除图书:管理员可以在后台删除图书信息图书部分:1图书浏览可以在前台自由浏览,用户可以自由购买该图书•3•添加图书:管理员可以在后台添加图书信息4•修改图书信息:管理员可以在后台修改图书信息5•删除图书:管理员可以在后台删除图书信息其他另外实现的功能:1. 可以按图书书名和作者关键字搜索图书。
2. 可以分类浏览图书。
二、系统设计2.1设计数据模型book info表注释:图书信息表user表注释:会员信息表未登录首页界面注册界面£.1 |>14 i EN M K E&L V th £*■ pj-»c l ^Ui 崔i.7l# |£*L j 登录成功页面购买图书界面购物车界面后台添加图书界面-.iWfJ,-亞-讎户时后台查看/编辑/删除图书界面后台修改图书信息界面X laCHUt. jt53u'l -Xdi口Js>-肯沁込」抽*宙也劭17息T Ii:iP5t«T. JIp.XhLjLJ^taiuLc. jsi>叫口£・T KT貝,:书苦宀卷.书号凹曲书廿类;C| J^feE - K 改Id 书恺艮二 JbJi<MLi l*ib - E K 冷b-stp f/la£-alh*rt aDgC^Bui ■ftuqv'* s 1 jcp? ixi-'l 1L 154713■• J>«, Mi.戒加图书佶Jfe• itaa・1L -*斗S*tt PSPJIfi-S KySOLfiJRM 昭 i h 蚁创 PE»和 H 旳nit 7 9L 扎卷思 H ft 叭■ g i ■•匕-m r'E :可七 F ■■. .irt - ■-. ■" r _v£'irnHi£r 井SUSJbTSS 国且玄用的航干*2.3控制层设计(servlet ) login Servlet.java对登录进行管理,根据是否成功登录及用户类型进行判断,给出不同的登录提示及返回页面。
关于javaee的课程设计

关于javaee的课程设计一、课程目标知识目标:1. 掌握Java EE的基本概念,了解其体系结构和核心组件;2. 学会使用Servlet技术进行Web编程,掌握请求和响应的处理方法;3. 熟悉JSP页面开发,能够运用常用指令和脚本语言实现动态页面;4. 了解Java EE的数据库连接技术,掌握JDBC的基本使用方法;5. 掌握Java EE的会话管理,了解Session和Cookie的作用及应用场景。
技能目标:1. 能够独立搭建Java EE开发环境,配置服务器和数据库;2. 能够编写Servlet程序,实现用户请求的接收和响应;3. 能够运用JSP技术,实现动态页面的设计与开发;4. 能够通过JDBC连接数据库,实现数据的增删改查操作;5. 能够运用会话管理技术,实现用户状态的保持和共享。
情感态度价值观目标:1. 培养学生主动探索、积极进取的学习态度,增强解决实际问题的自信心;2. 培养学生的团队协作意识,学会与他人共同解决问题,提高沟通能力;3. 培养学生养成良好的编程习惯,注重代码规范和性能优化;4. 增强学生的网络安全意识,了解Java EE应用的安全机制。
本课程针对高年级学生,在已有Java基础的前提下,深入讲解Java EE技术。
课程性质为理论与实践相结合,注重培养学生的实际动手能力。
在教学过程中,教师需关注学生的个体差异,提供个性化指导,确保学生能够达到课程目标,为后续的Java EE项目开发打下坚实基础。
通过本课程的学习,学生将能够掌握Java EE的基本知识和技能,为今后从事Web开发工作奠定基础。
二、教学内容1. Java EE概述- 体系结构及核心组件介绍- 开发环境搭建(含服务器和数据库配置)2. Servlet技术- Servlet生命周期及方法- Request和Response对象的使用- ServletConfig和ServletContext对象的作用3. JSP技术- JSP页面基本结构- JSP指令和脚本语言- JSP内置对象及其作用4. 数据库连接技术- JDBC基本概念- 数据库连接池技术- 常用SQL语句及操作5. 会话管理- Session和Cookie机制- 会话管理策略及应用场景- 用户登录状态保持6. Java EE安全- Web应用安全策略- 认证和授权机制- 常见安全漏洞及防护措施教学内容依据课程目标进行选择和组织,以教材为基础,注重科学性和系统性。
JavaEE实验报告

JavaEE学期实验实验报告教务管理系统小组成员:周亮俊201026810130软工1007 陈志强201026810103软工1005 王超201026810116软工1006目录第一章系统概述 (3)第一节实验目的 (3)第二节实验环境 (3)第三节系统架构 (3)第二章需求提取 (4)第一节需求分析 (4)第二节用例分析 (4)第三章数据库设计 (6)第一节数据库表设计 (6)第二节 ER图设计 (7)第四章系统界面 (8)第一节登录界面 (8)第二节学生登录 (8)第三节教师登录 (10)第四节管理员登录 (13)第五章总结 (16)第六章源代码(见附件) (16)第一章系统概述第一节实验目的:利用本学期所学的Struts2、Hibernate和Spring知识,对三个框架进行整合实现一个简单的教务管理系统。
第二节环境架构开发环境基于Myeclipse9,Tomcat7.0,Jdk1.6;数据库应用MySQL。
第三节系统架构本系统基于Struts2、Spring、Hibernate三种框架之间的整合。
利用Struts2框架在Web层实现了MVC开发,利用Hibernate框架在数据库层进行对象关系映射,利用Spring框架协调对象之间调用、降低耦合性。
(SSH分别为Struts2.1,Spring3.0,Hibernate3.3)以下是整合结构图:三大框架整合图第二章需求提取第一节需求分析:本教务管理系统包括以下3个模块:1. 学生模块:学生通过登陆验证后进入系统,可以查询自己的相关信息,课程的相关信息,成绩的相关信息,同时还可以进行选课,查询选课结果。
2. 教师模块:教师通过登陆验证后进入系统,可以查询自己的相关信息和所教的班级的学生信息,可以选择授课(即教师选课),同时教师还可以上传学生成绩。
3. 教务处模块:管理员(教务处)通过登陆验证后进入系统,可以查询自己的相关信息,同时可以实现对学生信息的管理,包括学生信息的增删改;教师信息的管理,包括教师信息的增删改;授课信息的管理;课程信息的管理,包括课程信息的修改或删除;选课信息管理,包括学生成绩的修改(若教师发现上传的成绩不对时可向教务处说明情况并修改学生成绩)等。
javaee实验报告六

实验六基于JSP和JavaBean设计简单计算器班级计算机1591 姓名何昕曦燕学号36【实验目的】1、掌握JavaBean创建和使用方法;2、掌握JSP+JavaBean进行Web应用程序的开发。
【实验内容】1、设计诸如以下页面的简单计算器,完成加减乘除2.将加减乘除部分写在JavaBean中,在JSP页面中调用显示计算结果【实验步骤】1、按照JavaBean书写规则,实现加减乘除;2、主页面JSP中,设置供客户端输入的文本框。
并显示最终计算结果。
【实验结果】程序运行效果示例:程序运行效果如下图所示:程序源代码:1. 实现Javabeanpackage cn.csdn.web.domain;import java.math.BigDecimal;public class Calculate {private Double firstNum;private char operator;private Double secondNum;private Double result;public Calculate() {super();}public Double getFirstNum() {return firstNum;}public void setFirstNum(Double firstNum) {this.firstNum = firstNum;}public char getOperator() {return operator;}public void setOperator(char operator) {this.operator = operator;}public Double getSecondNum() {return secondNum;}public void setSecondNum(Double secondNum) {this.secondNum = secondNum;}public Double getResult() {return result;}public void setResult(Double result) {this.result = result;}public Double calculate() {switch (this.operator) {case '+':this.result = this.firstNum + this.secondNum;break;case '-':this.result = this.firstNum - this.secondNum;break;case '*':this.result = this.firstNum * this.secondNum;break;case '/':if (this.secondNum == 0) {System.out.println("除数不能为零");} else {this.result = this.firstNum / this.secondNum;BigDecimal bigDecimal = new BigDecimal(this.result);bigDecimal = bigDecimal.setScale(2,BigDecimal.ROUND_HALF_UP);this.result = bigDecimal.doubleValue();}break;default:System.out.println("无法判断");break;}return result;}}2.实现JSP<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><style>table {border-collapse: collapse;}</style><title>My JSP 'calculate.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><div align="center"><h1>计算器简单实现</h1><hr color="red"><div><!-- 创建一个javabean组件 --><jsp:useBean id="calculate" class="cn.csdn.web.domain.Calculate"></jsp:useBean><jsp:setProperty property="*" name="calculate" /><%calculate.calculate();%>计算结果是:<jsp:getProperty property="firstNum" name="calculate" /><jsp:getProperty property="operator" name="calculate" /><jsp:getProperty property="secondNum" name="calculate" />=<jsp:getProperty property="result" name="calculate" /> </div><form action="./calculate.jsp" method="post"><table border="1px"><caption>计算器</caption><tr><td colspan="2"></td></tr><tr><td>第一个参数:</td><td><input type="text" name="firstNum" /></td></tr><tr><td>运算符</td><td><select name="operator"><option selected="selected">+</option><option>-</option><option>*</option><option>/</option></select></td></tr><tr><td>第二个参数:</td><td><input type="text" name="secondNum" /></td></tr><tr><td colspan="2"><input type="submit" value="计算" /></td></tr></table></form></div></body></html>【实验总结与心得】经过这次实验,我基本掌握JavaBean创建和使用方法,掌握JSP+JavaBean 进行Web应用程序的开发。
javaee实验报告总结

javaee实验报告总结以下是一份由Java EE实验报告总结所组成的文章:Java EE实验报告总结一、引言Java EE(Java Platform, Enterprise Edition)是Java平台的一部分,专门用于开发和部署企业级应用程序。
在本次实验中,我们学习了Java EE 的基本概念和各个组件的使用方法,并通过实践项目来巩固所学的知识。
本文将对实验过程与结果进行总结,并提出一些建议。
二、实验过程1. 实验目标本次实验旨在使学生了解Java EE的基本概念,掌握Servlet、JSP、EJB 等组件的开发与部署方法,以及使用Tomcat和Glassfish等服务器进行应用程序的部署。
2. 实验步骤本次实验分为三个阶段,分别是Servlet、JSP和EJB的开发与部署。
a. Servlet开发与部署首先,我们学习了Servlet的基本概念,并使用Eclipse IDE进行开发。
我们创建了一个HelloWorldServlet,并部署到Tomcat服务器上进行测试。
通过这个实验,我们深入理解Servlet的工作原理以及HTTP协议。
b. JSP开发与部署其次,我们学习了JSP的基本语法和用法,并结合Servlet进行动态网页的开发。
我们创建了一个简单的登录页面,并使用JSP和Servlet实现用户登录功能。
这个实验使我们熟悉了JSP的模板引擎特性以及与Java代码的交互方式。
c. EJB开发与部署最后,我们学习了EJB(Enterprise JavaBeans)的基本概念和使用方法。
我们创建了一个简单的用户管理系统,使用EJB实现对用户信息的增删改查功能。
通过这个实验,我们了解了EJB的分层和事务管理的特性。
3. 实验结果通过本次实验,我们成功完成了三个阶段的开发与部署,并测试了各个组件的功能。
我们的应用程序能够正确地响应用户请求并返回相应的结果。
实验结果表明,所学习的Java EE知识能够实现企业级应用的开发需求。
javaee实训报告

javaee实训报告介绍本文是关于JavaEE实训的报告,旨在总结和分享我在实训过程中所获得的经验和技能。
实训内容主要包括实际项目开发、团队合作以及技术应用等方面。
通过这次实训,我深刻理解了JavaEE的概念和应用,提升了自己的编程能力和团队协作能力。
一、实训背景本次实训是作为我大学课程的一部分,旨在提供给我一个实际项目开发的机会,实践所学的JavaEE知识。
实训项目是一个基于JavaEE 的电子商务网站,要求具备用户注册、商品浏览、购物车管理、订单处理等功能。
我被分配到一个三人团队中,并担任项目经理一职,负责整个项目开发的协调和管理。
二、需求分析在项目开始前,我们进行了详细的需求分析和讨论,根据客户的要求和功能需求,制定了详细的开发计划和任务分配。
我们明确了网站的用户角色、功能模块和技术要求,确保项目的顺利进行。
三、技术选型基于项目需求和我们团队的技术背景,我们选择了以下技术来完成项目的开发:1. 后端技术:JavaEE、Spring、MyBatis2. 前端技术:HTML、CSS、JavaScript、Bootstrap3. 数据库:MySQL四、开发过程在项目开发的过程中,我们按照敏捷开发的理念,采用迭代式的开发方式。
我们将整个开发过程分为多个迭代周期,每个周期内完成特定的功能开发、测试和优化。
1. 项目搭建:我们使用Maven构建项目,配置了所需的依赖和插件,并进行了目录结构的规划和配置。
同时,我们使用Git进行版本控制,确保团队成员之间的协作效率。
2. 数据库设计:根据需求分析阶段的结果,我们设计了合适的数据库结构,并使用MySQL进行建模和实现。
我们考虑了数据表的关系、索引和性能优化等因素。
3. 前端开发:我们使用HTML和CSS进行页面的设计和布局,并结合JavaScript和Bootstrap实现了用户界面的交互和响应。
我们注重页面的美观性和用户体验,提高了网站的易用性。
4. 后端开发:我们依托于JavaEE框架,使用Spring进行控制反转和依赖注入,并利用MyBatis实现了数据库的访问和操作。
javaee实训报告

javaee实训报告JavaEE 实训报告在当今数字化的时代,JavaEE 技术作为企业级应用开发的重要支柱,具有举足轻重的地位。
为了更深入地掌握这一技术,我参加了一次JavaEE 实训,通过这次实训,我不仅在技术层面上有了显著的提升,还在团队协作和问题解决能力方面获得了宝贵的经验。
本次实训的目标是让我们能够熟练运用 JavaEE 相关技术,开发出一个具有实际应用价值的企业级项目。
实训的内容涵盖了 JavaEE 体系中的多个重要技术点,包括 Servlet、JSP、JDBC、JavaBean 等。
在实训的开始阶段,我们首先对 JavaEE 的整体架构和核心概念进行了系统的学习。
通过理论知识的讲解和实际案例的分析,我逐渐理解了 JavaEE 多层架构的优势,以及如何在不同的层次中实现业务逻辑和数据处理。
在 Servlet 技术的学习中,我深刻体会到了其作为 Web 应用控制层的重要性。
通过编写 Servlet 程序,我们能够处理客户端的请求,并根据业务逻辑进行相应的响应。
例如,实现用户登录验证、数据查询和提交等功能。
在实际的编程过程中,我学会了如何获取请求参数、设置响应头和内容,以及如何与其他组件进行交互。
JSP(JavaServer Pages)作为视图层的技术,为我们提供了一种将动态内容与静态页面相结合的便捷方式。
通过在 JSP 页面中嵌入 Java代码片段和表达式,我们能够根据业务数据动态生成 HTML 页面。
这使得页面的展示更加灵活和个性化,同时也提高了开发效率。
在实际项目中,我们使用JSP 来构建用户界面,展示数据列表、表单等内容。
JDBC(Java Database Connectivity)则是连接数据库的关键技术。
在实训中,我们学习了如何使用JDBC 来连接数据库、执行SQL 语句、处理结果集等。
通过实际操作,我掌握了数据库的基本操作,如数据的增删改查,以及如何优化数据库访问以提高性能。
javaee实训报告

javaee实训报告一、引言JavaEE是指Java Enterprise Edition,是Java平台上使用的用于企业级应用的技术规范和API,包括Servlet、JSP、EJB、JDBC等。
在本学期的JavaEE课程中,我们通过实践学习了这些技术的应用和开发,最终完成了一个JavaEE项目的实训。
二、实训项目概述本次实训项目采用MVC架构,实现一个简单的在线问答网站,包括用户注册、登录、提问、回答等功能。
具体技术方案如下:1. 前端采用Bootstrap和jQuery框架设计,实现页面布局和交互功能。
2. 后端采用JavaEE技术开发,使用Servlet和JSP实现控制器和视图,使用JDBC连接MySQL数据库实现数据持久化。
3. 采用Tomcat作为Web服务器,部署和运行项目。
三、项目演示和分析下面通过几个功能模块的演示,具体展示项目的实现情况和技术细节。
1. 注册和登录用户可以通过注册页面进行注册,输入用户名、密码和邮箱等信息。
注册时需要验证用户名和邮箱的唯一性,如果存在则提示用户重新输入,否则将用户信息存储到数据库中。
注册成功后会自动跳转到登录页面,并提示用户注册成功。
用户在登录页面输入用户名和密码后提交表单,后台使用JDBC查询数据库中是否存在该用户,并根据查询结果进行登录状态的设置。
如果查询结果为真,则登录成功并跳转到主页;反之则提示用户用户名或密码错误。
2. 提问和回答登录后的用户可以进入提问界面,在输入问题和标签后提交问题。
后台使用JDBC将问题信息存储到数据库中,并返回问题ID。
其他用户可以在主页或标签页中查看所有问题,并根据标签或搜索关键字进行筛选。
当用户点击某个问题时,会跳转到问题详情界面。
在问题详情界面,用户可以查看问题的详细信息和已有的回答,并可以提交自己的回答。
后台使用JDBC将回答信息存储到数据库中,并将回答信息显示在问题详情页中。
3. 个人信息登录成功后,用户可以在个人信息界面中查看和修改自己的信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《JavaEE》课程设计报告题目名称:基于struts2、Spring、Hibernate构建一个网上投票系统指导教师:_______ _________ _______专业班级:__ ____ ______ _组长:________ _____ ______成员:__ 娄宇杨浩亮张益民林强 __ __电子邮件:____ 15224891@_ ______ _设计时间: 2011 年 11 月 16 日至2011 年 12 月 21 日成绩:______目录基于struts2、Spring、Hibernate构建一个网上投票系统 (3)一、问题描述及设计思路 (3)1.1 需求分析 (3)1.2业务分析 (3)1.3投票用例 (5)二、详细设计过程 (8)2.1 创建Struts2应用 (8)2.2 添加Hibernate (8)2.3 添加Spring应用 (9)2.4 领域模型层设计 (9)三、结论和体会 (13)3.1 结论 (13)3.2 体会 (13)四、附录 (14)附录A 其它图表 (14)附录B 主要程序代码 (15)五、参考文献 (21)基于struts2、Spring、Hibernate构建一个网上投票系统一、问题描述及设计思路对于开发一个投票管理系统来说,应该实现什么功能,如何实现这个功能都是开发人员必须了解的问题。
将这个系统的需求、业务流程以及用例进行细致的分析、讲解。
1.1 需求分析随着网络应用的日益普及,投票的形式也发生了很大的变化。
目前在很多的场合,投票已经开始由原始方式转变为网上投票。
由于具有方便、快捷、成本低、调查范围广等优点,网上投票已经被广泛的应用。
如何管理好网上投票信息内容也变得十分的重要,我们所设计开发的投票管理系统,正是基于这种需求诞生的。
本投票管理系统分为用户提供网上投票和投票信息管理两大类功能。
通过投票管理功能可以完成增加新投票、修改原有投票信息、查找投票等功能。
本系统的界面友好、操作简便,适用于任何网站进行投票调查。
本系统的基本功能如下所述。
●使用本系统的网上投票功能,用户只要登录指定的网页,就可以进行投票操作,并可以得到投票结果信息。
●使用本网站的登录功能,管理员可以登录系统,然后对相关的信息进行管理。
●使用本系统的创建投票功能,管理员可以创建一个新的投票功能。
●使用本系统的管理投票功能,管理员可以对系统已经存在的投票进行更新,包括增加投票子选项、删除投票子选项、修改投票类型、更改投票状态。
●使用本系统的查找投票功能,管理员可以通过输入部分或者全部的投票主题查找对应的投票信息。
●使用本系统的管理员管理功能,管理员可以修改本人的密码或者创建一个新的管理员。
●使用本系统的注销功能,管理员可以安全的退出本系统。
1.2业务分析投票管理系统由前台和后台两部分组成:前台显示投票并可以执行投票操作,后台是对投票信息和管理员信息进行管理。
下面分别从使用前台和使用后台两个角度来分析本系统的业务流程。
1.2.1显示投票用户进入投票页面如图,进行投票操作。
1.2.2管理投票1.2.2.1后台登录页面只有管理员可以进入后台对相关的信息进行维护,管理员在维护信息之前必须先登录系统。
1.2.2.2后台主页面当成功登录系统后进入后台主页面,在后台主页面的左侧显示欢迎信息和系统当前所有投票数量信息。
同时该页面提供了相关操作的链接,单击相应的链接即可进行相应的操作。
各链接具体实现的业务如下。
●管理投票链接:当管理员单击“投票管理”的文字或者图标链接后,进入管理投票页面,可以对系统已有投票信息进行维护。
●创建投票链接当管理员单击“创建投票”的文字或者图标链接后,进入创建投票页面,可以增加新的投票选项。
●查找投票链接:当管理员单击“查找投票”的文字或者图标后,进入查找投票页面,可以根据所输入的投票主题信息(可以是完整的,也可以是关键字)在系统已有的投票中进行查找。
●管理员管理连接:当管理员单击“管理员管理”链接后,进入管理员管理页面,可以修改当前管理员密码,增加新的管理员。
●投票主页链接:当管理员单击“投票主页”链接后,可以跳转到后台主页面。
●注销链接:当管理员单击“注销后“链接后,可以安全退出系统。
1.3投票用例用例名称:投票简要说明:允许所有用户进行投票操作基本事件流:(1)用户进入投票页面(2)系统显示投票主题及投票内容(3)用户进行投票(4)系统显示投票结果(5)用例结束异常事件流:(1)投票已经关闭,系统给出错误提示(2)用户所在IP已经投过票,系统出现错误提示用例名称:创建投票简要说明:允许管理员创建新投票前置条件:管理员已经登录后台系统(1)管理员进入创建投票页面(2)管理员填写新投票主题相关信息并单击下一步(3)管理员填写新投票选项信息并单击下一步(4)系统增加新投票信息并显示(5)用例结束异常事件流:(1)填写信息错误,系统给出提示信息(2)管理员中途单击其他页面链接,跳转相应页面 用例名称:查找投票简要说明:允许管理员查找投票前置条件:管理员已经登录后台系统基本事件流:(1)管理员进入查找投票页面(2)管理员输入完整或部分的投票主题并提交(3)系统显示查找结果(4)用例结束异常事件流:(1)输入信息有误,系统给出错误提示(2)数据库没有符合要求的信息,系统给出提示用例名称:增加投票选项简要说明:允许管理员为某投票主题增加子选项气质条件:管理员已经登录后台系统基本事件流:(1)管理员进入修改投票信息页面(2)管理员单击“新增加一个投票选项“链接(3)管理员输入新增加选项内容(4)用例结束异常事件流:(1)输入信息有误,系统给出错误提示(2)数据库没有符合要求信息,系统给出提示用例名称:删除投票选项简要说明:允许管理员删除某投票选项的子选项气质条件:管理员已经登录后台系统基本事件流:(1)管理员进入修改投票信息页面(2)管理员单击要删除选项相应的“删除”链接(3)系统删除相应的选项(4)用例结束异常事件流:当剩余选项个数小于等于2时,继续删除系统提示错误 用例名称:修改投票选项简要说明:允许管理员修改投票信息前置条件:管理员已经登录后台系统(1)管理员进入修改投票信息页面(2)管理员修改投票信息并单击“更新”按钮(3)系统更新投票信息(4)用例结束异常信息流:输入信息有误,系统给出提示用例名称:修改密码简要说明:允许管理员修改本人的登录密码前置条件:管理员已经登录后台系统基本事件流:(1)管理员进入修改密码页面(2)管理员输入信息并提交(3)系统显示现修改成功(4)用例结束异常信息流:(1)输入信息有误,系统给出错误提示(2)旧密码输入不正确,系统给出提示(3)两次输入新密码不一致,系统给出提示 用例名称:创建新管理员简要说明:允许管理员创建一个新管理员前置条件:管理员已经登录了后台系统基本事件流:(1)管理员进入创建新管理员页面(2)管理员输入信息并提交(3)系统显示创建成功(4)用例结束异常信息流:(1)输入信息有误,系统给出错误提示(2)两次输入密码不一致,系统给出提示(3)新管理员用户名已存在,系统给出提示二、详细设计过程到目前为止我们已经对于整个投票系统的需求有了一定的了解,下面将要设计到具体的实现方案。
本节将从两个方面入手进行系统设计,包括技术方案(使用什么样的技术来开发设计这个系统)和数据库设计(本系统设计到的数据信息如何存取)。
下面就是系统设计的详细内容。
通过前面的分析设计,我们已经对整个投票管理系统的工作流程、工程构架有了深入的了解,下面开始进入详细设计和代码的实现过程。
2.1 创建Struts2应用✧在stc根目录添加配置文件struts.Xml✧修改web.xml文件内容✧引入jar包2.2 添加Hibernate✧引入jar包包括hibernate3.jar、cglib-nodep-2.14_3.jar、dom4j-1.6.1.jar、commons-collections.jar、log4-1.2.13.jar、c3p0.0.90.4.jar、jta.jar、antlr-0.7.6.jar✧创建对应数据库的持久化类一共需要创建4个持久化类,分别为Admin.java、Vote.java、Votecontext.java、Voterjava。
它们各自对应的代码将在具体实现小节中提供需要注意的是,在写Hibernate持久类的时候,一定要遵循如下所述的规范。
●持久化类符合Javabean的规范,包含一些成员变量,以及与之对应的getter、setter方法●持久化类有一个ID属性,用来唯一标示Customer类的每一个对象。
在面向对象术语中,这个ID属性被称为对象标识符(OID,Object Identifier),通常它都用整数表示。
●Hibernate要求持久化类必须提供一个不带参数的默认构造方法。
✧创建对象关系映射文件对应持久化类我们也需要创建4个映射文件,分别为Admin.hbm.xml、Vote.hbm.xml、Voter.hbm.xml、Votecontext.hbm.xml。
它们各自对应的代码将在具体的实现小节中提供。
✧创建Hibernate配置文件hibernate.cfg.xml2.3 添加Spring应用✧引入jar包包括spring.jar和sturts2-spring-plugin-2.08.jar✧创建Spring配置文件applicationContext.xml✧在Web.xml中添加Spring监听2.4 领域模型层设计2.4.1持久层设计持久层是通过Hibernate实现的,采用DAO模式进行的开发设计。
在设计过程中,我们所有的实现类都继承了HibernateDaoSupport,通过Hibernate 提供的HQL语言执行数据操作,避免了手写大量SQL语句繁琐、易错的弊端。
具体的实现过程可以分为以下几步。
(1)编写接口(2)编写实现类(3)在applicationContext.xml中配置DAO。
2.4.2业务层设计业务层是一个典型的Web应用程序中是作为中间组件而存在的。
2.4.3表示层设计✧管理员登录模块设计后台管理员登录是后台系统管理的入口,只有成功登录系统后才可以进行信息管理。
首先管理员进入登录界面。
输入用户名、密码以及图形校检码并单击“确定”按钮,如果信息无误则进入后台管理系统这页面;如果输入信息有误,系统将给出提示信息。
✧创建投票模块该模块主要用于系统中添加一个新的投票,包括投票主题,投票类型、投票是否发布、投票选项内容。
输入投票的主题、子选项个数、选择投票类型以及是否马上开放并单击“下一步”按钮。
如过输入有误,系统给出提示信息。
创建投票选项的代码。