《JSP程序设计课程设计实训指导书.doc》由会员分享,可在线阅读,更多相关《JSP程序设计课程设计实训指导书.doc(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、项目(实训)指导书系 别: 计算机系 专 业: 软件工程 课 程: JSP程序设计课程实训 制 订 人: 刘肃平 审 核 人: 聂军 制订时间: 2016年12月 目 录第一部分 实训安排1一、实训目的1二、时间安排1三、考核标准1四、实训要求2第二部分 实训内容3项目一:银行账户管理系统31、项目来源及背景32、系统需求分析32.1 需求描述32.2 系统用况图42.3 系统概念模型43、系统总体设计63.1 系统总体功能结构64、系统详细设计74.1 系统数据设计74.2 目录和包结构设计74.3 系统流程设计95、系统实现预览9项目二:在线选课系统151、项目需求1511系统概述1512
2、系统角色定义1513系统主用例图152、功能描述1621登录1622学生选课模块1623 学生选课结果浏览模块1724 教师查看所有课程选择结果模块1725 教师添加课程模块173、数据描述1831 数据库表间关系1832 数据库基本结构1933 数据说明194、系统原型2041登录2042学生选择课程2143选课结果一览2144 教师浏览课程选择结果2245 教师浏览课程选择结果22项目三:新闻中心管理系统241、项目来源及背景242、系统需求分析242.1 需求描述242.2 系统用况图242.3 系统概念模型263、系统总体设计263.1 系统总体功能结构263.2 功能描述264、系统
3、详细设计274.1 系统数据设计274.2 目录和包结构设计284.3 系统流程设计295、系统实现预览295.1 前台295.2 后台31项目四:网上书店331、项目来源及背景332、系统需求分析332.1 需求描述332.2 系统用况图332.3 系统概念模型343、系统总体设计343.1 系统总体功能结构343.2 功能描述354、系统详细设计354.1 系统数据设计354.2 目录和包结构设计374.3 系统流程设计395、系统实现预览39第三部分 实训报告构成44第一部分 实训安排一、实训目的JSP程序设计课程实训是计算机软件工程专业培养计划中的重要的实践教学环节。旨在通过完成一个项
4、目的开发,进一步巩固JSP程序设计、数据库技术基础等课程所学的知识,加深学生对JSP语言的理解,尤其是对JSP技术和MVC框架的理解,使学生进一步掌握环境构建、代码编写、文档阅读与理解、文档编写、软件测试、发行与部署等技能,进一步提高学生的学习能力、理解能力、表达能力、沟通能力及分工协作能力。二、时间安排按学期教学计划本次实训时间为2周,具体时间安排如表1所示。表1 JSP程序设计课程实训时间安排周 次星 期内 容备 注第15周周一动员大会题目简介小组选题、分工周二模块编码周三模块编码周四模块编码周五模块编码教师考核第16周周一模块编码周二模块编码周三整合各编码模块周四进行系统测试程序的打包和
5、发布整理文档撰写实训报告教师考核周五答辩、提交实训报告提交实训报告三、考核标准本次实训成绩以考核学生实训作品的完成情况为主要依据,并结合学生在实训的态度和考勤情况进行评定,具体考核指标如表2所示。出勤情况说明:累积缺勤超过5学时不能参加“优秀”评定;累积缺勤超过10学时不能参加“良好”评定;累积缺勤超过15学时不能参加“中等”评定;累积缺勤超过18学时且没有假条则没有实训成绩。表2 JSP程序设计课程实训考核指标考核要点所占分数出勤、纪律10实训作业20功能实现30实训报告20最终答辩20满 分100四、实训要求1、根据实训的目的、要求认真准备,在上机操作前详细阅读JSP程序设计课程实训指导书
6、。不迟到、不早退;严守课堂纪律;听从指导教师的指挥,在规定时间内完成相应的设计任务。每天向指导教师通报当日所做设计的进度及成果。2、教师以小组为单位为学生分配机器,在整个实训期间要求固定座位,并保证自己机器的安全及卫生。3、积极思维、认真操作、独立完成、遇到困难向指导教师提问,坚决杜绝抄袭他人成果的行为;设计结束后,按照指导教师给出的实训报告规范认真编写实训报告。4、在整个实训过程中,不许玩游戏、聊天以及做其它与设计无关的事情。 5、自觉保持实验室环境,实验结束后将自己座位周围的废弃物带走。6、未经指导教师允许不得擅自拆、挪计算机,实训结束后经指导教师检查完设备后方可离开实验室。第二部分 实训
7、内容项目一:银行账户管理系统1、项目来源及背景随着办公自动化的迅速发展,对企事业单位信息的自动化管理提出了很高的要求。对于银行来说,由于有大量的客户信息需要处理,因此银行帐户管理系统的开发与研究有一定的实用价值。 2、系统需求分析银行账户管理系统为用户提供账户申请、账户注销、存款、取款、查询帐户余额等主要业务,系统可以使用Web技术实现全部业务。2.1 需求描述使用银行账户管理系统中的账户申请,用户可以通过图形化的界面,输入登录信息(姓名、年龄、性别、住址、联系电话、身份证号等),申请自己的账户,系统要按照银行规则产生不能重复的用户帐号和用户密码,用户可以修改自己的密码。一个用户可以申请多个账
8、户。使用银行管理系统登录,用户可以登录进入本系统,只有进入系统才可以执行相关操作。使用银行账户管理系统中的账户注销,用户可以注销自己的账户。但注销之前,必须先把注销帐户中的钱全部取出,注销后用户仍然能查询自己帐户的交易数据信息。使用银行账户管理系统中的存款,用户可以通过图形化界面看到帐户中的余额,用户输入存款金额后,系统增加帐户中的金额,并显示当前的账户余额。使用银行帐户管理系统中的取款,用户可以通过图形化界面看到帐户中的余额,输入取款金额后,系统减少账户中的余额,并显示当前金额。使用银行账户管理系统中的查询帐户余额,用户可以查询当前账户中的余额和每一次的交易明细。银行账户管理系统之前,必须先
9、使用帐号和密码。经过系统验证后,才能使用系统中的业务服务,否则系统将拒绝服务;用户业务使用完毕以后,系统要提供登录注销功能,使用户离开系统。2.2 系统用况图根据业务分析,归纳出系统共有两个角色未注销用户和已注销用户。其各自用例如图1所示:银行账户管理系统图1系统用例图2.3 系统概念模型根据业务分析,可以得出系统类图,如图2所示,用以对系统中的数据进行归类,并描述其之间关系。图2 系统类图对系统功能进行设计,分别得出系统用户信息和交易信息的DAO类图,以及用户业务层和交易业务层类图。分别如图3、图4所示。图3 用户信息和交易信息的DAO类图图4 用户业务层和交易业务层类图3、系统总体设计3.
10、1 系统总体功能结构银行账户管理系统账户管理业务管理注册账户个人信息查询注销账户个人信息修改登录存款业务取款业务交易信息查询根据对用例的分析,可将银行账户管理系统分为:账户管理、业务管理和登录共三个模块,其系统功能结构如下图所示:4、系统详细设计4.1 系统数据设计根据对银行账户管理系统的分析,总结数据库Bank由t_user表和两张表构成,表的结构如表1和表2所示:表1 t_user表字段名数据类型是否为空是否唯一字段描述idintfasletrue主键userNamevarcharfasletrue用户名passwordvarcharfaslefasle密码userFlagbitfasle
11、fasle注销标志userAgeintfaslefasle用户年龄idCardvarcharfasletrue身份证号telvarcharfaslefasle联系电话cityvarcharfaslefasle居住城市userAddressvarcharfaslefasle详细地址sexbitfaslefasle性别表2 t_trade表字段名数据类型是否为空是否唯一字段描述idintfasleTrue主键tradevarcharfaslefasle交易类型balanceintfaslefasle用户余额dataTimevarcharfaslefasle交易时间userNobigintfasle
12、true用户账户moneyintfaslefasle交易金额注:t_user表和t_trade表具有单向一对多关联4.2 目录和包结构设计系统的分层设计及实现可使系统达到“分散关注、松散耦合、逻辑复用、标准定义”的目的。因此,银行账户管理系统采用四层结构进行分层,其各层组成如下所示:1、 视图层视图层由JSP页面组成,其中主界面为trade.jsp,通过框架引入top.jsp(置顶)、left.jsp(下左)和main.jsp(下右),结构图6: 图62、 控制层控制层由Action类、Action的验证类(通过Action链传值给Action)和一个拦截器类(控制登录后才可访问其他内容)共三
13、部分构成,结构如下图:图73、 业务层业务层由用户访问(UserFacede接口及实现类UserFacadeImpl)和交易(TradeFacade接口及实现类TradeFacadeImpl)两部分组成构成,结构如下图:图84、 持久层持久层由持久化类和DAO类(包括接口)两部分组成构成,结构如下图:图94.3 系统流程设计以登录功能为例,文字描述、组件图描述login.jspLoginUserAction控制层模型层UserDAOImplisLogin()HibSessionFactoryUserHibernate.cfg.xmlUser.hbm.xmlAbstractUserIUserDA
14、OBaseHibernateDAOIBaseHibernateDAOstruts.xml视图层main.jsperro.jsp5、系统实现预览5.1用户登录用户需通过登录页面输入账户和密码完成登录。系统登录页效果如图10所示。图10 系统登录页面登录过程中需要对填入信息进行验证,如验证不能为空,如图11所示。图11 登录验证5.2用户注册用户可通过登录页的“注册新账户”超链接转入注册页面,进行新账户注册。注册页面图11所示。图12 系统登录页面注册过程中需要对填入信息进行验证,如验证不能为空,图示同11。5.3注册成功注册成功如图13所示。图12 注册成功注意:账户用系统生成。5.4系统主页面
15、重新在登录页面输入账户和密码,进入系统主页面。效果如图13所示。图13 系统主页面5.5存款页面通过主页面左侧的功能菜单选择“我要存款”操作,则进入存款页面,如图14所示。图14 存款页面在页面中填入存款数额,完成存款。如图15所示。图15 存款成功5.6取款页面通过主页面左侧的功能菜单选择“我要取款”操作,则进入取款页面,如图16所示(以下页面省略左侧菜单和顶部Logo,仅展示功能部分)。图16 取款页面取款成功,将显示用户账户余额。图17 取款成功5.7交易信息查看页面通过主页面左侧的功能菜单选择“交易信息”操作,则进入交易信息查看页面,查阅用户以往交易信息,如图18所示。图18 查看交易
16、信息5.8个人信息查看页面通过主页面左侧的功能菜单选择“个人信息”操作,则进入个人信息查看页面,如图19所示。图19 查看个人信息5.9个人信息查看页面通过主页面左侧的功能菜单选择“更改信息”操作,则进入个人信息更改页面,如图20所示。图20 更改个人信息5.10退出系统页面通过主页面左侧的功能菜单选择“我要退出”操作,退出系统,如图21所示。图21 退出系统可通过退出页面的“返回”超链接返回至登录页面。5.11注销用户页面通过主页面左侧的功能菜单选择“我要注销”操作,进行账户注销,此时在注销页面首先显示注销提示信息,要求用户必须保证余额为零,方可注销。同时告知注销后可做的操作。如图22、23
17、所示。图22 注销信息提示图23 提示余额不为零通过“进入取款页面”取出余款后,可再次进入注销页面,注销账户。通过“注销账户”超链接注销账户。如图24所示。图24 注销账户此时,如果进行存款、取款操作,则提示“您的帐户已经被注销,不能执行此项操作!”个人信息查询、修改、退出及交易信息查询还可进行。项目二:在线选课系统1、项目需求11系统概述在线选课系统通过Web应用程序的方式实现在线选课的流程。学生登录系统后可以查看所有课程的选课情况,并且可以对选课人数没有满员的课程进行选课操作,同时也可以查询自己已经选择了那些课程;教师登录系统后可以查看所有课程的选课情况,也可以添加可选的课程。在这里教师充
18、当了系统管理员的角色。由于本系统设计为学生和教师同时使用,所以在登录页面允许学生和教师同时使用,并且根据使用者角色的不同自动跳转到不同的页面。综上所述,本系统从功能上可分成登录、学生选课、学生选课结果浏览、教师浏览选课结果、教师添加课程共五个功能模块。12系统角色定义系统使用者主要分为两种角色:(1)学生:学生只能选择自己感兴趣的课程和查看自己的已选择的课程,只能操控登录、学生选课和学生选课结果浏览三个模块。(2)教师:教师面向的是整个系统,并且承担管理员的角色,同时可以查看每个课程的选课情况,因此可以操控登录、教师浏览选课结果和教师添加课程三个模块。13系统主用例图根据以上分析,系统主用例图
19、如图2.1所示。图2.1 系统用例图2、功能描述在线选课系统从功能上可分成登录、学生选课、学生选课结果浏览、教师浏览选课结果、教师添加课程共五个功能模块。下面分别对各功能模块进行说明。21登录选课是带有个人性质的行为,不能够允许任何人为其他人选课,所以必须在用户使用系统的大部分功能之前提供一个验证机制,不管是学生还是教师,必须通过输入用户名和密码来进入系统。同时学生在查看自己的课程情况时,系统也必须知道当前用户是谁,才能够从数据库中选取出来对应的记录。登录流程如图2.2所示。图2.2 登录活动图22学生选课模块学生登录系统之后可以查看所有可以选择的课程,并选取自己感兴趣的,同时选课人数还未达到
20、人数上限的课程。本模块就用于列出所有的课程信息,并允许学生完成选课操作。如果选课失败,则显示提示信息。学生选课活动图如图2.3所示。图2.3 学生选课活动图23 学生选课结果浏览模块学生登录系统之后可以针对自己已经选择的课程进行查看,以决定是否还要选择其他课程。学生选课结果浏览活动图如图2.4所示。图2.4 学生选课结果浏览活动图24 教师查看所有课程选择结果模块教师登录系统后,可以随时查看最新的选课信息,如所有课程的信息和对应的选课人数。注:活动图参考图2.2。25 教师添加课程模块在学生选课之前,必须有对应的课程信息,在这个模块中教师可以添加对应的课程信息,以供学生选取。教师添加课程活动图
21、如图2.5所示。图2.5 教师添加课程活动图3、数据描述31 数据库表间关系数据库表间关系如图2.6所示userusernamepasswordrealnameroleelectiveusernamecourse_idcorcoursecourse_idcourse_nameteacherpointtime_1time_2locationlimited图2.6 数据库表间关系32 数据库基本结构由数据库表间关系,对user表、course表和elective表作如下设计。(1)用户表,表名为user,表结构如表2.1所示:表2.1 用户表结构字段名类型长度是否为主键可否为空说明username
22、varchar20是否用户登录用户名passwordvarchar20否否用户登录密码realnamevarchar20否否用户真实姓名rolechar1否否用户角色(2)选课表,表名为elective,表结构如表2.2所示:表2.2 选课表结构字段名类型长度是否为主键可否为空说明usernamevarchar20是否选课学生用户名course_idchar6是否对应课程编号(3)课程信息表,表名为course,表结构如表2.3所示:表2.3 课程表结构字段名类型长度是否为主键可否为空说明course_idchar6是否课程编号course_namevarchar40否否课程名称teacher
23、varchar40否否授课教师姓名pointint4否否学分time_1char2否否第一次上课时间time_2char2否否第二次上课时间locationvachar40否否上课地点limitedint4否否限选人数33 数据说明在user表中,role字段代表用户的系统使用角色。role字段的长度为char(1),因此,定义其字段值仅取0或1,其中0代表学生,字段值1代表教师。在course,time_1字段和time_2字段分别代表课程的两个上课时间,其中time_1代表第一次,time_2代表第二次。time_1字段和time_2字段的长度均为char(2),因此,定义其字段值仅取一个
24、两位数,十位和个位的取值范围均为15。其中,十位上的15代表星期一星期五,个位上的15代表五个上课时段(8:059:50、10:1512:00、13:3515:20、15:4517:30、18:3020:45)。4系统原型系统页面关系如图2.7所示。首页登录选课页面添加课程选课结果一览课程一览链接选课退出退出链接链接链接添加链接退出学生教师图示说明: 页面 动作 页面跳转图2.7 系统页面关系图41登录登录页面如图2.8所示。图2.8 登录页面用户访问系统,须通过login.jsp页面完成登录。在登录的同时,填写用户名和密码,选择访问者角色,并对用户名和密码进行是否为空的验证。如果验证成功,则
25、进行对数据库的访问,并显示选课页面chooseCourse.jsp或课程浏览页面courseList.jsp(根据所选角色的不同);如果失败,显示提示信息。此外,如果输入的用户名或密码错误,同样需显示提示信息。42学生选择课程选课页面如图2.9所示。图2.9 选课页面学生登录系统后,系统显示选择课程页面chooseCourse.jsp。在该页面中以表格形式列出学生不曾选择过的课程及其相关信息。学生可点击“选课”按钮完成选课操作,若选课失败,则显示提示信息。此外,如果某门课程的选课人数已经达到人数上限,则“选课”按钮显示未激活状态。43选课结果一览选课结果一览页面如图2.10所示。图2.10选课
26、结果一览页面学生点击“选课”按钮选择某门课程后,系统显示选课结果一览页面viewCourse.jsp。在该页面中以表格形式列出当前学生已选的课程及总学分。44 教师浏览课程选择结果教师浏览课程选择结果页面如图2.11所示。图2.11 教师浏览课程选择结果页面教师登录系统后,系统显示浏览课程页面courseList.jsp,在该页面中以表格形式列出课程的基本情况。45 教师浏览课程选择结果教师添加课程页面如图2.12所示。图2.12 教师添加课程页面教师点击浏览课程页面上的“添加新课程”超链接,系统显示添加课程页面addCourse.jsp。在该页面中,依次填入课程编号、课程名称、教师姓名、学分
27、、上课时间(一周两次)、上课地点和限制人数,同时对各输入或选择内容进行是否为空的验证,如果验证成功,则进行向数据库的提交,并显示课程浏览页面courseList.jsp;如果失败,显示提示信息。此外,如果向数据库的提交失败,同样需显示提示信息。项目三:新闻中心管理系统1、项目来源及背景为了能够更加迅速地向客户传递有关企业的新闻以及相关行业中最新的发展现状,以便于引导客户选择企业的相关产品和服务,一般在商务系统的开发中,都会设置相应的新闻中心模块。该新闻中心应该能够及时提供最新的资讯,并且应该在显示某条新闻的同时,列出所有的相关新闻,以便于客户在最短的时间内获得最新最全的信息。此外,考虑到新闻的
28、时效性,新闻中心管理系统中一般都需要提供良好的维护页面,即中心管理人员可以借助后台维护管理的页面实现对新闻内容实时的更新维护。2、系统需求分析2.1 需求描述新闻中心管理系统主要是为了实现商务网站动态新闻实时显示的系统。一个典型的新闻中心管理系统一般都会提供新闻标题分类显示、新闻详细内容显示等功能。同时也要为新闻中心后台管理的管理员提供对应的新闻信息维护及管理的功能,包括添加新的新闻、编辑修改新闻、删除新闻等功能。根据企业商务新闻的基本要求,本系统需要完成如下的主要任务:(1)新闻标题信息分类显示:在进入新闻中心主页时,应该能够根据数据库中存放的信息分类显示最新的新闻标题。例如可以显示所有最新
29、的标题信息。每个新闻标题都应该提供对应的超链接,单击后,就可以跳转到有关该新闻详细内容的页面上,以便用户对这条新闻有更详细的了解。(2)新闻详细内容及相关新闻列表显示:当单击某个新闻标题后,可以查看该新闻的详细内容。同时提供与该新闻相关的新闻标题信息的显示,以便于查询与该新闻相关的其他信息(扩展)。(3)新闻中心后台管理功能:新闻中心的管理员可以根据企业的服务需要随时向数据库中添加最新的新闻标题及相关内容。还可以删除不再需要的新闻标题及内容,以及对原有新闻做必要的修改。2.2 系统用况图图1 管理员用例图图2 浏览者用例图2.3 系统概念模型图3 系统类图3、系统总体设计3.1 系统总体功能结
30、构新闻中心管理系统后台前台删除新闻修改新闻添加新闻浏览新闻搜索新闻图4 系统层次结构图3.2 功能描述浏览者可以看到所有新闻的标题,点击新闻标题超链接,可以在页面中显示新闻标题、新闻类型、新闻作者、新闻内容、新闻发布时间、及相关新闻的标题,通过点击相关新闻标题超链接,就可以查看该相关新闻的详细信息。图5 新闻中心管理系统前台活动图只有合法身份的管理员才可以进行后台管理,系统的3个子模块(添加新闻、修改新闻、删除新闻)在操作上是平行的,其内在关系通过后续数据库的设计和程序流程来控制。图6 新闻中心管理系统后台活动图4、系统详细设计4.1 系统数据设计新闻基本信息表(newsdetail)用来保存
31、和新闻相关的基本信息,是显示和维护新闻数据的依据。表1所示列出了该表中所包含的字段的描述信息。表1 新闻基本信息表字段名类型长度是否允许为空是否为主键说明idintfalsetrue新闻记录编号titlevarchar50falsefalse新闻标题contentvarchar4000falsefalse新闻内容authorvarchar50falsefalse作者信息timedatatime8falsefalse新闻时间typeint4truefalse新闻类别 后台管理员信息表(admin)记录了新闻中心管理员的相关信息,主要是登录系统后台时验证的依据。表2 后台管理员信息表字段名类型长度
32、是否允许为空是否为主键说明adminidintfalsetrue自动编码adminnamevarchar50falsefalse用户名adminpassvarchar50falsefalse用户密码4.2 目录和包结构设计以登录功能为例设置整个程序的包结构图4.3 系统流程设计以登录功能为例,文字描述、组件图描述login.jspLoginUserAction控制层模型层UserDAOImplisLogin()HibSessionFactoryUserHibernate.cfg.xmlUser.hbm.xmlAbstractUserIUserDAOBaseHibernateDAOIBaseHi
33、bernateDAOstruts.xml视图层main.jsperro.jsp5、系统实现预览5.1 前台 在地址栏中输入地址进入新闻中心首页,在该页面中显示了所有的新闻,并给出了各个新闻的标题,且针对标题文字提供了相应的超链接,以便用户查看新闻的具体内容。图9 新闻中心首页 在图中单击“所有新闻”链接后,会显示系统中的新闻,如图所示。图10 新闻中心文件列表 单击文件标题可以查看新闻的具体内容,如图所示。图11 查看新闻详细信息单击“搜索新闻”可以进行新闻的搜索,如图所示。图12 新闻搜索输入要查询的关键字,然后单击“搜索新闻”即可列出新闻列表,单击新闻标题可以查看新闻内容。5.2 后台 点
34、击“后台管理”超链接进入后台管理界面。在进入新闻管理主页后,首先要管理员输入账号密码后,就可以查看新闻、添加新闻、编辑新闻以及删除新闻。图13 管理员登录界面登录成功后,单击“所有新闻”链接可以查看所有新闻,如图所示。图14 查看所有新闻单击每篇新闻的标题即可查看新闻的详细内容。点击“编辑”链接,可以对该新闻进行修改,如图所示。图15 编辑新闻界面新闻编辑完毕后,单击“编辑提交”即可完成新闻编辑。点击“删除”链接,可以删除该新闻。点击“添加新闻”链接,可以添加新闻,如图所示。图16 添加新闻界面项目四:网上书店1、项目来源及背景求知书店在取得连年盈利后,希望开辟一个信息的销售阵营。在市场部为期
35、一个月的市场调研之后,发现目前网络购物已经被大众所认可,且成为众多宅男宅女们的不二之选的信息时代,因此求知书店准备投入大笔资金开发一个B2B的网上购书平台。该平台应具备界面美观、大方;功能操作简便、快捷;采用技术先进、稳定等特点。2、系统需求分析2.1 需求描述BookStore是一个在因特网上销售图书的电子商务系统,图书发行公司可以通过这个电子商务系统销售自己的图书,消费者可以通过该系统订购自己要买的图书。消费者通过BookStore的用户界面,可以浏览图书,查询每本图书的详细信息,在浏览图书的过程中,如果消费者对某本图书感兴趣,则可以将其添加到购物车。消费者随时可以查看购物车中的状况,并及
36、时更新。购物活动完成后,消费者需要结帐。系统需要提供用户注册和登录的接口,此外,还需要向图书管理员提供维护图书信息的接口。2.2 系统用况图根据需求分析,得出系统的主要用况图如下。主要角色包括图书管理员和顾客。图1 网上书店系统用况图2.3 系统概念模型图2 网上书店概念模型3、系统总体设计3.1 系统总体功能结构网上书店平台系统系统前台系统后台用户注册图书浏览/搜索填写/确认订单购物车维护修改个人信息用户登录图书信息维护系统用户维护图3 网上书店系统总体结构3.2 功能描述1.用户登录/注销和注册功能用户登录是电子商务网站必需的功能之一。BookStore的登录页面要求用户输入用户名和密码。
37、在输入用户名和密码之后,系统将验证用户名和密码是否正确,如果验证成功,就使用户处于登录状态;否则,显示用户名或密码错误的信息。用户在登录页面中能够进行新用户注册,这时系统要求用户输入用户注册信息,包括用户名、密码、电子信息、居住地址、邮政编码等。用户登录后可以随时修改个人注册信息。2.浏览/搜索图书用户可以通过网站浏览各种图书。系统主页面提供了所有图书的列表,通过单击某本图书的链接,用户可以查看该图书的详细信息如图书名称、图书简介、单价、已售图书数量等信息。3.维护购物车当用户单击【添加到购物车】按钮时,图书会被自动添加到购物车中。在购物车页面,将列出用户的购物车中的所有图书,包含选购图书的名
38、字、作者、出版社、单价、选购册数、总计金额等信息。并可随时删除已选购图书或者修改选购图书数量。4、系统详细设计4.1 系统数据设计1.系统设计模型根据系统需求分析的概念模型,系统的设计模型如图4所示。图4 网上书店设计模型2.系统数据设计根据网上书店系统的设计模型,Bookinfo、Userinfo、Rebate、Order和Remark对象都需要持久化,因此在数据库的设计中都有对应的数据表结构。由此该系统数据库有5个表,分别是:图书信息表(Bookinfo) 、用户信息表(Userinfo)、折扣表(Rebate)、订单表(Order)、评论表(Remark)。数据库的名字为bookstor
39、e,具体表结构细节如下所示。表1 图书信息表表2 用户信息表表3 折扣表表4 订单表表5 评论表4.2 目录和包结构设计系统的构成结构如下图所示。(仅为参考,各选题小组可以自己定义)视图层组件的参考结构图。4.3 系统流程设计以登录功能为例,文字描述、组件图描述login.jspLoginUserAction控制层模型层UserDAOImplisLogin()HibSessionFactoryUserHibernate.cfg.xmlUser.hbm.xmlAbstractUserIUserDAOBaseHibernateDAOIBaseHibernateDAOstruts.xml视图层mai
40、n.jsperro.jsp5、系统实现预览系统的界面截图(仅供参考)1. 系统首页面。2. 单击页面左上角的“免费注册”可以进行用户注册,注册后用户可以查看图书信息,并购买图书,同时能够修改个人信息。注册页面如图所示。3. 用户登录时,如果用户名和密码为空,或者验证错误时,将会提出错误提示。如图所示。4.用户登录成功后,页面左上角登录表格消失,取而代之的是“欢迎光临:*用户”的提示信息。与此同时,页面上部增加了“个人资料”、“购物车”、“注销”的功能连接。如图所示。5.用户在首页上单击某条图书信息的连接,或者单击新书推荐板块中的图片连接,会出现图书的详细信息窗口,如图所示。在图书信息窗口中单击
41、“放入购物车”连接,则将该图书放入用户的购物车中。6.用户单击页面上部的“购物车”连接,可以查看自己购物车中的图书信息,如图所示。用户可以维护自己的购物车,如需购买则可以结帐。用户结帐后将产生一条订单信息。7.用户在结帐后,会产生一条订单信息,该信息会在首页的左侧栏显示。点击该信息,会显示它的详细记录。如图所示。8. 在图书列表页面集成了图书的管理功能(可根据需要拆解)。当用户是管理员时,可以在每本书后面看到“修改”、“删除”连接,“新增图书”连接位于页面的右下方。如图所示。9. 单击图书列表后的“新增图书”连接,即可增加图书。如图所示。10. 单击图书列表页面某条图书信息的“编辑”连接,即可编辑该条图书信息。如图所示。第三部分 实训报告构成一、团队构成及分工团队: 职能成员任务分工成绩组长组员二、进度计划序号任务名称开始时间完成时间持续时间12345三、需求描述四、功能设计五、数据设计六、项目实现七、关键代码八、实训总结