利用开源框架Struts+Hibernate实现Web应用程序
本文共计3858个字,预计阅读时长13分钟。【 字体:大 中 小 】
利用开源框架Struts+Hibernate实现Web应用程序
摘 要:本文主要介绍了利用目前的开源框架来开发一MVC结构Web程序的主要过程,对作为Struts与Hibernate核心的配置文件作了简单介绍,最后提出了在开发类似项目时可能会遇到的一些问题和解决方案。
关键词:Web;开源框架;解决方案;Struts;Hibernate;MVC;计算机
一、概述
大多数Web应用在职责上至少可被分成四层,表示层、持久层、业务层和域模块层,每一层相互独立,在功能上与其他层互不混合,这样为程序的后期维护及扩充提供了方便,而在Web应用的分层设计中,MVC模式成为一种十分流行的结构,Struts则是MVC模式的一种具体实现,他让开发人员可以把主要精力集中在如何解决实际业务处理问题上,同时Struts框架也允许开发人员根据实际需求进行扩展和定制,从而更好地适应用户的需要。在数据持久层上,Hibernate是目前最好的框架之一,Hibernate不仅管理Java类到数据库表的映射,还提供数据查询和获取数据的方法,可以大幅减少开发时人工使用SQL和JDBC处理数据的时间。Struts架构与Hibernate相结合实现Web应用已成为Web Service十分流行的解决方案。下面我们将简要介绍一下采用Struts+Hibernate实现Web应用的主要方法。
二、数据库设计及持久化
大多数Web应用都要涉及到数据库,数据库的设计是系统设计首先要考虑的问题,数据库设计得是否合理对系统的设计有着直接的影响,数据库如果设计的不好,有可能会使整个系统在最后阶段推倒重建。这里我们不打算详细讨论数据库的设计细节,只要遵循一般的数据库设计原则即可。包括找出所有实体,建立关系,画ER图,建立数据库表等。持久化是通过Hibernate来实现的,Hibernate对数据库的`增加、删除、更新、查找操作进行了封装,使程序员可以使用面向对象的方式来设计程序,而不用为写大量的SQL语句而苦恼。因此我们需要建立相应的配置文件来帮助程序完成数据持久化,其中包括一个Hibernate基本配置文件和若干个数据库表与基本Java类对应的配置文件,以用户登录系统为例,二配置文件主要内容如下:
hibernate.cfg.xml:(使用Mysql数据库)
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
com.mysql.jdbc.Driver
jdbc:mysql:///user
root
100
org.hibernate.dialect.MySQLDialect
User.hbm.xml:
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
name=" hibernate.User"
table="user"
>
name="id"
type="java.lang.String"
column="id"
>
name="name"
type="java.lang.String"
column="name"
not-null="true"
length="20"
/>
name="psw"
type="java.lang.String"
column="psw"
not-null="true"
length="20"
/>
三、视图(View)组件的实现
当用户提交表单时(如当用户登录时)Struts会把请求参数封装到动作表单(Form Bean)里,所以我们需要建立一个动作表单类,它继承ActionForm类,这个表单类实际上是一个JavaBean,类中需要创建与HTML提交表单中字段对应的相同名称的属性,并创建每一个属性的set和get方法,如登录表单中有用户名(name)和密码(psw)两个字段,则在表单类中应创建与之对应的属性name和psw,同时创建对应的方法setName()、getName()、setPsw()、getPsw(),另外还可以有Validate方法对输入字段进行验证。
其他的视图页面文件只需使用简单的Jsp文件即可。
四、控制器(Control)组件的实现
控制器是Struts的核心,主要负责接受客户端的HTTL请求,更新属性以及生成Jsp页面呈现在客户端浏览器上,它位于试图组件(V)与模型组件(M)之间,将二者有机地联系起来,发挥协调作用。控制器组件的核心是一个Action类,它主要负责访问业务逻辑层,类中的execute方法负责处理用户的请求,所以我们主要的工作就是改写execute方法,在其中添加相关的业务逻辑处理代码。


护理工作中如何做好人文关怀论文
人文护理教育价值分析论文
手术室护理中人文关怀的应用论文
护理管理中人文关怀与应用论文
会计职业技能竞赛体系的构建策略论文
高职院校会计电算化问题的思考分析论文
浅谈会计在公司治理中的应用毕业论文
上市商业银行会计信息对股价影响分析论文
会计学校企联合教课形式的价值论文
谈加强管理会计体系建设措施论文
财务会计在公司的地位和作用
造价工程师作用及地位
造价工程师的作用及地位
仓储管理在物流中的地位和作用
财务会计在企业管理中的运用论文
电影音乐的发展特点及作用地位论文
发展低碳经济中林业的作用及地位论文
简述物理实验在物理教学中的地位及作用论文
成本管理在企业管理地位及作用
读书的作用优美句子(精选100句)