国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

ssm通用mapper配置詳解

2019-11-11 02:35:16
字體:
來源:轉載
供稿:網友

一.導依賴

<dependency>

    <groupId>com.github.abel533</groupId>

    <artifactId>mapper</artifactId>

    <version>2.3.4</version>

</dependency>

二.配置攔截器

在mybatis-config.xml里面配置		
		<plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor">			<!--主鍵自增回寫方法,默認值MySQL,詳細說明請看文檔 -->			<PRoperty name="IDENTITY" value="MYSQL" />			<!--通用Mapper接口,多個通用接口用逗號隔開(這個是通用Mapper給我們提供的被繼承的接口,包括基本的crud操作) -->			<property name="mappers" value="com.github.abel533.mapper.Mapper" />		</plugin>
 或者在sqlsessionFactory里注入
		<property name="plugins">   		  <array>      			<bean class="com.isea533.mybatis.mapperhelper.MapperInterceptor"/>  		  </array>  		</property>

三.對實體類進行注解,如@Table,@Id等

在繼承用用Mapper的接口的時候,需要指定Mapper的泛型,這個泛型就是指實體類.而這個實體類必須要符合以下規范:

1.通用Mapper會默認為表名=實體類名,駝峰的話會轉下劃線,如UserInfo類對應的表為user_info

2.如果上一條不滿足的話,則可以在實體類上面加注解@Table(name="tablename")

3.通用Mapper會默認將實體類的屬性轉為表的字段

4.如果上一條不滿足的話,加注解@Column(name="fieldname")

5.實體類的有些屬性 沒有對應表的字段的話,則要在這個屬性上面加上注解@Transient,表示將這個屬性忽略

6.通用Mapper有幾個方法是需要主鍵的,如selectByPrimaryKey等,所以可以在主鍵對應的實體類屬性上加上注解@Id,聲明這個屬性是主鍵屬性,如果不加的話,所有的屬性都會作為主鍵進行使用,這樣會很大程度的影響效率

7.因為基本類型在對象初始化的時候會默認值,無法消除,所以實體類盡量使用包裝類

8.Mapper還提供了序列(支持Oracle)、UUID(任意數據庫,字段長度32)、主鍵自增(類似Mysql,Hsqldb)三種方式,其中序列和UUID可以配置多個,主鍵自增只能配置一個。

這三種方式不能同時使用,同時存在時按照 序列>UUID>主鍵自增的優先級進行選擇.

序列://可以用于數字類型,字符串類型(需數據庫支持自動轉型)的字段,@SequenceGenerator(name="Any",sequenceName="seq_userid"),該字段不會回寫id

UUID:@GeneratedValue(generator = "UUID")該字段不會回寫id

主鍵自增:不限于@Id注解的字段,但是一個實體類中只能有一個@GeneratedValue(strategy = GenerationType.IDENTITY),會回寫id

四.繼承Mapper接口

public interface UserMapper extends Mapper<User> {}

注:通用Mapper只支持對單表的操作,如果多表的話,可以自己在映射文件中另外寫sql.

題外話:學完通用Mapper后,想自己寫篇文章來鞏固的,就按著學習資料來寫,結果寫到一半,發現通用Mapper的締造者已經寫過一篇詳細的了,本想放棄的,但是想到大神的那篇博客太詳細了,初學者可能會看懵,我這篇更容易上手一些,就繼續寫下來了.

附上大神的博客:http://blog.csdn.net/isea533/article/details/41457529?locationNum=2&fps=1


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尤溪县| 石楼县| 连州市| 夏邑县| 同仁县| 黑河市| 香港 | 邢台市| 鸡泽县| 行唐县| 渝中区| 蓬安县| 南投县| 敖汉旗| 永善县| 竹溪县| 南阳市| 南华县| 临清市| 九寨沟县| 贞丰县| 桂阳县| 项城市| 怀宁县| 营山县| 梅河口市| 屏东市| 宁乡县| 宿迁市| 临漳县| 临西县| 措美县| 宁城县| 齐齐哈尔市| 隆化县| 新晃| 天等县| 景洪市| 呼和浩特市| 微山县| 彩票|