Mybatis依赖SqlSessionTemplate例子

1.application.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:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx" 
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
	xmlns:lang="http://www.springframework.org/schema/lang"
	xmlns:top="http://www.comtop.org/schema/spring-top"
	xsi:schemaLocation="
		     http://www.springframework.org/schema/beans
		     http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
		     http://www.springframework.org/schema/tx
		     http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
		     http://www.springframework.org/schema/aop
		     http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
		     http://www.springframework.org/schema/context
		     http://www.springframework.org/schema/context/spring-context-3.2.xsd
		     http://www.directwebremoting.org/schema/spring-dwr
        	 http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd
        	 http://www.springframework.org/schema/lang
        	 http://www.springframework.org/schema/lang/spring-lang-3.2.xsd
        	 http://www.comtop.org/schema/spring-top
        	 http://www.comtop.org/schema/top/spring-top.xsd">
	
	<!-- spring 注解 -->  
    <context:component-scan base-package="com.dwr"/>
    
    <!-- 这句的作用是表示允许DWR访问Spring的Context -->  
	<dwr:annotation-config  id="dwr_as"/>  
    <!-- 扫描加了注解@RemoteProxy & @RemoteMethod 的对象 -->  
    <dwr:annotation-scan scanRemoteProxy="false" base-package="com.dwr" />  
    <!-- dwr初始化配置 -->
    <dwr:configuration></dwr:configuration>
    
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"  
       destroy-method="close">
       <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />  
       <property name="url" value="jdbc:oracle:thin:@10.10.15.29:1521:xxxx" />  
       <property name="username" value="edmp" />  
       <property name="password" value="edmp" />  
    </bean>
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
        <property name="dataSource" ref="dataSource" />
		<property name="mapperLocations" value="classpath:com/mybatis/*.xml" /> 
    </bean>
    <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
		<property name="sqlSessionFactory" ref="sqlSessionFactory" />
	</bean>
	
	<import resource="RESTful.xml" />
	
</beans>


2.MyBatisDAO :
package com.dwr;

import java.util.List;

import javax.annotation.Resource;

import org.apache.ibatis.session.RowBounds;
import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.stereotype.Repository;

@Repository
public class MyBatisDAO{
	
	@Resource
    private SqlSessionTemplate sqlSessionTemplate;  
  
    public MyBatisDAO() {  
    }  
  
    public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {  
        this.sqlSessionTemplate = sqlSessionTemplate;  
    }  
  
    public void delete(String statementId, Object deleteObject) {  
        try {  
            this.sqlSessionTemplate.delete(statementId, deleteObject);  
        } catch (Exception e) {  
        }  
    }  
  
    public void insert(String statementId, Object insertObject) {  
        try {  
            this.sqlSessionTemplate.insert(statementId, insertObject);  
        } catch (Exception e) {  
        }  
    }  
  
  
    public void update(String statementId, Object updateObject) {  
        try {  
            this.sqlSessionTemplate.update(statementId, updateObject);  
        } catch (Exception e) {  
        }  
    }  
  
  
    public Object getObject(String statementId, Object selectParamObject) {  
        return this.sqlSessionTemplate  
                .selectOne(statementId, selectParamObject);  
    }  
    
    @SuppressWarnings("all")
    public List queryList(String statementId, Object queryParamObject) {  
        return this.sqlSessionTemplate  
                .selectList(statementId, queryParamObject);  
    }
    @SuppressWarnings("all")
    public List queryList(String statementId, Object queryParamObject,  
            int pageNo, int pageSize) {  
        RowBounds objRowBounds;  
        int iOffset = (pageNo - 1) * pageSize;  
        objRowBounds = new RowBounds(iOffset, pageSize);  
        return this.sqlSessionTemplate.selectList(statementId,  
                queryParamObject, objRowBounds);  
    }  
}  



3.mybatis配置文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
    PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
    "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="Test">

	<select id="queryDataCount"
		parameterType="com.mybatis.Test"
		resultType="int">
		SELECT COUNT(1) FROM INF_CONSUMER T WHERE T.UUID = #{uuid}
	</select>
	
</mapper>



4.具体DAO配置

package com.dwr;

import org.springframework.stereotype.Repository;

import com.mybatis.Test;

@Repository
public class TestDAO extends MyBatisDAO {

	public int getCount(Test test) {
		return (Integer) this.getObject("Test.queryDataCount", test);
	}
}



你可能感兴趣的:(SqlSession)