當前位置:首頁 » 編程語言 » mybatis的sql配置文件路徑
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

mybatis的sql配置文件路徑

發布時間: 2023-01-24 14:40:41

1. mybatis基本配置詳解

中間步驟自行設置

Mysql驅動版本根據自己安裝的MySQL選擇

我把AppTest改成了MybatisTest,不該也無妨;
其中Student類暫時只設置四個欄位:

mapper介面暫時為空

在resources目錄下新建File命名為db.peoperties,配置如下內容:

提示:以上配置適用於MySQL8.X版本,5.X版本按照如下配置:

1、transactionManager:事務管理器;
type 事務管理類型:
JDBC(JdbcTransactionFactory);
MANAGED(ManagedTransactionFactory)
自定義事務管理器:實現TransactionFactory介面.type指定為全類名

2、dataSource:數據源;
type :數據源類型;
UNPOOLED(UnpooledDataSourceFactory); POOLED(PooledDataSourceFactory);
JNDI(JndiDataSourceFactory)
自定義數據源:實現DataSourceFactory介面,type是全類名

<mapper>:注冊一個sql映射文件
1、注冊映射文件
resource:引用類路徑下的sql映射文件
mybatis/StudentMapperpper.xml
url:引用網路路徑或者磁碟路徑下的sql映射文件
file:///var/mappers/AuthorMapper.xml
2、注冊介面
class:引用(注冊)介面,
① 有sql映射文件,映射文件名必須和介面同名,並且放在與介面同一目錄下;
② 沒有sql映射文件,所有的sql都是利用註解寫在介面上;
推薦:
比較重要的,復雜的Dao介面我們來寫sql映射文件
不重要,簡單的Dao介面為了開發快速可以使用註解;
批量注冊
需要在資源路徑下(resources)建立和一樣的文件目錄來存放想xml映射文件,如:com.example.StudentMapperpper.xml

StudentMapper

在resources的mybatis目錄下新建文件夾mapper,新建xml文件StudentMapper.xml

namespace :名稱空間;指定為介面的全類名
id :唯一標識
resultType :返回值類型
#{id} :從傳遞過來的參數中取出id值
resources目錄(MajorMapper.xml暫時不用創建)如下:

2. 怎麼讀取mybatis的配置文件路徑

Mybatis
分多個配置文件方法,考慮一個項目會很多模塊,如果團體開發的話用不同模塊在不同的配置文件可以這樣實現:
標簽裡面只能放SQL映射文件
Mybatis配置文件
XML
code
Spring裡面的配置文件
XML
code

3. mybatis中xml映射和方法註解兩種配置sql語句的方式是否可以同時存在

不能進行同時設置。執行會找不到介面的mapper代理工廠。mybatis會先解析xml文件,將解析後的sql封裝在mapperstament中並放進Configuration的mappedStatements中,將命名空間和方法名(也就是id)作為key,mappedStatements是個自定義map。然後生成介面的代理工程,生產代理工廠後會解析註解,解析完註解,也會生成mapperstament,也會往統一的Configuration大對象裡面放,但是放的時候自定義map會先判斷是否存在,此時已經存在了,存在就會拋出IllegalArgumentException(name + " already contains value for " + key)。但是創建代理工廠的時候把異常吃掉了,所以載入的時候不會報錯,但是不會給介面生成代理工廠。沒有代理工廠,介面就沒有實現類去操作。