讓你遠離sql語句的Mybatis工具:Tkmybatis


Tkmybatis是基於Mybatis框架開發的一個工具,通過調用它提供的方法實現對單表的數據操作,不需要寫任何sql語句,這極大地提高了項目開發效率。

Tkmybatis使用

1、pom.xml添加依賴

有Spring Boot專用依賴,這里選用2.1.5版本

2、創建數據庫表對應實體類對象

create table TK_TEST(tk_id INTEGER not null, tk_name VARCHAR2(50), tk_date DATE, tk_clob CLOB)

數據庫TK_TEST表結構,定義了幾個常見類型的字段。

實體類中,使用了以下注解:

@Table描述數據庫表信息,主要屬性有name(表名)、schema、catalog、uniqueConstraints等。

@Id指定表主鍵字段,無屬性值。

@Column描述數據庫字段信息,主要屬性有name(字段名)、columnDefinition、insertable、length、nullable(是否可為空)、precision、scale、table、unique、updatable等。

@ColumnType描述數據庫字段類型,可對一些特殊類型作配置,進行特殊處理,主要屬性有jdbcType、column、typeHandler等。

@Transient標識該屬性不進行數據庫持久化操作,無屬性。

還有其他相關注解,如@ColumnResult、@JoinColumn、@OrderBy、@Embeddable等,可以了解一下。

3、Mapper數據庫操作接口

不需要定義接口,只繼承tk.mybatis.mapper.common.Mapper。

4、Tkmybatis數據庫操作方法Api

Mapper.insert(record);

保存一個實體,null的屬性也會保存,不會使用數據庫默認值

Mapper.insertSelective(record);

保存一個實體,null的屬性不會保存,會使用數據庫默認值

Mapper.delete(record);

根據實體屬性作為條件進行刪除,查詢條件使用等號

Mapper.deleteByExample(example)

根據Example條件刪除數據

Mapper.deleteByPrimaryKey(key)

根據主鍵字段進行刪除,方法參數必須包含完整的主鍵屬性

Mapper.updateByExample(record, example)

根據Example條件更新實體`record`包含的全部屬性,null值會被更新

Mapper.updateByExampleSelective(record, example)

根據Example條件更新實體`record`包含的不是null的屬性值

Mapper.updateByPrimaryKey(record)

根據主鍵更新實體全部字段,null值會被更新

Mapper.updateByPrimaryKeySelective(record)

根據主鍵更新屬性不為null的值

Mapper.select(record)

根據實體中的屬性值進行查詢,查詢條件使用等號

Mapper.selectAll()

查詢全部結果

Mapper.selectByExample(example)

根據Example條件進行查詢

Mapper.selectByExampleAndRowBounds(example, rowBounds)

根據example條件和RowBounds進行分頁查詢

Mapper.selectByPrimaryKey(key)

根據主鍵字段進行查詢,方法參數必須包含完整的主鍵屬性,查詢條件使用等號

Mapper.selectByRowBounds(record, rowBounds)

根據實體屬性和RowBounds進行分頁查詢

Mapper.selectCount(record)

根據實體中的屬性查詢總數,查詢條件使用等號

Mapper.selectCountByExample(example)

根據Example條件進行查詢總數

Mapper.selectOne(record)

根據實體中的屬性進行查詢,只能有一個返回值,有多個結果是拋出異常,查詢條件使用等號

Example條件

Example條件基本涵蓋了常用的sql條件,並且支持使用原生sql語句字符串查詢。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM