【Jsp精品源码栏目提醒】:以下是网学会员为您推荐的Jsp精品源码-【精品】为struts项目添加hibernate - 大学课件,希望本篇文章对您学习有所帮助。
为 s tr u ts 项 目 添 加 h i bern ate 1 绪 论 绪论应说明本学期实验、实训项目(在线考试)的业务、流程、框架、技术;阐述本次实训应解决的主要问题。
S u m m i t E x a m 在 线 考 试 系 统 采 用 多 层 结 构 ,基 于 J 2 E E 平 台开 发 适 用 于 多 种 操 作 系 统 及 主 流 数 据 库 。
JAVA 语 言 为SummitExam 在 线 考 试 系 统 提 供 了 高 效 稳 定 的 运 行 环 境 , 使SummitExam 在 线 考 试 系 统 无 论 在 运 行 速 度 、 易 用 性 还 是 在 数 据吞 吐 能 力 方 面 都 表 现 卓 越 ,尤 其 是 在 系 统 并 发 性 、稳 定 性 方 面 ,遥 遥 领 先 于 基 于 其 它 环 境 的 其 它 同 类 考 试 系 统 。
SummitExam 在线 考 试 系 统 的 前 端 应 用 系 统 和 后 端 管 理 系 统 均 采 用 B/S 模 式 ,系 统 前 端 使 用 了 最 新 的 Struts2jqueryjson 技 术 来 代 替 传 统的 X M L 解 析 方 式 ,有 效 解 决 X M L 解 析 速 度 慢 的 瓶 颈 既 提 高 了 系统 的 安 全 性 又 提 高 了 用 户 体 验 可 以 通 过 浏 览 器 进 行 访 问 和 管理,具有高度的可扩展性,稳定性与可靠性。
1.1 课 题 研 究 背 景 随 着 网 络 技 术 的 飞 速 发 展 ,现 在 很 多 国 外 的 大 学 和 社 会 其他 部 门 都 已 经 开 设 了 远 程 教 育 ,通 过 计 算 机 网 络 实 现 异 地 教 育和培训。
但是,远程教育软件的开发目前还处于起步阶段,随着 这 项 技 术 的 不 断 深 入 发 展 ,就 要 求 有 更 好 、更 完 善 的 软 件 系统 应 用 到 远 程 教 育 当 中 去 ,这 就 给 软 件 设 计 人 员 提 出 了 更 高 的设计要求。
远程教育包括很多环节,例如教学系统、答疑系统和考试 系统等等。
1其 中 很 重 要 的 一 个 环 节 就 是 在 线 考 试 系 统 , 同 时 它 也是 最 难 实 现 的 环 节 。
在 我 国 ,虽 然 远 程 教 育 已 经 蓬 勃 地 发 展 起来 ,但 是 目 前 学 校 与 社 会 上 的 各 种 考 试 大 都 采 用 传 统 的 考 试 方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。
2显 然 , 随 着 考 试 类 型 的 不 断 增 加 及 考 试 要 求 的 不 断 提高 ,教 师 的 工 作 量 将 会 越 来 越 大 ,并 且 其 工 作 将 是 一 件 十 分 烦琐 和 非 常 容 易 出 错 的 事 情 ,可 以 说 传 统 的 考 试 方 式 已 经 不 能 适应 现 代 考 试 的 需 要 。
随 着 计 算 机 应 用 的 迅 猛 发 展 ,网 络 应 用 不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步 深 入 到 千 家 万 户 。
人 们 迫 切 要 求 利 用 这 些 技 术 来 进 行 在 线 考 试,以减轻教师的工作负担及提高工作效率,与此同时也提高 了考试的质量,从而使考试更趋于公证、客观,更加激发学生 的学习兴趣。
3 例 如 目 前 许 多 国 际 著 名 的 计 算 机 公 司 所 举 办 的 各 种 认 证考试绝大部分采用这种方式。
1.2 本 实 训 主 要 解 决 的 问 题 此 次 实 验 的 目 的 是 将 在 线 考 试 系 统 由 struts 框 架 改 为 struts hibernate 框 架 , 提 高 系 统 的 伸 缩 性 、 可 维 护 性 、 可 扩 展 性 、 可 重 用 性 、可管理性,能够很好的实现各层间松散耦合。
1.3 本 实 训 的 业 务 流 程1.4 相 关 技 术本 系 统 所 使 用 的 相 关 技 术 : struts 框 架 , Ajax 等 相 关 技 术 。
2 struts 框 架 概 述2.1 Struts 起 源 Struts 最 早 是 作 为 Apache Jakarta 项 目 的 组 成 部 分 , 项 目 的创 立 者 希 望 通 过 对 该 项 目 的 研 究 ,改 进 和 提 高 J a v a S e r v e r P a g e s 、Servlet、 标 签 库 以 及 面 向 对 象 的 技 术 水 准 。
Struts 这 个 名 字 来 源于在建筑和旧式飞机中使用的支持金属架。
这个框架之所以叫Struts, 是 为 了 提 醒 我 们 记 住 那 些 支 撑 我 们 房 屋 , 建 筑 , 桥 梁 ,甚 至 我 们 踩 高 跷 时 候 的 基 础 支 撑 。
这 也 是 一 个 解 释 Struts 在 开 发 当Web 应 用 程 序 中 所 扮 演 的 角 色 的 精 彩 描 述 。
建 立 一 个 物 理 建 筑 时 ,建 筑 工 程 师 使 用 支 柱 为 建 筑 的 每 一 层 提 供 支 持 。
同 样 ,软 件 工 程 师使 用 Struts 为 业 务 应 用 的 每 一 层 提 供 支 持 。
它 的 目 的 是 为 了 帮 助我 们 减 少 在 运 用 M V C 设 计 模 型 来 开 发 W e b 应 用 的 时 间 。
我 们 仍 然 需要 学 习 和 应 用 该 架 构 ,不 过 它 将 可 以 完 成 其 中 一 些 繁 重 的 工 作 。
如 S果 想 混 合 使 用 Servlets 和
JSP 的 优 点 来 建 立 可 扩 展 的 应 用 , truts是一个不错的选择。
2.2 Struts 的 流 程 服 务 器 启 动 后 , 根 据 web.xml 加 载 ActionServlet 读 取 struts-config.xml 文 件 内 容 到 内 存 。
以 登 陆 为 例 :第 一 次 进 login.
jsp 会 先 实 例 化 Form、 把 默认 值 String 默 认 为 空 字 符 串 整 形 默 认 为 0赋 给 表 单 元 素 。
输 入 用 户 名 密 码 提 交 表 单 、 提 交 到 action 属 性 的 login.do通过 ActionServlet 读 struts-config.xml 文 件 找 到 action 下的 path 属 性 找 到 .do 通 过 name 属 性 找 form-beans 中 的form-bean 的 name 属 性 得 到 ActionForm 的 包 名 类 名 先 实 例 化form, 把 表 单 的 值 填 充 给 form, 调 用 form 的 validate 方 法 验 A 否证 、 ctionErrors 返 回 null 表 示 验 证 通 过 , 则 失 败 返 回 input指 定 的 页 面 . 验 证 通 过 会 实 例 化 A c t i o n ,执 行 A c t i o n 的 e x c u t e方 法 。
图 2.1 Struts 工 作 流 程 图2.3 Struts 框 架 结 构 图 相应框架结构如图: Struts 对 Model, View 和 Controller 都 提 供 了 对 应 的 组 件 。
在 上 图 中 , ActionServlet, 这 个 类 是 Struts 的 核 心 控 制 器 , 负 责 拦 截来自用户的请求。
这 Action, 个 类 通 常 由 用 户 提 供 , 该 控 制 器 负 责 接 收 来 自 ActionServlet 的 请 求 , 并 根 据 该 请求调用模型的业务逻辑方法处理请求,并将处理结果返 回 给
JSP 页 面 显 示 。
2 . 4 St r u t s 框 架 中 的 组 件 ActionServlet 控 制 器 ActionClass 包 含 事 务 逻 辑 ActionForm 显 示 模 块 数 据 ActionMapping 帮 助 控 制 器 将 请 求 映 射 到 操 作 ActionForward 用 来 指 示 操 作 转 移 的 对 象 ActionError 用 来 存 储 和 回 收 错 误 Struts 标 记 库 可 以 减 轻 开 发 显 示 层 次 的 工 作 3 hibernate 框 架 概 述 H i b e r n a t e 是 一 个 开 放 源 代 码 的 对 象 关 系 映 射 框 架 ,它 对 J D B C进 行 了 非 常 轻 量 级 的 对 象 封 装 , 使 得 Java 程 序 员 可 以 随 心 所 欲 的使 用 对 象 编 程 思 维 来 操 纵 数 据 库 。
Hibernate 可 以 应 用 在 任 何 使用 JDBC 的 场 合 , 既 可 以 在 Java 的 客 户 端 程 序 使 用 , 也 可 以 在Servlet/
JSP 的 Web 应 用 中 使 用 , 最 具 革 命 意 义 的 是 , Hibernate可 以 在 应 用 EJB 的 J2EE 架 构 中 取 代 CMP, 完 成 数 据 持 久 化 的 重 任 。
3.1 关 于 hibernate 的 介 绍 Hibernate 的 核 心 接 口 一 共 有 5 个 , 分 别 为 :Session、SessionFactory、 Transaction、 Query 和 Configuration。
这5 个核心接口在任何开发中都会用到。
通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。
3.2 hibernate 的 基 本 流 程 ( 如 下 图 )3.3 Hibernate 主 键 介 绍Assigned Assigned 方 式 由 用 户 生 成 主 键 值 , 并 且 要 在 save之 前指定否则会抛出异常HiloIncrementIdentitySequenceNativeUUIDForeign GUID 4 Strutshibernate 框 架 应 用 流 程 Strutshibernate 应 用 流 程struts 可 以 用 来 控 制 MVC 而 hibernate 是 用 来 做 数 据 的 持久 化 的 。
从 页 面 请 求 提 交 数 据 , 通 过 struts 的 formbean表 单 绑 定 数 据 ,数 据 传 递 到 后 台 的 Action,在 action 中 可以 编 写 自 己 的 业 务 逻 辑 代 码 , 通 过 hibernate 将 数 据 持 久化 到 数 据 库 或 者 加 载 数 据 。
数 据 库 持 久 化 后 在 action 中 返回,页面跳转将数据带到页面做显示。
5 项目改造流程第 一 步 : 新 建 web 项 目第 二 步 : 集 成 stru ts 应 用第三步:导入项目文件第四步:配置数据库,运行此项目第 五 步 : 添 加 hibe rna te 应 用第 六 步 : 修 改 项 目 的 DAO 层 , 改 为 由 h ibe rnat e 操 作 数 据库修改后的项目结构为com.ljj.service 包 内 的 StudentService 的 源 代 码addStudent 方 法queryStudent方 法updateStudent方 法deleteStudent方 法修改后运行结果图:addStudent方 法 执 行 结 果 :queryStudent方 法 执 行 结 果 :updateStudent方 法 执 行 结 果 :deleteStudent方 法 执 行 结 果 :删除前:删除后: 6 结论 通过这几天的学习,在线考试系统修改基本完成,修 改 的 主 要 为 学 生 信 息 的 注 册 ,修 改 ,删 除 等 ;通 过 这些 任 务 的 完 成 ,使 我 又 学 到 了 不 少 知 识 ,更 懂 得 了 如 何去写实训报告这项必不可少的任务。
再 者 ,我 也 对 struts 框 架 流 程 、hibernate 应 用 流 程及 strutshibernate 项 目 流 程 都 有 了 更 清 楚 的 认 识 。
在 老师 的 讲 解 下 和 课 下 的 学 习 , 对 struts 项 目 添 加 hibernate应用逐渐有了更深的认识。
参考文献 1 刘 胜 超 等 . UML 在 工 业 锅 炉 控 制 系 统 设 计 中 的 应用 . 华 中 科 技 大 学 学 报 . 2002304: 93-95 2蒋 慧 等 . UML 设 计 核 心 技 术 . 北 京 : 北 京 希 望 电 子出 版 社 2001. 3 王 红 燕 等 UML 建 模 在 常 住 人 口 管 理 信 息 系 统 开 发中 的 应 用 计 算 机 工 程 与 应 用 2002.19 238-241 4 刘 胜 超 等 . UML 在 工 业 锅 炉 控 制 系 统 设 计 中 的 应用 . 华 中 科 技 大 学 学 报 . 2002304: 93-95 5百 度 百 科 ( struts 和 hibernate) 致 谢 感谢老师的培养,感谢讲解的这些非常有用的知识 ,肯 定 对 以 后 会 有 很 大 的 帮 助 ,我 相 信 通 过 我 的 再 一步学习会有很大的进步。
上一篇:
黑客防线2012年2月刊
下一篇:
手机媒体营销分析