`
yzabstract
  • 浏览: 14430 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

基于maven的springmvc + spring + ibatis 集成

    博客分类:
  • J2EE
 
阅读更多
pom.xml:
[html] view plaincopy
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
  <modelVersion>4.0.0</modelVersion> 
  <groupId>springibatis</groupId> 
  <artifactId>springibatis</artifactId> 
  <packaging>war</packaging> 
  <version>1.0.0-SNAPSHOT</version> 
  <name>springibatis Maven Webapp</name> 
  <url>http://maven.apache.org</url> 
   
  <properties> 
    <spring.version>3.1.1.RELEASE</spring.version> 
    <slf4j.version>1.6.4</slf4j.version> 
    <log4j.version>1.2.16</log4j.version> 
  </properties> 
   
  <dependencies> 
    <!-- test --> 
    <dependency> 
        <groupId>junit</groupId> 
        <artifactId>junit</artifactId> 
        <version>4.11</version> 
        <scope>test</scope> 
    </dependency> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-test</artifactId> 
        <version>${spring.version}</version> 
        <scope>test</scope> 
    </dependency> 
    <!-- spring --> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-context</artifactId> 
        <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-tx</artifactId> 
        <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-context-support</artifactId> 
        <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-asm</artifactId> 
        <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-orm</artifactId> 
        <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.springframework</groupId> 
        <artifactId>spring-webmvc</artifactId> 
        <version>${spring.version}</version> 
    </dependency> 
    <!-- validate --> 
    <dependency> 
        <groupId>javax.validation</groupId> 
        <artifactId>validation-api</artifactId> 
        <version>1.0.0.GA</version> 
    </dependency> 
    <dependency> 
        <groupId>org.hibernate</groupId> 
        <artifactId>hibernate-validator</artifactId> 
        <version>4.1.0.Final</version> 
    </dependency> 
     
    <!-- loggin --> 
    <dependency> 
        <groupId>log4j</groupId> 
        <artifactId>log4j</artifactId> 
        <version>${log4j.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.slf4j</groupId> 
        <artifactId>slf4j-api</artifactId> 
        <version>${slf4j.version}</version> 
    </dependency> 
    <dependency> 
        <groupId>org.slf4j</groupId> 
        <artifactId>slf4j-log4j12</artifactId> 
        <version>${slf4j.version}</version> 
    </dependency> 
     
    <!-- mysql --> 
    <dependency> 
        <groupId>mysql</groupId> 
        <artifactId>mysql-connector-java</artifactId> 
        <version>5.1.10</version> 
    </dependency> 
             
    <!-- apache --> 
    <dependency> 
        <groupId>commons-dbcp</groupId> 
        <artifactId>commons-dbcp</artifactId> 
        <version>1.4</version> 
    </dependency> 
    <dependency> 
        <groupId>commons-lang</groupId> 
        <artifactId>commons-lang</artifactId> 
        <version>2.6</version> 
    </dependency> 
    <dependency> 
        <groupId>commons-logging</groupId> 
        <artifactId>commons-logging</artifactId> 
        <version>1.1.2</version> 
    </dependency> 
    <dependency> 
        <groupId>commons-collections</groupId> 
        <artifactId>commons-collections</artifactId> 
        <version>3.2.1</version> 
    </dependency> 
    <!-- json -->             
    <dependency> 
         <groupId>com.alibaba</groupId> 
         <artifactId>fastjson</artifactId> 
         <version>1.1.28</version> 
    </dependency> 
    <dependency> 
        <groupId>org.codehaus.jackson</groupId> 
        <artifactId>jackson-core-asl</artifactId> 
        <version>1.9.12</version> 
    </dependency> 
    <dependency> 
        <groupId>org.codehaus.jackson</groupId> 
        <artifactId>jackson-mapper-asl</artifactId> 
        <version>1.9.12</version> 
    </dependency> 
    <!-- ibatis --> 
    <dependency> 
        <groupId>org.apache.ibatis</groupId> 
        <artifactId>ibatis-sqlmap</artifactId> 
        <version>2.3.4.726</version> 
    </dependency> 
     
    <dependency> 
        <groupId>javax.servlet</groupId> 
        <artifactId>servlet-api</artifactId> 
        <version>2.5</version> 
        <scope>provided</scope> 
    </dependency> 
    <dependency> 
        <groupId>cglib</groupId> 
        <artifactId>cglib</artifactId> 
        <version>2.2.2</version> 
    </dependency> 
  </dependencies> 
  <build> 
    <finalName>springibatis</finalName> 
    <plugins> 
        <plugin> 
          <groupId>org.apache.maven.plugins</groupId> 
          <artifactId>maven-compiler-plugin</artifactId> 
          <version>2.1</version> 
          <configuration> 
            <source>1.6</source> 
            <target>1.6</target> 
            <skip>true</skip> 
          </configuration> 
        </plugin> 
        <!-- tomcat plugin --> 
        <plugin> 
            <groupId>org.codehaus.mojo</groupId> 
            <artifactId>tomcat-maven-plugin</artifactId> 
            <configuration> 
                <url>http://localhost:8080/manager</url> 
                <server>springibatis</server> 
                <path>/</path> 
                <port>80</port> 
            </configuration> 
        </plugin> 
    </plugins> 
  </build> 
</project> 
[html] view plaincopy
 
web.xml:
[html] view plaincopy
<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> 
  <display-name>springibatis</display-name> 
  <welcome-file-list> 
    <welcome-file>index.jsp</welcome-file> 
  </welcome-file-list> 
  <context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
            /WEB-INF/springmvc-servlet.xml, 
            classpath:applicationContext.xml 
    </param-value> 
  </context-param> 
   
  <listener> 
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
  </listener> 
   
  <servlet> 
    <servlet-name>springmvc</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
  </servlet> 
  <servlet-mapping> 
    <servlet-name>springmvc</servlet-name> 
    <url-pattern>/</url-pattern> 
  </servlet-mapping> 
</web-app> 

springmvc-servlet.xml:
[html] view plaincopy
<?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:mvc="http://www.springframework.org/schema/mvc" 
    xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd 
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"> 
    <!-- 自动扫描,完成bean创建和依赖注入 -->   
    <context:component-scan base-package="com.springibatis"/>   
     
    <mvc:annotation-driven/> 
 
    <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->   
    <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>   
     
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
        <property name="prefix" value="/WEB-INF/jsp/" /> 
        <property name="suffix" value=".jsp" /> 
    </bean> 
</beans> 

applicationContext.xml:
[html] view plaincopy
<?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:p="http://www.springframework.org/schema/p" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
           http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
           http://www.springframework.org/schema/context 
           http://www.springframework.org/schema/context/spring-context-3.1.xsd 
           http://www.springframework.org/schema/aop 
           http://www.springframework.org/schema/aop/spring-aop-3.1.xsd 
           http://www.springframework.org/schema/tx 
           http://www.springframework.org/schema/tx/spring-tx-3.1.xsd 
           http://www.springframework.org/schema/util  
           http://www.springframework.org/schema/util/spring-util-3.1.xsd"> 
            
    <context:component-scan base-package="com.springibatis"/>  
     
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 
      <property name="dataSource" ref="dataSource" /> 
    </bean> 
     
    <tx:annotation-driven transaction-manager="transactionManager"/> 
     
    <!-- jdbc --> 
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">   
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />   
        <property name="url" value="jdbc:mysql://localhost:3306/user" />   
        <property name="username" value="root" />   
        <property name="password" value="admin" />   
    </bean>   
   
    <!-- ibatis  --> 
    <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">   
        <property name="configLocation" value="classpath:sqlMapConfig.xml" /> 
        <property name="dataSource" ref="dataSource" /> 
    </bean>  
</beans> 

sqlMapConfig.xml:
[html] view plaincopy
<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd"> 
<sqlMapConfig> 
    <settings cacheModelsEnabled="true" enhancementEnabled="true"  
              lazyLoadingEnabled="true" errorTracingEnabled="true" useStatementNamespaces="true" /> 
    <sqlMap resource="META-INF/UserDao.xml"/> 
</sqlMapConfig> 
[html] view plaincopy
 
UserDaoMap.xml:
[html] view plaincopy
<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"  
"http://ibatis.apache.org/dtd/sql-map-2.dtd" > 
<sqlMap namespace="UserDao"> 
  <select id="getUserById" resultClass="com.springibatis.pojo.User"> 
    select * from user where userId = #userId# 
  </select> 
   
  <insert id="addUser" parameterClass="com.springibatis.pojo.User"> 
    insert into user  
    (userName, password, userTel) 
    values  
    (#userName#, #password#, #userTel#) 
    <selectKey resultClass="String" keyProperty="userId">   
        select LAST_INSERT_ID() as userId   
    </selectKey>   
  </insert> 
   
  <update id="updateUser" parameterClass="com.springibatis.pojo.User"> 
    update user 
    set password = #password#, userTel = #userTel# 
    where userId = #userId# 
  </update> 
   
  <delete id="deleteUser"> 
    delete from user where userId = #userId# 
  </delete> 
</sqlMap> 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics