-
通用mapper的使用
-
導入依賴
-
<groupId>com.github.abel533</groupId>
<artifactId>mapper</artifactId>
<version>2.3.4</version>
</dependency>
-
配置plugins
<plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor">
<!--主鍵自增回寫方法,默認值MYSQL,詳細說明請看文檔 -->
<property name="IDENTITY" value="MYSQL" />
<!--通用Mapper接口,多個通用接口用逗號隔開 -->
<property name="mappers" value="com.github.abel533.mapper.Mapper" />
</plugin>
-
新建mapper接口繼承同樣Mapper提供的接口
-
繼承通用的Mapper<T>,必須指定泛型<T>
-
-
泛型(實體類)<T>的類型必須符合要求
1、表名默認使用類名,駝峰轉下划線(只對大寫字母進行處理),如UserInfo默認對應的表名為user_info。
2、表名可以使用@Table(name = "tableName")進行指定,對不符合第一條默認規則的可以通過這種方式指定表名.
3、字段默認和@Column一樣,都會作為表字段,表字段默認為Java對象的Field名字駝峰轉下划線形式.
4、可以使用@Column(name = "fieldName")指定不符合第3條規則的字段名
5、使用@Transient注解可以忽略字段,添加該注解的字段不會作為表字段使用.
6、建議一定是有一個@Id注解作為主鍵的字段,可以有多個@Id注解的字段作為聯合主鍵.
-
測試提供的方法
-
通用的Example查詢對象
-
添加普通條件
-
需要創建一個對象Cirteria對象出來,通過這個對象,去設置一些非常規的條件
例如in like > <
如果條件中有or,則新去創建一個Criteria對象,然后在使用Example.or(cc2)
如果使用排序:example. setOrderByClause("id asc , age desc")
-
添加or的查詢條件
-
添加排序功能