spring+struts2+mybatis整合

来源:互联网 发布:java 按位异或 编辑:程序博客网 时间:2024/05/21 09:43

把我常用的记录下来,作为备份:

maven导入

<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version><scope>provided</scope></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.35</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.2.8</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.8.0</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.1.6.RELEASE</version></dependency><!--数据库联接池的包:这里采用了dbcp数据库联接池,常用的还有c3p0的联接池,alibaba联接池 --><dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency><dependency><groupId>commons-pool</groupId><artifactId>commons-pool</artifactId><version>1.4</version></dependency><dependency><groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>20040616</version></dependency><!--spring获取datasource包 --><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>4.1.6.RELEASE</version></dependency><!--切面 --><dependency><groupId>aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.5.3</version></dependency><!--因为要用到jsr250注解 --><dependency><groupId>javax.annotation</groupId><artifactId>javax.annotation-api</artifactId><version>1.2</version></dependency><!-- struts2 核心包 --><dependency><groupId>org.apache.struts</groupId><artifactId>struts2-core</artifactId><version>2.3.20</version></dependency><dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId><version>2.2.4</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>4.1.6.RELEASE</version></dependency><!-- struts中用于支持注解的包 --><dependency><groupId>org.apache.struts</groupId><artifactId>struts2-convention-plugin</artifactId><version>2.3.16.3</version></dependency><!--spring整合mybatis --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.2.2</version></dependency>

struts2.xml:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- 关闭动态方法调用action方法!方法名--><constant name="strus.enable.DynamicMethodInvocation" value="false" /><!-- 启用开发模式--><constant name="struts.devMode" value="true" /><!--表示Action的创建由spring来执行  --><constant name="struts.objectFactory" value="spring" /><constant name="struts.i18n.encoding" value="utf-8" /></struts>
web.xml:

<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"><!-- spring配置文件的位置 --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath*:bean*.xml</param-value></context-param><!--启动spring监听器以初始化spring容器  --> <listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener> <listener><listener-class>com.yc.web.listeners.InitListener</listener-class></listener><filter><filter-name>characterEncodingFilter</filter-name><filter-class>com.yc.web.filters.CharacterEncodingFilter</filter-class></filter><!--struts的前端过滤器  --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><!--编码拦截请求 --><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>*.action</url-pattern></filter-mapping><!--拦截请求 --><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>login.html</welcome-file><welcome-file>login.jsp</welcome-file></welcome-file-list></web-app>

spring整合之后的beans_mybatis.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:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"xmlns:jee="http://www.springframework.org/schema/jee"xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans.xsd        http://www.springframework.org/schema/context        http://www.springframework.org/schema/context/spring-context.xsd        http://www.springframework.org/schema/tx        http://www.springframework.org/schema/tx/spring-tx.xsd        http://www.springframework.org/schema/aop        http://www.springframework.org/schema/aop/spring-aop.xsd        http://www.springframework.org/schema/jee         http://www.springframework.org/schema/jee/spring-jee.xsd"><!--包扫描以加载带了注解的要托管bean  --><context:component-scan base-package="com.yc" /><!--启动事务注解驱动  --><tx:annotation-driven transaction-manager="txManager" /><!--spring如何整合mybatis --><!-- 一:数据库配置读取,因为要数据源,要知道数据库的联接配置 PropertyPlaceholderConfigurer:功能读取db.properties文件 --><beanclass="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations" value="classpath:db.properties" /></bean><!--二:dbcp的配置 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"><property name="driverClassName" value="${driverClassName}" /><property name="url" value="${url}" /><property name="username" value="${username}" /><property name="password" value="${password}" /></bean><!--先配置mybatis的 SqlSessionFactory工厂类 --><!--三:配置mybatis整合spring的插件 --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource"></property><!-- 还是用mybatis中的配置文件 <property name="ConfigLocation" value="classpath:mybatis-spring.xml" /> --><!--优化:不需要mybatis的配置文件 ,配置mybatis中的别名 --><property name="typeAliasesPackage" value="com.yc.bean"></property><property name="mapperLocations" value="classpath:com/yc/dao/mapper/*.xml"></property><!--主要用来配置mybatis中的configuration的settings配置 --><property name="configurationProperties"><props><prop key="logImpl">LOG4J</prop></props></property></bean><!--四:创建sqlSession 这个类是包装了mybatis中的sqlsession的类,用于获取数据库的链接 --><bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"><!-- 只能通过构造方法注入sqlSessionFactory --><constructor-arg ref="sqlSessionFactory"></constructor-arg></bean><!-- 事务管理器 --> <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">        <property name="dataSource" ref="dataSource"/>    </bean><!-- <bean id="cusCustomerMapper" class="org.mybatis.spring.mapper.MapperFactoryBean"><property name="mapperInterface" value="com.yc.dao.CusCustomerDao" /><property name="sqlSessionFactory" ref="sqlSessionFactory" /></bean> --><bean id="usersDao" class="org.mybatis.spring.mapper.MapperFactoryBean"><property name="mapperInterface" value="com.yc.dao.UsersDao" /><property name="sqlSessionFactory" ref="sqlSessionFactory" /></bean></beans>

db.properties:

jndiName=java:comp/env/orcl#driverClassName=oracle.jdbc.driver.OracleDriver#url=jdbc:oracle:thin:@localhost:1521:orcl#username=Scott#password=a#driverClassName=com.mysql.jdbc.Driver#url=jdbc:mysql://localhost:3306/res#username=root#password=adriverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3307/zzusername=rootpassword=ainitialSize=10maxTotal=100minIdle=10

log4j.properties:

# Global logging configurationlog4j.rootLogger=DEBUG, stdout# MyBatis logging configuration...log4j.logger.com.yc.inter=DEBUG# Console output...log4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

redis.properties:

redis.pool.maxActive=1024redis.pool.maxIdle=200redis.pool.maxWait=1000redis.pool.testOnBorrow=trueredis.pool.testOnReturn=trueredis.ip=localhostredis.port=6379


0 0
原创粉丝点击