1. 程式人生 > >Mybatis詳細配置過程。

Mybatis詳細配置過程。

  1. mybatis 是一個 基於java 的持久層框架。。內部封裝了jdbc ,使開發者 只需 關注SQL語句本身,而不用花精力去處理諸如註冊驅動。建立connection 配置Statement等繁雜過程。

    Mybatis 拖過xml 或註解的方式 將要執行的各種statement 配置起來。 並通過java物件和statement中的SQL的動態引數進行對映最終生成sql語句。最終由mybatis框架執行SQL 並將結果對映成java物件並返回。。。

2.
下載資料庫驅動jar 包。以及mybatisjar包這裡通過 maven去管理jar包。 我們只需要新增約束就好。。

    <!-- ********mybatis********* -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <!-- ********mybatis********* --> <!-- ********mysql驅動包********* -->
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency> <!-- ********mysql驅動包********* -->

3.新增配置檔案

<?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>
<!-- 註冊屬性檔案 -->
 <properties resource="jdbc.properties" />
 <!-- 配置mybatis執行環境 -->
  <environments default="development">
  <!-- 配置開發環境 -->
    <environment id="development">
    <!-- jdbc事務管理器 -->
      <transactionManager type="JDBC"/>
      <!-- 資料來源
       UNPOOLED 不適用連線池 即 每次請求都會為其建立一個DB連線,適用完畢後,會馬上將連線關閉
       POOLED 資料庫連線池來維護連線
       JNDI 資料來源可以定義到應用的外部,通過JDNI容器來獲取資料庫連線
       -->
      <dataSource type="POOLED">
        <property name="driver" value="${jdbc.driverClass}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
      </dataSource>
    </environment>
    <!-- 可以多個環境切換。配置上線環境 -->
    <environment id="online">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="${jdbc.driverClass}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
      </dataSource>
    </environment>

  </environments>
  <!-- 對映器 -->
  <mappers>
  <!-- 註冊對映檔案 -->
    <mapper resource="mapper.xml"/>
    <mapper resource="mapper2.xml"/>
  </mappers>
</configuration>

4.新增對映檔案

<?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">

<mapper namespace="reyco">
  <insert id="insertStu" >
    insert into student(id,name,score,hobby)
    values(#{id},#{name},#{score},#{hobby})

    <selectKey resultType="int" keyProperty="id" order="AFTER">
      select last_insert_id();
    </selectKey>
  </insert>
  <delete id="deleteStu" >
   delete from student where id = #{id}
  </delete>
  <update id="updateStu">
     update student set 
     name = #{name}, score = #{score},hobby= #{hobby}
     where id = #{id}
  </update>

   <select id="selectStu" resultType="com.evecom.common.Student">
     select * from student
   </select>

   <select id="selectStuById" resultType="com.evecom.common.Student" >
     select * from student where id = #{id}
   </select>

   <select id="selectStuSlur" resultType="com.evecom.common.Student">
     select * from student where name like '%' #{name} '%'
   </select>


</mapper>

5.新增屬性檔案properties。 這個檔案主要是可以讓我們可以快速地修改資料庫使用者名稱,密碼,切換資料來源等。

貼出截圖。。

這裡寫圖片描述

這樣,基本上就配置成功了。。感覺比spring 配置簡單多了。。。