首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Spring+JPA+Struts1的调整

2012-11-06 
Spring+JPA+Struts1的整合1.首先整合spring+JPA。由于是JPA,所以在src下建立一个META-INF的文件夹,在里面建

Spring+JPA+Struts1的整合

1.首先整合spring+JPA。由于是JPA,所以在src下建立一个META-INF的文件夹,在里面建立JPA的persistence.xml文件。JPA的

实现是基于Hibernate3,所以在persistence.xml文件中配置hibernate连接数据库的属性。

?

2.在web.xml中配置spring容器,让spring管理我们的类。当然了,在src目录下建立beans.xml文件

?<!--web容器配置spring的配置文件? -->
? <context-param>
? <param-name>contextConfigLocation</param-name>
? <param-value>classpath:beans.xml</param-value>
? </context-param>
? <!--web容器实例化spring-->
? <listener>
?? <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
? </listener>

?

3.在beans.xml中配置jpa的实体管理器(LocalEntityManagerFactoryBean)和jpa事务管理器(JpaTransactionManager),都是

spring为我们做好的。

?? <!-- 实例化spring的JPA实体管理器 -->
?<bean id="entityManagerFactory" value="itcast"/>
?</bean>
?<!-- 实例化spring的JPA事务管理器 -->
?<bean id="txManager" ref="entityManagerFactory"/>
?</bean>

?

spring 的事务管理用注解方式声明,所以beans.xml中配置spring的事务管理器。

<!--加载注解驱动? 即用注解的方式启动事务管理器? -->
?<tx:annotation-driven transaction-manager="txManager"/>

?

4.JPA的实体映射是通过注解@Entity做的。所以创建好实体bean以后,做好注解就达到实体映射的目的了。

?

5.在业务服务层中,如何应用JPA的数据库访问对象呢?通过注解的方式应用EntityManager对象。即在业务层实现类中

@PersistenceContext private EntityManager em;这样就可以通过em对象增删改查实体对象了。

?

6.搭建spring+JPA的平台以后,可以通过junit测试对实体的增删改查,检验是否集成成功。

?

7.spring+struts1的集成,首先在web.xml中初始化struts1.

<!-- 配置struts1 -->
?<servlet>
?? <servlet-name>struts1</servlet-name>
?? <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
?? <init-param>
??? <param-name>config</param-name>
??? <param-value>/WEB-INF/struts-config.xml</param-value>
?? </init-param>?
?</servlet>
?<servlet-mapping>
?? <servlet-name>struts1</servlet-name>
?? <url-pattern>*.do</url-pattern>
?</servlet-mapping>

?

struts-config.xml配置文件放在WEB-INF目录下。

?

8.struts-config.xml配置文件中配置struts1的formbeans,action-mappings,还要指明struts1的action有spring容器管理。

<!-- 通过controller把struts的action由spring管理 -->
<controller>
?<set-property? property="processorClass" value="org.springframework.web.struts.DelegatingRequestProcessor"/>
</controller>

spring怎么管理struts1的action呢?其实很简单,首先在spring中创建控制层的bean对象,struts1配置中的action的path和

bean对象的name是一样的,这样spring就可以管理action请求了。

?

9.配置好了spring+struts1的平台以后,就创建action测试是否集成成功。在action类中,通过@Resource 注解引用业务层的

接口,实现控制层中调用业务方法。

?

总结:spring+JPA+struts1的集成有一定的难度,首先要有一定的基础包括spring,JPA,struts1等的基本知识。然后还得有对

MVC框架的了解。当然了前提是有java方面的良好的基础知识。想用好一个框架,还是不断地用,多开发多深入到具体的每一

个点上详细做才能最终掌握它。

?

?

?

?

?

?

热点排行