数据库原理精品课程网站开发—在线答疑、用户管理内容摘要:

任何试图插入或更新不符合标准的数据的操作都有可能被发现并拒绝。 这种检测可能遍布在整个应用程序的每个角落,在表现层可能进行一些验证,在业务逻辑层,商业逻辑对象一般也有商业逻辑的验证,还有在后台资料库也要对数据进行检查。 7 不幸的是,由于这种验证在应用程序中无处不在,造成了应用程序在一定程度上的验证数据的代码冗余。 这并不是应用程序所希望的,因为这种在多处的重复劳动,使得应用程序的部署和维护要花去更多的时间。 如果在整个应用程序中,这些验证规则可以重复使用,将使得应用 程序更加富有弹性,换句话说就是,部署更快捷,定制更容易,程序更灵活。 使用 Validator 框架比一般的在应用程序的代码中定义验证规则有好多优点,如: ○ 1 可以在一处为应用程序定义验证规则; ○ 2 验证规则和应用程序是松耦合的; ○ 3 配置新验证规则或修改已有验证规则变得更加简单; ○ 4 支持国际化; ○ 5 支持正则表达式; ○ 6 可以用于 Web 应用程序也可用于标准的 Java 应用程序; ○ 7 采用声明的方法实现而不是编程实现; 除此之外, Validator 最大的特征就是自身支持可插性( pluggability)。 Validator 框架允许你自定义验证程序,并插入到框架中。 采用 Validator 验证框架,要添加 Validator 插件,另外还要有一个配置文件,即 ,将要验证的属性配置好即可。 Sturts 标签库 MVC 设计模式的基本 原理就是视图、模型、控制相分离,因此因尽量减少在试图部分(如 JSP 页面中)包含与视图无关的 java 代码,使 JSP 页面变得整洁,为此在 Struts 中引入标签库。 使用 Struts 标签库一方面可以使 JSP 页面变得更“纯”,另一方面由于Struts 标签库功能强大,使用标签库可以是页面变得更加简单。 同时, Struts标签库还能够和 Struts 的其他组件很好的配合,从而更好的发挥 Struts 框架的性能。 Struts 框架提供了 5中标签库,分别是: HTML 标签库、 Bean 标签库、 Logic标签库、 Nested 标签库以及 Tiles 标签库。 本系统主要使用了如下三个标签库: 8 HTML 标签库 :用来生成 HTML 标签和现实 HTML 元素内容,如果和其他 Struts标签库配合使用,可以形成内容丰富的 HTML 页面。 Struts HTML 标签虽然与标准的 HTML 标签功能基本相同,但是 Struts HTML 标签能够更好地和 Struts 框架结合,比如用 Struts HTML 标签建立的表单可以和 ActionForm 相对应。 此外,Struts HTML 标记可以用来现实 Struts 框架中的错误信息,而且现实的信息可以很好地配合 Struts 国际化组件 ,实现页面的国际化。 Bean 标签库 :在 JSP 页面中用来创建、管理 Bean,可以访问 Bean 的属性。 本系统中主要用到了 bean:writer标签,用来显示信息。 Logic 标签库 :在 JSP页面中可以用来进行逻辑判断、循环控制以及流程控制。 本系统中主要用到的 Logic 标签有: ○ 1 逻辑判断标签:包括 logic:equal、 logic:notEqual、 logic:empty、logic:notEmpty、 logic:equal、 logic:notEquallogic:greaterThan、logic:lessEqual等 ○ 2 循环迭代标签,如 logic:iterate CSS+DIV CSS( Cascading Style Sheet,可译为“层叠样式表”或“级联样式表”)是一组格式设置规则,用于控制 Web 页面的外观。 通过使用 CSS样式设置页面的格式,可将页面的内容与表现形式分离。 页面内容存放在 HTML 文档中,而用于定义表现形式的 CSS 规则存放在另一个文件中或 HTML 文档的某一部分,通常为文件头部 分。 将内容与表现形式分离,不仅可使维护站点的外观更加容易,而且还可以使 HTML 文档代码更加简练,缩短浏览器的加载时间。 DIV元素是用来为 HTML文档内大块 (blocklevel)的内容提供结构和背景的元素。 它可以将文档分割成多个有意义的区域或模块, DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由 DIV标签的属性来控制。 使用 CSS+DIV有以下三个优势 : (1)表现和内容相分离 DlV+CSS将设计部分剥离出来放在一个独立样式文件中, HTML文件中只存放文 9 本信息, 这样的页面对搜索引擎更加友好; (2)提高页面浏览速度 对于同一个页面视觉效果,采用 DIV十 CSS重构的页面大小要比 TABLE编码的页面文件小得多,前者一般只有后者的 1/ 2大小,这样浏览器就不用去解析大量冗长的标签; (3)易于维护和改版 由于多个页面可以共享一个 CSS文件,这样只需简单的修改 CSS文件就可以重新布局整个网站的页面。 JDBC 在三层或多层数据库系统网络模式下,如何访问后台数据库成为构建动态网站的一个重要因素。 为了解决这个问题, sun公司开发出了 Java数据库连接 (JDBC)技术 ,应用 JDBC技术,编程人员可以使用结构化查询语言,即 SQL语言连接到一个打开的数据库,对数据库进行查询,或者对数据库进行更新。 从而完成对动态网站后台数据库中数据的维护和更新。 另外, 由于 JDBC建立在 JAVA的基础上 ,因此还提供了数据库存取的平台独立性。 JDBC是 Java数据库连接 (Java Data Base Connectivity)技术的简称,是一种以为各种常用数据库提供无缝连接的技术。 JDBC定义了 Java语言同 SQL数据之间的程序设计接口 JDBC API。 该接口是一个标准统一的 SQL数据存取接口。 应用JDBC API接口,程序员在编程时,就可以不关心所要操作的数据库是哪个厂家的产品,从而提高了软件的通用性。 本系统采用 MySQL数据库,通过 JDBC连接数据库步骤如下: ○ 1. 加载驱动程序 ()。 ○ 2. 建立连接 String url=jdbc:ding=gbk。 String user=root。 10 String pwd=root。 Connection conn =(url,user,pwd)。 其中 user 是数据库用户名, pwd是数据库用户口令 ○ 3. 查询数据库 PreparedStatement pres =()。 //数据库对象; 11 第三章 系统需求分析 精品课程网站需求分析 根据精品课程网站所具有的特 征及它所完成的主要任务的分析以及精品课程网站用户的特殊性,一个精品网站一般有学习,网上答疑,系统管理等功能。 同时这些功能又根据用户的不同赋予不同的权限,这些权限决定用户所能完成的主要功能。 学生及一般的游客主要通过精品课程网站来学习,所以学生和一般游客所具有的权利应该是学习,交流等;教师作为教学活动的主体,必须要具备网上答疑功能等。 管理员作为一个网站的管理者,拥有最大权限,负责维护网站的正常运行,更新数据库,删除非法留言等,及时添加公告等。 系统功能模块划分 登录模块: 根据用户的不同需求分为管理员,教 师,学生,游客,四种角色,管理员负责对系统的维护,拥有一切权限,教师负责回复学生的提问,学生可以浏览网站资源,通过留言板与老师或同学交流,游客可以浏览网站资源。 不同的角色有不同的操作,所有登录后系统后也将进入不同的页面。 管理模块: 主要实现对网站的动态维护,管理员拥有一切权限,管理员登陆系统后可以对用户,帖子,公告进行管理。 包括查看、添加、删除、修改等功能。 答疑模块: 为了提高学习效率,促进师生交流,本系统建立了网上答疑模块,教师可以与学生在线交流,解决学生疑惑。 包括 查看留言,添加留言,查看回复,添加回复。 普通游客可以查看留言,查看回复,添加留言,但是不可以添加回复。 系统功能图: 12 图 31 系统功能图 系统整体架构设计图 图 32 系统整体架构设计图 13 系统组件图 图 33 系统组件图 系统用例图 管理员、教师以及学生是特殊的游客,游客可以浏览网站信息,查看留言,添加留言,查看回复。 管理员、教师以及学生除了拥有这些权限外,登陆系统后,管理员可以对用户,留言,公告进行管理,包括对用户的增、删、改、查,对非法留言的删除,以及及时添加公告;教师学生还以对留言进行回复。 系统用例图如下图所 示: 14 图 34 系统用例图 用例描述 表 3_1 添加用户用例描述 用例名称 :添加用户 参与者 :管理员 简要说明 :管理员登陆系统后添加系统用户 前置条件 :管理员已登陆系统 基本事件流: “用户管理”链接菜单 (教师、学生)列表 “删除”链接 15 “添加用户”按钮,点击该按钮,转到添加用户列表页面 ,点击“提交”按钮,成功 提交后,转到用户列表页面 异常事件流 : 7a)若填写的字段为空,如用户名或密码或用户角色为空,点击提交按钮后,提示字段不能为空,重新填写信息 7b)若用户名长度小于 2 或大于 10,提交后会提示用户名长度必须在 210个字符之间,重新填写用户名 后置条件 :用户被添加到系统,并显示在用户列表页面 表 3_2 修改用户信息用例描述 用例名称 :修改用户信息 参与者 :管理员 简要说明 :管理员登陆系统后对用户信息进行修改 前置条件 :管理员已登陆系统 基本事件流: “用户管理”链接 菜单 (教师、学生)列表 “删除”链接 ,点击该用户名,转到该修改用户信息页面,除了用户名为不可更改状态,该用户的其它信息均为可更改状态 ,点击“修改”按钮,成功修改后,返回用户列表页面 ,则点击“返回”链接,返回到用户信息页面 异常事件流 : 7a)若填写的字段为空,如用户名或密码或用户角色为空,点击提交按钮后,提示字段不能为空,重新填写信息 7b)若用户名长度小于 2 或大于 10,提交后会提示用户名长度必须在 210个字符之间,重新填写用户名 后置条件 :用户信息得到管理 表 33 删除留言用例描述 用例名称 :删除留言 16 参与者 :管理员 简要说明 : 管理查看留言,删除非法留言 前置条件 :管理员已登陆系统 基本事件流: ,每页显示最新的 15 留言条记录,每条留言记录后又一个“删除”链接 ,进入该页码的留言页面 ,点击“删除”链接,则该留言被删除 后置条件 :留言被删除 表 3_4 添加留言用例描述 用例名称 :添加留言 参与者 :游客(包括一般游客和本系统用户) 简要说明 : 游客通过网上答疑模块可以交流问题,提交的留言最终显示在留言页面 前置条件 : 游客进入本精品课程网站 基本事件流: ,每页显示最新的 15 条留言记录 ,留言显示在留言页面 ,进入该页码的留言页面 ,转到该留言的回复页面 异常事件流: 2a)若留言主题为空,则点击“留言”按钮后会提示“留言 主题不能为空”,确认提示信息后,输入留言主题后,成功留言 后置条件 : 提交的留言内容显示在留言页面 表 35 添加回复用例描述 用例名称 :添加回复 参与者 :教师、学生 简要说明 : 17 教师、学生通过网上答疑模块可以交流问题,对提交的留言进行讨论回复 前置条件 :教师或学生已登陆系统 基本事件流: ,每页显示最新的 15 条留言记录 ,进入该页码的留言页面 ,点击该留言链接,转到回复页面 ,以及该留言的 所有回复 ,回复成功,该回复内容显示在回复页面 异常事件流: 5a)若回复内容为空,点击“回复”按钮后,提示“回复内容不能为空”,确认提示信息后,输入回复内容,成功提交回复信息 后置条件 : 提交的留言内容显示在留言页面,提交的回复内容显示在回复页面 分析类图 图 35 管理员添加用户分析类图 图 36 用户留言分析类图 18 第四章 数据库设计 数据库需求分析 本系统分为系统管理模块和答疑模块,系统管理员负责将本校的用 户(教师、学生)录入系统,并负责对用户信息的维护,包括对用户的增、删、改、查,管理员还负责删除非法留言和添加公告;一般游客(包括非本系统的用户和未登录系统的本系统用户)可以浏览网站信息,并可以添加留言;本系统的用户(管理员、教师、学生)登陆系统后可以对留言进行回复。 通过系统功能分析,应设计。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。