mybatis的註解及使用方法
對映申明樣例
這個例子展示瞭如何使用 @SelectKey 註解來在插入前讀取資料庫序列的值:
@Insert("insert into table3 (id, name) values(#{nameId}, #{name})")@SelectKey(statement="call next value for TestSequence", keyProperty="nameId", before=true, resultType=int.class)int insertTable3(Name name);
這個例子展示瞭如何使用 @SelectKey 註解來在插入後讀取資料庫識別列的值:
@Insert("insert into table2 (name) values(#{name})")@SelectKey(statement="call identity()", keyProperty="nameId", before=false, resultType=int.class)int insertTable2(Name name);
This example shows using the @Flush annotation to call the SqlSession#flushStatements():
@FlushList<BatchResult>flush();
These examples show how to name a ResultMap by specifying id attribute of @Results annotation.
@Results(id ="userResult", value ={@Result(property ="id", column ="uid", id =true),@Result(property ="firstName", column ="first_name"),@Result(property ="lastName", column ="last_name")})@Select("select * from users where id = #{id}")User getUserById(Integer id);@Results(id ="companyResults")@ConstructorArgs({@Arg(property ="id", column ="cid", id =true),@Arg(property ="name", column ="name")})@Select("select * from company where id = #{id}")Company getCompanyById(Integer id);
This example shows solo parameter using the Sql Provider annotation:
@SelectProvider(type =UserSqlBuilder.class, method ="buildGetUsersByName")List<User> getUsersByName(String name);classUserSqlBuilder{publicString buildGetUsersByName(finalString name){returnnew SQL(){{ SELECT("*"); FROM("users");if(name !=null){ WHERE("name like #{value} || '%'");} ORDER_BY("id");}}.toString();}}
This example shows multiple parameters using the Sql Provider annotation:
@SelectProvider(type =UserSqlBuilder.class, method ="buildGetUsersByName")List<User> getUsersByName(@Param("name")String name,@Param("orderByColumn")String orderByColumn);classUserSqlBuilder{// If not use @Param, you should be define same arguments with mapper methodpublicString buildGetUsersByName(finalString name,finalString orderByColumn){returnnew SQL(){{ SELECT("*"); FROM("users"); WHERE("name like #{name} || '%'"); ORDER_BY(orderByColumn);}}.toString();}// If use @Param, you can define only arguments to be usedpublicString buildGetUsersByName(@Param("orderByColumn")finalString orderByColumn){returnnew SQL(){{ SELECT("*"); FROM("users"); WHERE("name like #{name} || '%'"); ORDER_BY(orderByColumn);}}.toString();}}
相關推薦
Query註解及方法限制
ctx ati IT select ast 實現 res pos param repository倉庫 public interface PersonRepository extends Repository<Person,Integer>{
mybatis註解及快取調優
注 解: 好 處:1、減少維護數量,配置檔案減少; 2、減少編碼量,提升效率 做 法: 註釋去實現普通的程式碼實現,當出現動態SQL的時候採用呼叫xml的方法; 儲存物件 @Insert(value="insert into t_husband (hus_name)
關於Mybatis的@Param註解 及 mybatis Mapper中各種傳遞引數的方法
原文:https://blog.csdn.net/mrqiang9001/article/details/79520436 關於Mybatis的@Param註解 Mybatis 作為一個輕量級的資料持久化框架,目前(2018)的應用非常廣泛,基本可以取代Hiberna
mybatis的註解及使用方法
對映申明樣例 這個例子展示瞭如何使用 @SelectKey 註解來在插入前讀取資料庫序列的值: @Insert("insert into table3 (id, name) values(#{nameId}, #{name})")@SelectKey(statement="call next value
舉例MyBatis的常用的API及方法
cto .sql 根據 actor sql sql語句 factor batis mybatis框架 在使用MyBatis框架是,主要涉及以下幾個API: 1.SqlSessionFactoryBuilder該對象根據MyBatis配置文件SqlMapConfig.
解決mybatis註解開發時兩表在一個方法裡面新增,一個表自動生成的主鍵作為另一個表的外來鍵新增的問題
1、mapper層裡的方法上添加註解: 實體類屬性:cExperimentaltaskid(id) 表字段:c_experimentaltaskid(主鍵id欄位) @Options(useGeneratedKeys = true, keyProperty = "cExperimentalta
Mybatis註解開發之動態SQL通過類方法註解
之前是xml和直接在mapper方法上面寫sql,發現太麻煩了,然後上網查了一下發現個好玩的方法,就是通過類的方法來註解開發(才開始學習寫部落格,有問題煩請多擔待)後續將繼續更新,更新完畢後將取消這段說明文字 1.寫對應的動態sql的類和相應方法(這裡我因為馬虎了,踩了大半
關於使用JPA的@ManyToOne註解的方法及踩過的雷
舉個例子: 有兩張表,員工表(employee)和部門表(department)。這個時候,員工表對於部門表來說,屬於ManyToOne的一個關係,對應關係為多個員工對應一個部門。當我們建立表結構時,應在多的一方去維護表關係,也就是說,應將@ManyToOne註解加在員
自動生成ibatis檔案及mybatis檔案的方法
generatorConfig - mybatis: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.or
SpringBoot + MyBatis(註解版),常用的SQL方法
一、新建專案及配置 1.1 新建一個SpringBoot專案,並在pom.xml下加入以下程式碼 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId&
ObjectQuery查詢及方法
ack 支持 exec edm {0} country intersect sta 查詢 ObjectQuery 類支持對 實體數據模型 (EDM) 執行 LINQ to Entities 和 Entity SQL 查詢。ObjectQuery 還實現了一組查詢生成器方法,
列表的定義及方法
個數 lan nbsp 插入 刪除元素 mov log 指定 查詢 追加元素--append/extend,先看方法的說明 先看下實例理解兩個方法的區別 再看一個字符串的可能更好理解 插入元素,插入元素在指定的索引前面 查詢元素 查找元素
轉載---編寫高質量代碼:改善Java程序的151個建議(第3章:類、對象及方法___建議47~51)
閱讀 aer 集中 記事本 哈希算法 讀者 堆內存 ref 類型判斷 閱讀目錄 建議47:在equals中使用getClass進行類型判斷 建議48:覆寫equals方法必須覆寫hashCode方法 建議49:推薦覆寫toString方法 建議50:使用package
轉載---編寫高質量代碼:改善Java程序的151個建議(第3章:類、對象及方法___建議41~46)
equals 業務 父親 face 使用 訪問 his () 而是 閱讀目錄 建議41:讓多重繼承成為現實 建議42:讓工具類不可實例化 建議43:避免對象的淺拷貝 建議44:推薦使用序列化對象的拷貝 建議45:覆寫equals方法時不要識別不出自己 建議46:equ
hibernate validation內置註解及自定義註解
ons private from decimal 最重要的 con name cts mva 1 Bean Validation 中內置的 constraint 2 @Null 被註釋的元素必須為 null 3 @NotNull
Java註解及反射得到註解
-a hide for dcb his port ges cnblogs 類名 Class類的方法 f package com.part1; /** * * @author pc * */ public class Studen
MyBatis框架及ORM
支持 中修改 對象模型 操作 object style 高級映射 java pan 1.MyBatis框架簡介 MyBatis 是一個開源的數據持久層框架(持久指的是瞬時到持久)。它內部封裝了通過JDBC訪問數據庫的操作,支持普通的SQL查詢,存儲過程的高級映射,幾乎消
MyBatis配置及入門
insert imp enc 建立 develop 亂碼 裏的 tin 等等 1. 在本教程中,建立 java 工程,但一般都是開發 web 項目,這個系列教程最後是 web,但這裏為了方便學習,本教程前面建立的都是 java 工程。2. 將 mybatis-3.2.3.j
Ext.grid.GridPanel屬性及方法等
ble sse rst 可能 colspan ask gridpanel ted elm Ext.grid.GridPanel屬性及方法等 1、Ext.grid.GridPanel主要配置項:store:表格的數據集columns:表格列模式的配置數組,可自動創建
Spring框架context的註解管理方法之二 使用註解註入對象屬性
.org es2017 swift package 自動 clas 找到 裝配 alt 首先還是xml的配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.spring