1. 程式人生 > >SqlMapConfig.xml --- 在spring配置檔案中自動載入的mybatis檔案

SqlMapConfig.xml --- 在spring配置檔案中自動載入的mybatis檔案

<?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>
 <settings>
  <!-- 這個配置使全域性的對映器啟用或禁用快取 -->
  <setting name="cacheEnabled" value="true" />
  <!-- 允許 JDBC 支援生成的鍵。需要適合的驅動。如果設定為 true 則這個設定強制生成的鍵被使用,儘管一些驅動拒絕相容但仍然有效(比如 Derby) -->
  <setting name="useGeneratedKeys" value="true" />
  <!-- 配置預設的執行器。SIMPLE 執行器沒有什麼特別之處。REUSE 執行器重用預處理語句。BATCH 執行器重用語句和批量更新  -->
  <setting name="defaultExecutorType" value="REUSE" />
  <!-- 全域性啟用或禁用延遲載入。當禁用時,所有關聯物件都會即時載入。 -->
  <setting name="lazyLoadingEnabled" value="true"/>
  <!-- 設定超時時間,它決定驅動等待一個數據庫響應的時間。  -->
  <setting name="defaultStatementTimeout" value="25000"/>
 </settings>
 
 <!-- 別名配置 -->
 <typeAliases>
       <typeAlias alias="Renyuan" type="com.haso.bscs.po.Renyuan" />---po物件
       <typeAlias alias="LoginView" type="com.haso.bscs.view.LoginView" /> --view物件
 </typeAliases>
 
 <!-- 指定對映器路徑 -->
 <mappers>
  <mapper resource="com/haso/bscsserver/dao/RenyuanDao.xml" />

  <mapper resource="com/haso/bscsserver/dao/CardPersonMessageDao.xml"/>

  <mapper resource="com/haso/bscsserver/dao/InfoDao.xml" />

        <mapper resource="com/haso/bscsserver/dao/VersionDao.xml" /> 
       
        <mapper resource="com/haso/bscsserver/dao/CommvarsDao.xml" />
       
         <mapper resource="com/haso/bscsserver/dao/TestDao.xml" />
         <mapper resource="com/haso/bscsserver/dao/RizhiDao.xml" />
       
 </mappers>
</configuration>

RenyuanDao.xml

************************************************************************************************************************

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 這裡namespace必須是介面的路徑,不然要執行的時候要報錯 “is not known to the MapperRegistry”-->
<mapper namespace="com.haso.bscsserver.dao.RenyuanDao">
 <!-- 這裡的id必須和介面中的方法名相同,不然執行的時候也要報錯 -->
 <!-- <cache type="org.mybatis.caches.ehcache.LoggingEhcache"/>  -->
 <cache type="org.mybatis.caches.ehcache.EhcacheCache"/> 
    <parameterMap type="LoginView" id="parameterLoginMap">
     <parameter property="name"/>
     <parameter property="usrpwd"/>
     <parameter property="ime"/>
     <parameter property="sim"/>
 </parameterMap>
 
    <parameterMap type="renyuanConditionView" id="parameterRenyuanMap">
        <parameter property="id"/>
     <parameter property="orginalPass"/>
     <parameter property="pass"/>
    </parameterMap>
     <parameterMap type="renyuanLocationView" id="parameterLocation">
        <parameter property="id"/>
     <parameter property="nowlat"/>
     <parameter property="nowlng"/>
     <parameter property="nowlocation"/>
    </parameterMap>
 <resultMap  type="renyuanView" id="resultRenyuanViewMap" >
     <result property="id"/>
     <result property="name"/>
     <result property="sim"/>
     <result property="ime"/>
     <result property="usrpwd"/>
     <result property="longtitude"/>
     <result property="latitude"/>
     <result property="beizhu"/>
     <result property="tel"/>
     <result property="email"/>
     <result property="username"/>
     <result property="nowlat"/>
     <result property="nowlng"/>
     <result property="nowlocation"/>
 </resultMap>
 
     <resultMap  type="Renyuan" id="resultRenyuanMap" >
     <result property="id"/>
     <result property="name"/>
     <result property="sim"/>
     <result property="ime"/>
     <result property="usrpwd"/>
     <result property="longtitude"/>
     <result property="latitude"/>
     <result property="beizhu"/>
     <result property="tel"/>
     <result property="email"/>
      <result property="username"/>
      <result property="nowlat"/>
     <result property="nowlng"/>
     <result property="nowlocation"/>
 </resultMap>
 <select id="findEntityById" resultMap="resultRenyuanMap" parameterType="int" useCache="true">
     SELECT *
     FROM renyuan
     WHERE id=#{id}
 </select>     
 
 <select id="findAllList" resultMap="resultRenyuanMap" useCache="true">
  select * from renyuan
 </select>
    
 <select id="findEntityByUnique"   resultMap="resultRenyuanMap"  parameterMap="parameterLoginMap">
  select * from renyuan where name=#{name} and usrpwd=#{usrpwd} and ime=#{ime} and sim=#{sim}
 </select>
 
 <select id="isOriginalPass"  parameterMap="parameterRenyuanMap" resultMap="resultRenyuanViewMap" useCache="true">
      select id,
             name,
             sim,
             ime,
             usrpwd,
             longtitude,
             latitude,
             beizhu,
             tel,
             email,
             username
          from renyuan
          where usrpwd = #{orginalPass} and id = #{id}
 </select>
 
 <update id="updatePassword" parameterMap="parameterRenyuanMap">
 
     update renyuan
          set usrpwd = #{pass}
          where id = #{id}
   
 </update>
 <update id="updateNowlocation" parameterMap="parameterLocation">
 
     update renyuan
          set nowlat = #{nowlat}
          ,nowlng = #{nowlng}
          ,nowlocation = #{nowlocation}
          where id = #{id}
   
 </update>
</mapper>

********************************************************************************************************************