现在的位置: 首页 > 综合 > 正文

mybatis 学习7

2018年05月21日 ⁄ 综合 ⁄ 共 6610字 ⁄ 字号 评论关闭

package cn.com.jtcrm.common.mybatis.dao;

import java.util.List;
import java.util.Map;
/**
 *
 * @author Administrator
 *
 * @param <T>
 */
public interface IBaseDao {
    /**
     * 单表插入记录
     * @param obj
     */
 public  <T>  int insert(String _mybitsId,  T obj);
 /**
  * 更新单表
  * @param obj
  */
 public  <T>  int update(String _mybitsId, T obj);
    /**
     * 删除记录
     * @param clz
     * @param id
     */
 public  <T>  int delete(String _mybitsId, T obj);
 
 /**
  *
  * 返回查询一览表的信息
  * @param <T>
  * @param _mybitsId  mybatis中对应业务标识
  * @param _params
  * @return
  */
 public  <T>  List<T> query(String _mybitsId, Map<String, Object> _params);
 /**
  * 查询相关列表信息
  * @param <T> 返回数据
  * @param id mybatis中对应业务标识
  * @param _params
  * @return
  */
 public <T> List<T> query(String _mybitsId, Object _params);
 /**
  * 查询单个数据
  * @param queryString
  * @param object
  * @return
  */
 public Object queryOne(String queryString, Object object);

}

 

 

 

package cn.com.jtcrm.common.mybatis.dao;

import java.sql.Connection;
import java.util.List;
import java.util.Map;

import org.mybatis.spring.support.SqlSessionDaoSupport;
import org.springframework.stereotype.Repository;

@Repository
public class MbBaseDao extends SqlSessionDaoSupport implements IBaseDao {
 /**
  * 获取相关的数据库连接
  */
 public Connection getConnection(){
  return getSqlSession().getConnection();
 }
 @Override
 public <T> int delete(String _mybitsId, T obj) {
  return getSqlSession().delete(_mybitsId, obj);
 }

 @Override
 public <T> int insert(String _mybitsId, T obj) {
  return getSqlSession().insert(_mybitsId, obj);
 }
 @Override
 public <T> int update(String _mybitsId, T obj) {
  return getSqlSession().update(_mybitsId, obj);
 }

 @Override
 public <T> List<T> query(String _mybitsId, Map<String, Object> _params) {
  return getSqlSession().selectList(_mybitsId, _params);
 }
 @Override
 public <T> List<T> query(String _mybitsId, Object _params) {
  return getSqlSession().selectList(_mybitsId, _params);
 }
 
 @Override
 public Object queryOne(String _mybitsId, Object object) {
  return getSqlSession().selectOne(_mybitsId, object);
 }
}

 

 

 

/**
 *
 */
package cn.com.jtcrm.common.service;

import cn.com.jtcrm.common.jdbc.access.DbBaseDao;
import cn.com.jtcrm.common.mybatis.dao.MbBaseDao;

/**
 * @author A-pZ ( http://www.h3.dion.ne.jp/~alpha-pz/ )
 */
public interface IBaseService {
    public MbBaseDao getMbBaseDao();
    public void setMbBaseDao(MbBaseDao dao);
    public DbBaseDao getDbBaseDao();
    public void setDbBaseDao(DbBaseDao dao);
}

 

package cn.com.jtcrm.common.service;

import cn.com.jtcrm.common.jdbc.access.DbBaseDao;
import cn.com.jtcrm.common.mybatis.dao.MbBaseDao;

/**
 *
 * @author
 *
 */
public abstract class BaseServiceImpl implements IBaseService {

 protected MbBaseDao mbDao;
 protected DbBaseDao dbDao;
 @Override
 public DbBaseDao getDbBaseDao(){
  return dbDao;
 }
 
 @Override
 public MbBaseDao getMbBaseDao() {
  return mbDao;
 }

 @Override
 public void setDbBaseDao(DbBaseDao dao) {
  this.dbDao =dao;
 }

 @Override
 public void setMbBaseDao(MbBaseDao dao) {
  this.mbDao = dao;
 }
}

 

 

 

applicationContext.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:jee="http://www.springframework.org/schema/jee"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="
http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

http://www.springframework.org/schema/jee

http://www.springframework.org/schema/jee/spring-jee-3.0.xsd

http://www.springframework.org/schema/tx

http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
"
default-autowire="byName"
>

 

 <context:component-scan base-package="com" >
  <context:include-filter type="regex" expression=".service.*"/>
 </context:component-scan>
 
    <context:component-scan base-package="com.jtcrm.resource.framework" use-default-filters="false">
  <context:include-filter type="regex" expression="com.jtcrm.resource.framework.*"/>
 </context:component-scan>

<!-- ========================= TRANSACTION DEFINITIONS ========================= -->

 <!-- 开发测试数据库环境   -->
 
 <bean id="dataSource"
  class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName">
   <value>oracle.jdbc.driver.OracleDriver</value>
  </property>
  <property name="url">
   <value>jdbc:oracle:thin:@172.16.1.241:1521:jtcrm</value>
  </property>
  <property name="username">
   <value>jtorder</value>
  </property>
  <property name="password">
   <value>jtorder</value>
  </property>
 </bean>
 
 <!-- 开发测试数据库环境
 
 <bean id="dataSource"
  class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName">
   <value>oracle.jdbc.driver.OracleDriver</value>
  </property>
  <property name="url">
   <value>jdbc:oracle:thin:@172.16.1.242:1521:jtcrm</value>
  </property>
  <property name="username">
   <value>jtorder</value>
  </property>
  <property name="password">
   <value>jtorder</value>
  </property>
 </bean>  -->

 <!-- 本地测试数据库环境-242   
 
 <bean id="dataSource"
  class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName">
   <value>oracle.jdbc.driver.OracleDriver</value>
  </property>
  <property name="url">
   <value>jdbc:oracle:thin:@172.16.1.242:1521:jtcrm</value>
  </property>
  <property name="username">
   <value>jtorder</value>
  </property>
  <property name="password">
   <value>jtorder</value>
  </property>
 </bean>
 -->
 <!-- 测试数据库环境
 <bean id="dataSource"
  class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName">
   <value>oracle.jdbc.driver.OracleDriver</value>
  </property>
  <property name="url">
   <value>jdbc:oracle:thin:@172.16.1.111:1521:jtcrm</value>
  </property>
  <property name="username">
   <value>jtorder</value>
  </property>
  <property name="password">
   <value>jtorder</value>
  </property>
 </bean>
--> 

 <!--JNDI数据源配置    
  
 <bean id="dataSource"
  class="org.springframework.jndi.JndiObjectFactoryBean">
  <property name="jndiName">
  <value>jdbc/JTORDER</value>
  </property>
 </bean>
-->
 
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource"><ref bean="dataSource"/></property>
    </bean>

 <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="false" />

 <!-- MyBatis -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
      <property name="dataSource" ref="dataSource" />
       <property name="mapperLocations" value="classpath*:config/mybatis/model/**/*.xml" />
    </bean>
 
    <!-- DAO定義 MyBatis -->
    <bean id="mbBaseDao" class="cn.com.jtcrm.common.mybatis.dao.MbBaseDao">
       <property name="sqlSessionFactory" ref="sqlSessionFactory" />
    </bean>
   
    <bean id="dbBaseDao" class="cn.com.jtcrm.common.jdbc.access.DbBaseDao">
       <property name="sqlSessionFactory" ref="sqlSessionFactory" />
    </bean>

</beans>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

【上篇】
【下篇】

抱歉!评论已关闭.