您的位置:首页 > 编程语言 > Java开发

structs2,hibernate,spring自带的jar包分别做什么使

2012-06-27 18:34 357 查看
这个东西 网上一搜一大把

1)Spring 2.5所需jar包:(可通过MyEclipse/Project Capabilities/Add Spring Capabilities添加这些jar档)

spring-beans.jar

spring-context.jar

spring-core.jar

commons-attributes-api.jar

commons-attributes-compiler.jar

commons-logging.jar

log4j-1.2.15.jar

2)以下是在struts2中必须有的与tiels2相关的文件,考贝到项目的lib目录就OK了。

用struts-2.1.2版本是如果只导入:commons-logging-1.0.4.jar、freemarker-2.3.12.jar、ognl-2.6.11.jar、struts2-core-2.1.2.jar、xwork-2.1.1.jar这五个包(比如struts-2.0.11及更往前的版本,很多教程都是这样的配置的),就会报struts2-core-2.1.2.jar!/struts-default异常解决办法是还得加入如下两个

commons-io-1.3.2.jar、commons-fileupload-1.2.1.jar

struts2-tiles-plugin.jar、

tiles-api-2.0.4.jar、tiles-core-2.0.4.jar、tiles-jsp-2.04.jar

后三个文件,从tiles.apache.org下载tiles工程。、

3)#with tiles 2.0.5

commons-beanutils-1.7.0.jar、commons-digester-1.8.jar、

tiles-core-2.0.5.jar、tiles-api-2.0.5.jar、tiles-jsp-2.0.5.jar

4)hibernate3.2核心jar包:

jta.jar(标准的JTA API)、commons-logging.jar(日志功能)、commons-collections.jar(集合类)、antlr.jar(ANother Tool for Language Recognition)、dom4j.jar(XML配置和映射解释器)、Hibernate3.jar(核心库)、ehcache.jar(如果没有其它的缓存,则它是必要的)

5)oracle驱动jar档:classes12.jar

综合Spring 2.5 + Hibernate 3 + Struts 2.1 + tiles 2 + oracle9i所需jar包有:

spring-beans.jar

spring-context.jar

spring-core.jar

commons-attributes-api.jar

commons-attributes-compiler.jar

commons-logging.jar

log4j-1.2.15.jar

antlr.jar

jta.jar

jstl.jar

commons-logging.jar

commons-collections.jar

dom4j.jar

Hibernate3.jar

ehcache.jar

commons-logging-1.0.4.jar

freemarker-2.3.12.jar

ognl-2.6.11.jar

struts2-core-2.1.2.jar

xwork-2.1.1.jar

commons-io-1.3.2.jar

commons-fileupload-1.2.1.jar

struts2-tiles-plugin.jar

tiles-api-2.0.4.jar

tiles-core-2.0.4.jar

tiles-jsp-2.04.jar

commons-digester-1.8.jar

commons-beanutils-1.7.0.jar

classes12.jar

后加上:ehcache-1.1.jar,asm.jar,aspectjweaver-1.5.2a.jar,c3p0-0.9.0.jar,cglib-2.1.3.jar,spring-hibernate3.jar,spring.jar,struts2-spring-plugin-2.0.11.jar

6)struts2 +hibernate3+Spring 的一点总结

1:首先必须要注意的是不能在struts2的action中直接调用继承hibernateSupport的DAO,不然好多东西无法初始化,会抛出:java.lang.NULLException.在action中只能初始话的是从页面传过来的数据。而action必须要调用业务逻辑层来完成具体的工作。

所以应该有这么个模式:

1:让spring管理所有的bean。hibernate的datasource sessionFactory。还有我们自己的具体dao,这里要注意我们的dao必须要引用sessionFactory,所以要把 sessionFactory注入到我们的dao中由我们自己的dao借助sessionFactory 产生的hibernateTemplate来完成具体共组。

HibernateDaoSupport 已经为我们注入好了sessionFactory.

接着我们要定义业务逻辑层,然后把业务逻辑bean由spring管理。因为业务逻辑需要dao,所以把我们的dao注入到业务逻辑层,我们的业务逻辑层把需要的一些东西都弄好。然后我们把struts2的action的class交给spring管理,然后在这个bean中注入action需要的逻辑bean.

7)在struts 2 中使用tiles-2.0.4时,需在web.xml中加入如下listener:

<listener>

<listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>

</listener>

同时在头部加入tiles-defs.xml文件配置:如:

<context-param>

<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>

<param-value><!-- 多个tiles文件在此以英文逗号隔开 -->

/WEB-INF/tiles/tiles-defs.xml,/WEB-INF/tiles/tiles-about.xml

</param-value>

</context-param>

注意:在tiles-defs.xml文件中的doctype声明应为:

<!DOCTYPE tiles-definitions PUBLIC

"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"

"http://tiles.apache.org/dtds/tiles-config_2_0.dtd">

而不是

<!DOCTYPE tiles-definitions PUBLIC

"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"

"http://struts.apache.org/dtds/tiles-config_2_0.dtd">

否则 定义时 put-attribute 会出现红叉。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: