基于Struts 和Hibernate 技术的辽宁工程
技术大学工程训练中心网站设计与开发
董强1,宋喜义2,黄培泉2**
作者简介:董强,(1989-),男,本科生,主要研究方向:安全工程,辅修计算机科学与技术
通信联系人:宋喜义,男,副教授,主要研究方向:计算机科学与技术. E-mail: newfe888@sina.com
5 (1. 辽宁工程技术大学安全科学与工程学院,辽宁 阜新 123000;
2. 辽宁工程技术大学实验实训中心,辽宁 阜新 123000)
摘要:传统开发技术如JSP、ASP、PHP,在动态网页中嵌套大量业务逻辑程序代码,存在可读
性差、程序可重用程度低、可扩展性差、维护工作烦琐等缺点,本以辽宁工程技术大学实验
实训中心网络开发为实例,采用了J2EE 框架与MVC 开发方式。融合了Struts 和Hibernate
10 框架和MVC 模式优点的系统开发,使得该系统具有良好的健壮性、可扩展性,也使得网站的
安全性有了很大程度上的保证。
关键词:J2EE;MVC;Struts;Hibernate
0 引言
基于传统的开发技术如JSP,ASP,PHP,在动态网页中嵌套大量业务逻辑程序代码,
30 代码与HTML 网页标记混写,存在可读性差、程序可重用程度低,可扩展性差,维护工作
烦琐等缺点,而选用纯JSP 或是纯Servlet 设计都有局限性。
基于Web 技术的B/S 模式软件开发是一种常用的开发技术,MVC 模式的设计思想为软
件的健壮性,可维护性和可扩展性提供了有力的支持。本文就以辽宁工程技术大学实验实训
中心网络开发为实例,此系统的设计与开发采用了J2EE 框架与MVC 模式的相结合的开发
35 方式。融合了J2EE 框架和MVC 模式优点的系统开发,使得该系统具有良好的健壮性、可扩
展性,也使得网站的安全性有了很大程度上的保证[1]。
1 工程训练中心简介
辽宁工程技术大学工程训练中心是隶属于学校的教学单位,是实施工业基础教育和工程
创新能力培养教育的实践性教学基地,其主要任务是培养学生的综合工程实践能力和创新精
40 神,主要承担全校本科生每年5000 余人的工程训练教学、实验及认知实习任务。
工程训练中心致力于培养学生的综合工程实践能力和创新精神,同时还承担组织全校学
生参加课外科技活动和参加全国设计竞赛,并制作学生科技作品。中心的目标是通过全体同
仁的努力,把中心建成特色鲜明、门类齐全、设施先进,具有示范和辐射作用的一流的大学
生实践训练基地。
45 2 相关技术简介
2.1 Struts 框架
Struts 是开源软件。使用Struts 的目的是为了帮助我们减少在运用MVC 设计模型来开
发Web 应用的时间。Struts 框架具有组件的模块化,灵活性和重用性的优点,同时简化了基
于MVC 的Web 应用程序的开发,Struts 可以清晰地区分控制,事务逻辑和外观,从而简化
50 了开发应用程序的过程。Struts 提供的类使得开发工作更加简单。
Struts 框架可分为以下四个主要部分:
1、模型(Model),开发者通过其实现商业逻辑,同时用户请求通过控制器(Controller)向
Action 的转发过程是基于由struts-config.xml 文件描述的配置信息的。
2、视图(View),View 是由与控制器Servlet 配合工作的一整套JSP 定制标签库构成,
55 利用她们我们可以快速建立应用系统的界面。
3、控制器(Controller),本质上是一个Servlet,将客户端请求转发到相应的Action 类。
4、一堆用来做XML 文件解析的工具包,Struts 是用XML 来描述如何自动产生一些
JavaBean 的属性的。
Struts 的四个核心组件介是:ActionServlet。Action Classes。Action Mapping(此处包括
60 ActionForward),ActionFrom Bean,此文不在进行介绍[2]。
2.2 Hibernate 框架
Hibernate 是一个免费的开源Java 包,它使得与关系数据库打交道变得十分轻松,同时
不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。通过它,可以是程
序员专业与应用程序的开发。
65 大多数应用程序都需要处理数据。Java 应用程序运行时,往往把数据封装为相互连接的
对象网络,但是当程序结束时,这些对象就会消失在一团逻辑中,所以需要有一些保存它们
的方法。有时候,甚至在编写应用程序之前,数据就已经存在了,所以需要有读入它们和将
其表示为对象的方法。手动编写代码来执行这些任务不仅单调乏味、易于出错,而且会占用
整个应用程序的很大一部分开发工作量。
70 Hibernate 的精髓是持久层实现模式,是一个面向Java 环境的对象/关系数据库映射工
具。它不仅仅管理Java 类到数据库表的映射,还提供数据查询和获取数据的方法,可以大幅度
减少开发时人们使用SQL 和JDBC 处理数据的时间,而只用对对象进行操作。Hibernate 包
装了JDBC,尽可能使用最高效的JDBC 调用。它提供开放的API,用户可以自行扩充其功能。
Hibernate 在大多数主流J2EE 应用服务器的受管理环境中都可以良好运作,也可以作为独立
75 应用程序运行。Hibernate 支持继承与多态机制,沿用了传统数据库的事务模型,提供对十六种
数据库语言的支持。
2.3 MVC 模式
MVC(Model-View-Controller)模式是当前在开发Web 应用时使用最广泛的,第一个把表
示逻辑和业务逻辑分开的设计模式。它把程序分为三个部分,有效降低系统各个部分的耦合
80 程度,简化了Web 应用的开发过程。
(1)模型(Model):模型包含了应用程序功能的核心,它封装了业务数据和对数据的操作,
用于实现特定的业务逻辑,集中体现了应用程序的状态。
(2)视图(View):视图实现模型的外观,是整个应用程序的外在表现。它可以访问模型的
数据,但不能改变这些数据。当模型发生改变时,视图会得到通知。
85 (3)控制器(Controller):控制器对用户的输入做出反应并将模型和视图联系在一起。作为
业务流程控制,它不对浏览器发送过来的HTML 表单做任何逻辑处理,只是接受请求并调用
特定模型进行处理,再决定用哪个视图将模型处理后的数据显示给客户[3]。
3 系统功能分析及设计
3.1 系统需求分析
90 在实验实训中心相关领导及指导老师的指导下,我们完成了对此系统的需求分析,此网
站主要用来对实验实训中心的信息发布、文件政策、及教学视频等等类别的文件的增/删/改/
查的操作,需求分析简介如下:
系统的管理员分为两类,一类是教师登陆,二类是管理登陆。教师凭借用户名和密码登
陆后可以对自己的信息进行修改,修改登陆密码。包括自己的姓名,年龄,职称,照片,发
95 表论文,科研成果,个人简介,等等项目的增加。
管理登陆的用户凭借用户名和密码登陆后台后可以对整个网站的不同板块进行上传文
件,上传视频,修改密码,增加用户等功能[4]。
3.2 系统数据库设计
此系统的数据库采用的是SQL Server 2000,它是一款功能性很好的SQL Server 数据库
100 系统,SQL Server 2000 可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft
Windows 2000 的大型多处理器的服务器等多种平台使用[5]。
数据库主要表设计如下:
表1 news 表设计
105 Tab. 1 the design of the table news
字段 Id title ispic picName picRanName picPath content ptime
类型 int varchar varchar varchar varchar varchar text datetime
说明 主键 文章标题 首页图片 图片原名图片改名 图片路径图片路径 文章时间
表2 video 表设计
Tab. 1 the design of the table video
字段 Id title fileName fileRanName filePath ptime
类型 int varchar varchar varchar varchar datetime
说明 主键 文章标题 文件原名文件改名 文件路径添加时间
110 3.3 系统具体实现
3.3.1 视图开发
由于此系统采用了Struts 框架,就使得系统的页面的开发难度降低了,开发人员只需懂
得HTML 语言以及必要的Javascript 语言,就可以实现表现层的开发,而且业务层的具体处
理的改变不会对表现层产生影响,大大降低了系统的耦合度。
115 此网站的表现层采用的是CSS+DIV+JSP 技术开发,使得系统在开发过程中的效率大大
提高了。网站的美观性以及友好性也有很大的提高。
3.3.2 模型开发
模型主要由 Action 类和ActionForm 类来实现。ActionForm 类的主要功能是传递和过
滤视图与模型之间的数据。Action 类的主要功能是实现业务逻辑和处理由form 表单或JSP
120 页面提交的数据,Java 程序员可以在Action 中编写Java 代码而不必考虑页面设计的问题,
大大提高了代码的可重用度。
原创学术论文网Tag:代写论文 代写代发论文 网络论文发表 网络论文代写
|