maven 整合struts2,mybaitis,spring使用drudi数据源
2014-08-13 11:10
323 查看
这几天一直在搭struts2,mybatis,spring的整合框架,作为一个新手,实在是不容易,看了很多文档和资料,期间出了很多问题,不过最后总算是搭出来了。记录下来,作为以后的参考,以及现在的温习。
1.首先,我用maven新建了一个webapp项目(纯粹的maven web项目),pom.xml中jar文件配置如下:
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.3</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version> 8.2-504.jdbc3</version>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.16</version>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.16</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_2.4_spec</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.1.26</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>0.2.9</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>dbcp</artifactId>
<version>6.0.41</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
在网上看到别人整合struts2和spring的时候说有jar包冲突的问题,这里我没有遇到。
2.我用mybatis-generator工具自动生成了bean.mapper.和mapping三个文件。熟悉mybatis的都熟悉这三者之间的映射关系,这里就不解释了。工程目录如下:
3第三点也是最重要的一点,就是spring的配置,这里我们把spring配置和mybatis的配置放在一个文件里面了,applicationContext-core.xml文件配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/jee
http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
<!--jndi配置数据源-->
<!-- <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName"> <value>java:comp/env/jdbc/flowDB</value> </property>
</bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource"> <ref bean="dataSource" /> </property> </bean> -->
<!--引入属性文件-->
<context:property-placeholder location="classpath:config.properties" />
<!-- 配置数据源 -->
<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
<property name="url" value="${jdbc_url}" />
<property name="username" value="${jdbc_username}" />
<property name="password" value="${jdbc_password}" />
<!-- 初始化连接大小 -->
<property name="initialSize" value="0" />
<!-- 连接池最大使用连接数量 -->
<property name="maxActive" value="20" />
<!-- 连接池最大空闲 -->
<property name="maxIdle" value="20" />
<!-- 连接池最小空闲 -->
<property name="minIdle" value="0" />
<!-- 获取连接最大等待时间 -->
<property name="maxWait" value="60000" />
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize"
value="33" />
<property name="validationQuery" value="${validationQuery}" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<property name="testWhileIdle" value="true" />
<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="25200000" />
<!-- 打开removeAbandoned功能 -->
<property name="removeAbandoned" value="true" />
<!-- 1800秒,也就是30分钟 -->
<property name="removeAbandonedTimeout" value="1800" />
<!-- 关闭abanded连接时输出错误日志 -->
<property name="logAbandoned" value="true" />
<!-- 监控数据库 -->
<property name="filters" value="stat" />
<!-- <property name="filters" value="mergeStat" /> -->
</bean>
<!-- 数据连接管理 -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- myBatis文件 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:myBatis-config.xml" />
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 拦截器:配置事务的传播特性 -->
<bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="add*">PROPAGATION_REQUIRED</prop>
<prop key="edit*">PROPAGATION_REQUIRED</prop>
<prop key="remove*">PROPAGATION_REQUIRED</prop>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="modify*">PROPAGATION_REQUIRED</prop>
<prop key="del*">PROPAGATION_REQUIRED</prop>
<prop key="*">readOnly</prop>
</props>
</property>
</bean>
<bean id="flowInstallTargetMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!-- 这里是接口,不是接口实现类了 -->
<property name="mapperInterface"
value="com.testStruts.mapper.FlowInstallTargetMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
<bean id="installServiceImpl" class="com.testStruts.service.InstallServiceImpl">
<property name="flowInstallTargetMapper" ref="flowInstallTargetMapper" />
</bean>
<!-- 为IVillageArticle接口配置事务拦截器,baseTransactionProxy是事务拦截器,在Controller中获取这个对象 。这里不能缺少,在springmvc中是没有这个配置的-->
<bean id="installService" parent="baseTransactionProxy">
<!-- 设置target,也就是IVillageArticle的实现类 -->
<property name="target" ref="installServiceImpl"/>
</bean>
<bean id="installAction" class="com.testStruts.action.InstallAction">
<property name="installService" ref="installService" />
</bean>
</beans>
4.写我们的Service和service实现类
package com.testStruts.service;
import java.util.Date;
import org.springframework.beans.factory.annotation.Autowired;
import com.testStruts.bean.FlowInstallTarget;
import com.testStruts.mapper.FlowInstallTargetMapper;
public class InstallServiceImpl implements InstallService {
private FlowInstallTargetMapper flowInstallTargetMapper;
public FlowInstallTargetMapper getFlowInstallTargetMapper() {
return flowInstallTargetMapper;
}
@Autowired
public void setFlowInstallTargetMapper(
FlowInstallTargetMapper flowInstallTargetMapper) {
this.flowInstallTargetMapper = flowInstallTargetMapper;
}
public FlowInstallTarget selectByPrimaryKey(Date date) {
return flowInstallTargetMapper.selectByPrimaryKey(date);
}
}
service的接口从中抽出即可。
5.再然后是Action类
package com.testStruts.action;
import java.util.Calendar;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSON;
import com.opensymphony.xwork2.ActionSupport;
import com.sun.servicetag.Installer;
import com.testStruts.service.InstallService;
public class InstallAction extends ActionSupport {
private static final long serialVersionUID = -4621492739125099197L;
private InstallService installService;
@Override
public String execute() throws Exception {
Calendar date = Calendar.getInstance();
date.set(Calendar.DAY_OF_MONTH, 3);
date.set(Calendar.HOUR_OF_DAY, 0);
date.set(Calendar.MINUTE, 0);
date.set(Calendar.SECOND, 0);
System.out.println(date.getTime());
System.out.println(JSON.toJSONString(installService.selectByPrimaryKey(date.getTime())));
return SUCCESS;
}
public InstallService getInstallService() {
return installService;
}
@Autowired
public void setInstallService(InstallService installService) {
this.installService = installService;
}
}
6.mybatis.xml和struts2.xml配置文件
mybaitis.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 指定映射器路径 -->
<mappers>
<mapper resource="com/testStruts/mapping/FlowInstallTargetMapper.xml"/>
<mapper resource="com/testStruts/mapping/FlowSellTargetMapper.xml"/>
</mappers>
</configuration>
struts2.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="struts-default">
<action name="installAction" class="com.testStruts.action.InstallAction">
<result name="success">success.jsp</result>
<result name="error">error.jsp</result>
</action>
</package>
</struts>
comfig.properties postgres数据库
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
driverClassName=org.postgresql.Driver
validationQuery=SELECT 1
jdbc_url=jdbc:postgresql://*.*.*.*:5432/flowlog?characterEncoding=UTF8
jdbc_username=postgres
jdbc_password=
至此我们的整合就完成了,在spring的配置文件里面我对所有的bean做了手工配置,在class类里做了自动注入,有点多此一举,大概是抱着有备无患的想法。我是新手,勿喷,谢谢。
1.首先,我用maven新建了一个webapp项目(纯粹的maven web项目),pom.xml中jar文件配置如下:
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.3</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version> 8.2-504.jdbc3</version>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.16</version>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.16</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_2.4_spec</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.1.26</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>0.2.9</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>dbcp</artifactId>
<version>6.0.41</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
在网上看到别人整合struts2和spring的时候说有jar包冲突的问题,这里我没有遇到。
2.我用mybatis-generator工具自动生成了bean.mapper.和mapping三个文件。熟悉mybatis的都熟悉这三者之间的映射关系,这里就不解释了。工程目录如下:
3第三点也是最重要的一点,就是spring的配置,这里我们把spring配置和mybatis的配置放在一个文件里面了,applicationContext-core.xml文件配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/jee
http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
<!--jndi配置数据源-->
<!-- <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName"> <value>java:comp/env/jdbc/flowDB</value> </property>
</bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource"> <ref bean="dataSource" /> </property> </bean> -->
<!--引入属性文件-->
<context:property-placeholder location="classpath:config.properties" />
<!-- 配置数据源 -->
<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
<property name="url" value="${jdbc_url}" />
<property name="username" value="${jdbc_username}" />
<property name="password" value="${jdbc_password}" />
<!-- 初始化连接大小 -->
<property name="initialSize" value="0" />
<!-- 连接池最大使用连接数量 -->
<property name="maxActive" value="20" />
<!-- 连接池最大空闲 -->
<property name="maxIdle" value="20" />
<!-- 连接池最小空闲 -->
<property name="minIdle" value="0" />
<!-- 获取连接最大等待时间 -->
<property name="maxWait" value="60000" />
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize"
value="33" />
<property name="validationQuery" value="${validationQuery}" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<property name="testWhileIdle" value="true" />
<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="25200000" />
<!-- 打开removeAbandoned功能 -->
<property name="removeAbandoned" value="true" />
<!-- 1800秒,也就是30分钟 -->
<property name="removeAbandonedTimeout" value="1800" />
<!-- 关闭abanded连接时输出错误日志 -->
<property name="logAbandoned" value="true" />
<!-- 监控数据库 -->
<property name="filters" value="stat" />
<!-- <property name="filters" value="mergeStat" /> -->
</bean>
<!-- 数据连接管理 -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- myBatis文件 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:myBatis-config.xml" />
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 拦截器:配置事务的传播特性 -->
<bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="add*">PROPAGATION_REQUIRED</prop>
<prop key="edit*">PROPAGATION_REQUIRED</prop>
<prop key="remove*">PROPAGATION_REQUIRED</prop>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="modify*">PROPAGATION_REQUIRED</prop>
<prop key="del*">PROPAGATION_REQUIRED</prop>
<prop key="*">readOnly</prop>
</props>
</property>
</bean>
<bean id="flowInstallTargetMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!-- 这里是接口,不是接口实现类了 -->
<property name="mapperInterface"
value="com.testStruts.mapper.FlowInstallTargetMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
<bean id="installServiceImpl" class="com.testStruts.service.InstallServiceImpl">
<property name="flowInstallTargetMapper" ref="flowInstallTargetMapper" />
</bean>
<!-- 为IVillageArticle接口配置事务拦截器,baseTransactionProxy是事务拦截器,在Controller中获取这个对象 。这里不能缺少,在springmvc中是没有这个配置的-->
<bean id="installService" parent="baseTransactionProxy">
<!-- 设置target,也就是IVillageArticle的实现类 -->
<property name="target" ref="installServiceImpl"/>
</bean>
<bean id="installAction" class="com.testStruts.action.InstallAction">
<property name="installService" ref="installService" />
</bean>
</beans>
4.写我们的Service和service实现类
package com.testStruts.service;
import java.util.Date;
import org.springframework.beans.factory.annotation.Autowired;
import com.testStruts.bean.FlowInstallTarget;
import com.testStruts.mapper.FlowInstallTargetMapper;
public class InstallServiceImpl implements InstallService {
private FlowInstallTargetMapper flowInstallTargetMapper;
public FlowInstallTargetMapper getFlowInstallTargetMapper() {
return flowInstallTargetMapper;
}
@Autowired
public void setFlowInstallTargetMapper(
FlowInstallTargetMapper flowInstallTargetMapper) {
this.flowInstallTargetMapper = flowInstallTargetMapper;
}
public FlowInstallTarget selectByPrimaryKey(Date date) {
return flowInstallTargetMapper.selectByPrimaryKey(date);
}
}
service的接口从中抽出即可。
5.再然后是Action类
package com.testStruts.action;
import java.util.Calendar;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSON;
import com.opensymphony.xwork2.ActionSupport;
import com.sun.servicetag.Installer;
import com.testStruts.service.InstallService;
public class InstallAction extends ActionSupport {
private static final long serialVersionUID = -4621492739125099197L;
private InstallService installService;
@Override
public String execute() throws Exception {
Calendar date = Calendar.getInstance();
date.set(Calendar.DAY_OF_MONTH, 3);
date.set(Calendar.HOUR_OF_DAY, 0);
date.set(Calendar.MINUTE, 0);
date.set(Calendar.SECOND, 0);
System.out.println(date.getTime());
System.out.println(JSON.toJSONString(installService.selectByPrimaryKey(date.getTime())));
return SUCCESS;
}
public InstallService getInstallService() {
return installService;
}
@Autowired
public void setInstallService(InstallService installService) {
this.installService = installService;
}
}
6.mybatis.xml和struts2.xml配置文件
mybaitis.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 指定映射器路径 -->
<mappers>
<mapper resource="com/testStruts/mapping/FlowInstallTargetMapper.xml"/>
<mapper resource="com/testStruts/mapping/FlowSellTargetMapper.xml"/>
</mappers>
</configuration>
struts2.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="struts-default">
<action name="installAction" class="com.testStruts.action.InstallAction">
<result name="success">success.jsp</result>
<result name="error">error.jsp</result>
</action>
</package>
</struts>
comfig.properties postgres数据库
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
driverClassName=org.postgresql.Driver
validationQuery=SELECT 1
jdbc_url=jdbc:postgresql://*.*.*.*:5432/flowlog?characterEncoding=UTF8
jdbc_username=postgres
jdbc_password=
至此我们的整合就完成了,在spring的配置文件里面我对所有的bean做了手工配置,在class类里做了自动注入,有点多此一举,大概是抱着有备无患的想法。我是新手,勿喷,谢谢。
相关文章推荐
- maven管理的struts2-spring3-mybatis-freemarker框架整合
- spring与jpa整合 简化persistence.xml配置文件 使用属性文件 数据源dbcp访问数据库
- 使用Spring插件完成Spring和Struts2的整合
- Dubbo Zookeeper与Spring或者struts2整合和使用
- 注解版struts2与spring整合(maven管理)
- struts2与spring的整合简单总结和使用
- Spring3.x_Struts2.x_Hibernate3.x整合之分页pager-taglib的简单使用
- 关于struts2与spring整合中,scope=“?”的使用,对整个系统的影响
- spring4 hibernate4 struts2 maven的整合
- 使用Maven配置Struts2 集成Spring
- 使用Maven管理项目-----创建Struts2,Spring,Hibernate项目
- SpringMVC+Spring+Mybatis+Maven整合-使用的工具
- spring 整合struts2 使用 aop 碰到的问题
- 在eclipse下使用maven搭建Struts2,Hibernate4和Spring4开发环境
- 使用Maven管理项目-----创建 Struts2,Spring,Hibernate项目
- Spring整合Struts2中拦截链与注解的使用
- Maven中整合Struts2、Spring3与Hibernate
- 整合框架 javaweb开发平台ssmy_m(与代码生成) java struts2 mybatis spring maven jquery
- 使用Idea创建ssm项目,SpringMVC+Spring+MyBatis+Maven整合
- Spring4.2.3+Hibernate4.3.11整合( IntelliJ maven项目)(使用Annotation注解)(Junit测试类)