一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 關于MyBaties的基本配置標簽總結

關于MyBaties的基本配置標簽總結

2021-09-15 13:28油炸冰可樂 Java教程

今天給大家帶來的是關于MyBaties基礎的相關知識,文章圍繞著MyBaties的基本配置標簽展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下

MyBaties的基本配置標簽

1-全局配置文件(xxx.properties)引入的兩種方式

  • resource:引入類路徑下的資源
  • url:引入網絡路徑或磁盤路徑下的資源
?
1
<properties resource="dbconfig.properties"></properties>

2-settings包含設置項

name:配置項

value:屬性值

?
1
2
3
<settings>
   <setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>

3-typeAliases:別名處理器,為java類型起別名

type:指定要起別名的類型全類名;默認別名就是類名小寫

alias:指定新的別名

?
1
<typeAlias type="com.atguigu.mybatis.bean.Employee" alias="emp"/>

3.1 為某個包下所有類起別名

package:為某個包下的所有類批量起別名

name:指定包名(為當前包以及下面所有的后代包的每一個類都起一個默認別名(類名小寫)

?
1
<package name="com.atguigu.mybatis.bean"/>

3.2 使用注解@Alias為某個類指定新的類型

?
1
2
3
4
@Alias("emp")
public class Employee {
    ...code...
}

4-配置多種MyBatis環境

  • enviroments:配置的環境們都寫在里面,default指定這個環境的名稱
  • environment:配置一個具體的環境信息,有id唯一標識與transactionManager事務管理器
  • id:唯一標識
  • transactionManager:事務管理器,它的有屬性type
  • type:事務管理器的類型JDBC MANAGED 自定義事務管理器
  • dataSource:數據源
  • type:數據源類型 UNPOOLED POOLED JNDI 自定義
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<environments default="dev_mysql">
   <environment id="dev_mysql">
      <transactionManager type="JDBC"></transactionManager>
      <dataSource type="POOLED">
         <property name="driver" value="${jdbc.driver}" />
         <property name="url" value="${jdbc.url}" />
         <property name="username" value="${jdbc.username}" />
         <property name="password" value="${jdbc.password}" />
      </dataSource>
   </environment>
 
   <environment id="dev_oracle">
      <transactionManager type="JDBC" />
      <dataSource type="POOLED">
         <property name="driver" value="${orcl.driver}" />
         <property name="url" value="${orcl.url}" />
         <property name="username" value="${orcl.username}" />
         <property name="password" value="${orcl.password}" />
      </dataSource>
   </environment>
</environments>

5-databaseIdProvider:支持多數據庫

  • databaseIdProvider:支持多數據庫,它的type為DB_VENDOR作用就是得到數據庫廠商的標識(驅動getDatabaseProductName()),mybatis就能根據數據庫廠商標識來執行不同的sql;
  • property:為數據庫起名字
  • name:
  • value:
?
1
2
3
4
5
6
<databaseIdProvider type="DB_VENDOR">
   <!-- 為不同的數據庫廠商起別名 -->
   <property name="MySQL" value="mysql"/>
   <property name="Oracle" value="oracle"/>
   <property name="SQL Server" value="sqlserver"/>
</databaseIdProvider>

最終,在mapper.xml中寫入查詢時的的語句,并申明使用到的數據庫是什么

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<mapper namespace="com.atguigu.mybatis.dao.EmployeeMapper">
    <select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee">
       select * from tbl_employee where id = #{id}
    </select>
    <select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee"
       databaseId="mysql">
       select * from tbl_employee where id = #{id}
    </select>
    <select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee"
       databaseId="oracle">
       select EMPLOYEE_ID id,LAST_NAME    lastName,EMAIL email
       from employees where EMPLOYEE_ID=#{id}
    </select>
</mapper>

6-mappers將sql文件注冊進入全局配置文件

6.1注冊配置文件:

  • resource:引用類路徑下的sql映射文件例如:mybatis/mapper/EmployeeMapper.xml
  • url:引用網路路徑或者磁盤路徑下的sql映射文件例如:file:///var/mappers/AuthorMapper.xml

6.2注冊接口:

有sql映射文件,映射文件名必須和接口同名,并且放在與接口同一目錄下;

?
1
<mapper resource="mybatis/mapper/EmployeeMapper.xml"/>

沒有sql映射文件,所有的sql都是利用注解寫在接口上,然后再mappers中進行注冊;

?
1
2
3
4
public interface EmployeeMapperAnnotation {
    @Select("select * from tbl_employee where id=#{id}")
    public Employee getEmpById(Integer id);
}
?
1
<mapper class="com.atguigu.mybatis.dao.EmployeeMapperAnnotation"/>

6.3批量注冊:

本質上,如果包名相同,不管是src內還是src外的文件,實際存儲過程中會被存儲到同一個文件夾中

?
1
<package name="com.atguigu.mybatis.dao"/>

到此這篇關于關于MyBaties的基本配置標簽總結的文章就介紹到這了,更多相關MyBaties的基本配置標簽內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/Wang_Pro/article/details/118116945

延伸 · 閱讀

精彩推薦
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經有好久沒有升過級了。升級完畢重啟之后,突然發現好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩中求8032021-07-12
  • Java教程Java實現搶紅包功能

    Java實現搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發現了對于集合操作轉換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7472021-02-04
  • Java教程xml與Java對象的轉換詳解

    xml與Java對象的轉換詳解

    這篇文章主要介紹了xml與Java對象的轉換詳解的相關資料,需要的朋友可以參考下...

    Java教程網2942020-09-17
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
  • Java教程Java BufferWriter寫文件寫不進去或缺失數據的解決

    Java BufferWriter寫文件寫不進去或缺失數據的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數據的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
主站蜘蛛池模板: 女人和男人搞鸡 | 日本公乱妇视频 | 四虎影视地址 | 日韩在线观看网址 | 亚洲 日韩 国产 中文视频 | 无码日韩精品一区二区免费 | 午夜影院免费观看视频 | 狠狠色综合久久婷婷 | 亚洲阿v天堂2018在线观看 | 99精品久久精品一区二区小说 | 四虎综合九九色九九综合色 | 亚洲天堂h | 91大神在线精品播放 | 91久久色| 国产拍拍视频一二三四区 | 日本一区二区视频在线观看 | 男男视频18免费网站 | 免费视频片在线观看大片 | 草草影院在线 | 亚洲日本va中文字幕 | ssni-497新任美脚女教师 | 日韩成本大片35分钟免费播放 | 免费波多野结衣庭教师 | 国产手机在线观看 | 91麻豆制片厂 | 国产欧美亚洲精品第一页青草 | 国产靠逼视频 | 情欲综合网 | 精品久久一区 | 精品视频免费 | 日本免费三区 | 高h视频免费观看 | 我强进了老师身体在线观看 | 秋霞午夜视频在线观看 | 欧美艳星kagneyiynn | 色悠久久久久综合欧美99 | 手机看片福利盒子久久 | 美国video | 日本不卡1卡2卡三卡网站二百 | 免费高清www动漫视频播放器 | 日韩视频免费观看 |