Struts+Spring+Hibernate整合入门详解
Java 5.0
Struts 2.0.9
Spring 2.0.6
Hibernate 3.2.4
作者: Liu Liu 转载请注明出处
基本概念和典型实用例子。
一、基本概念
Struts:作为基于 MVC 模式的 Web 应用最经典框架,两个项目Struts 和webwork已经集成,成为现在的Struts2。目前的最新版本是2.0.9(2007-7)。
Spring: 是一个轻型的容器,利用它可以使用一个外部 XML 配置文件方便地将对象连接
在一起。每个对象都可以通过显示一个 JavaBean 属性收到一个到依赖对象的引用,留给您的简单任务就只是在一个 XML 配置文件中把它们连接好。
Hibernate 是一个纯 Java 的对象关系映射和持久性框架,它允许您用 XML 配置文件把普通 Java 对象映射到关系数据库表。使用 Hibernate 能够节约大量项目开发时间,因为整个 JDBC 层都由这个框架管理。这意味着您的应用程序的数据访问层位于 Hibernate 之上,完全是从底层数据模型中抽象出来的。
三种技术到目前已经比较成熟,而且他们都是免费的!让我们对三者集成进行一个初览(简单而不专业):
我们用Struts实现从Web(网页,MVC中的View)到后台系统的映射(WebAction),然后由Spring管理这些Action,把它们作为Bean和其他对象一起处理。这些Bean之间处理业务逻辑、数据、系统状态等,且它们被Spring统一管理,为了区分,就算大概包括MVC的MC部分吧。然后需要持久化的数据由Spring和Hibernate之间的接口交由Hibernate处理(这个属于持久层)。
必须基础:只要Java基础,一点HTML知识、XML基础就可以了。本文的目的就是从零开始建立第一个Struts+Spring+Hibernate应用。即使它是最简单的,我们也希望初学者能够从中理解一些思想,其中也包括系统架构的设计思想。
二、环境搭建
我们坚持免费才是硬道理,开源才是好事情,所以我们全部使用开源免费的工具和软件。如果使用MyEclipse,其中的工具将有助于简化下面演示的工程开发,但本文不用。
所需软件包如下表:
序号 | 包 | 下载地址和文件(包)名 | 说明 | |
1 | JDK5.0 | java.sun/javase/downloads/index.jsp | JDK5.0 | |
2 | Eclipse WTP | Eclipse IDE for Java EE Developers 下载All in One,这样不用自己下载其他插件 | 包含网站开发的Eclipse,v3.3,下载All in One | |
3 | HibernateSynchronizer-3.1.9 | sourceforge/project/showfiles.php?group_id=99370 | 帮助开发Hibernate应用的Eclipse插件 | |
4 | Hibernate3 | sourceforge/project/showfiles.php?group_id=40712 hibernate3所指示的包 | Hibernate支持包 | |
5 | Spring | sourceforge/project/showfiles.php?group_id=73357 | spring-framework-2.0.6-with-dependencies.zip | |
6 | SpringIDE(可选) | /updatesite/ 包名如 springide_updatesite_2.0.1_v200707300600.zip | ||
7 | Struts | /i | 为了较全的例子和文档,建议下载 struts-2.0.9-all.zip否则只下载lib:struts-2.0.9-lib.zip | |
8 | Tomcat | ? | 建议下载v5.5以上版本,应用服务器(支持JSP等)Apache项目之一 | |
9 | MySQL | Hibernate演示需要 | ||
1、下载了eclipse以后安装。在所安装的目录下有两个子目录plugins和features,这是两个放eclipse插件的目录,即可以通过拷贝需要的文件到这些目录里面,从而给eclipse添加新的功能。
2、将第3、6的包解压,将其中的plugins目录直接复制到mysql下载jar包eclipse安装目录下,选择“全部”替换。
3、运行eclipse,选择一个空目录作为工作区(WorkSpace),启动以后可以看到Welcome.html的欢迎界面。现在建立新工程FileNewProject,在打开的New Project窗口中选择WebDynamic Web Project。输入Project name,在Target Runtime一项选择新建(New),选择你所安装的Apache Tomcat,在弹出窗口输入相关信息(Tomcat安装目录等)
。
新建工程流程如下图。
工程结构如下:
其中我们要写的Java代码在Java Resource: src(以后直接称src)下,网站根目录内容在WebContent下,类所在根目录是WEB-INF/classes,Eclipse会自动将build/classes里面已经编译的类同步过去。
向WEB-INF下的lib目录添加如下所列的jar包。
(1)这些包在下载解压后Spring,Struts,Hibernate的lib目录或者dist/module目录下面(如果不在,可以到网上google一把。列表中mysql-*.jar包是MySQL数据库的JDBC Driver)。也可以把所有lib和dist下的jar包拷贝过来(可以在系统复制这些jar包,然后到Eclipse里面选中WEB-INF里面的lib包,然后粘帖就可以了)。但要注意全拷贝可能会存在冲突,如struts*plugin.jar等包不能引入,否则不能运行。
(2)这些Jar包是:
antlr-2.7.2.jar
cglib-nodep-2.1_3.jar
commons-beanutils-1.6.jar
commons-chain-1.1.jar
commons-collections-2.1.1.jar
commons-dbcp.jar
commons-digester.jar
commons-logging-1.0.4.jar
commons-logging-api-1.1.jar
commons-pool.jar
commons-validator-1.3.0.jar
dom4j-1.6.1.jar
el-api.jar
el-ri.jar
freemarker-2.3.8.jar
hibernate3.jar
jsf-api.jar
jta.jar
mysql-connector-java-3.0.14-production-bin.jar
ognl-2.6.11.jar
oro-2.0.8.jar
spring-hibernate3.jar
spring.jar
l
struts-core-1.3.5.jar
struts2-codebehind-plugin-2.0.9.jar
struts2-config-browser-plugin-2.0.9.jar
struts2-core-2.0.9.jar
struts2-jasperreports-plugin-2.0.9.jar
struts2-jfreechart-plugin-2.0.9.jar
struts2-jsf-plugin-2.0.9.jar
struts2-pell-multipart-plugin-2.0.9.jar
struts2-plexus-plugin-2.0.9.jar
struts2-sitegraph-plugin-2.0.9.jar
struts2-sitemesh-plugin-2.0.9.jar
struts2-spring-plugin-2.0.9.jar
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论