国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|C/C++|

香港云服务器
服務器之家 - 編程語言 - JAVA教程 - 詳解Spring boot上配置與使用mybatis plus

詳解Spring boot上配置與使用mybatis plus

2020-10-23 20:44junzibuqi124 JAVA教程

這篇文章主要介紹了詳解Spring boot上配置與使用mybatis plus,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

http://mp.baomidou.com/#/?id=%e7%ae%80%e4%bb%8b這個是mybatisplus的官方文檔,上面是mybtisplus的配置使用方法,以及一些功能的介紹

下面開始配置

maven依賴

?
1
2
3
4
5
6
7
8
9
10
<dependency>
  <groupId>org.mybatis.spring.boot</groupId>
  <artifactId>mybatis-spring-boot-starter</artifactId>
  <version>1.1.1</version>
</dependency>
<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus</artifactId>
  <version>2.0-beta</version>
</dependency>

config文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
@Configuration
public class MybatisPlusConfig {
  @Autowired
  private DataSource dataSource;
 
  @Autowired
  private MybatisProperties properties;
 
  @Autowired
  private ResourceLoader resourceLoader = new DefaultResourceLoader();
 
  @Autowired(required = false)
  private Interceptor[] interceptors;
 
  @Autowired(required = false)
  private DatabaseIdProvider databaseIdProvider;
 
  /**
   *  mybatis-plus分頁插件
   */
  @Bean
  public PaginationInterceptor paginationInterceptor() {
    PaginationInterceptor page = new PaginationInterceptor();
    page.setDialectType("mysql");
    return page;
  }
  /**
   * 這里全部使用mybatis-autoconfigure 已經自動加載的資源。不手動指定
   * 配置文件和mybatis-boot的配置文件同步
   * @return
   */
  @Bean
  public MybatisSqlSessionFactoryBean mybatisSqlSessionFactoryBean() {
    MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean();
    mybatisPlus.setDataSource(dataSource);
    mybatisPlus.setVfs(SpringBootVFS.class);
    if (StringUtils.hasText(this.properties.getConfigLocation())) {
      mybatisPlus.setConfigLocation(this.resourceLoader.getResource(this.properties.getConfigLocation()));
    }
    mybatisPlus.setConfiguration(properties.getConfiguration());
    if (!ObjectUtils.isEmpty(this.interceptors)) {
      mybatisPlus.setPlugins(this.interceptors);
    }
    MybatisConfiguration mc = new MybatisConfiguration();
    mc.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class);
    mybatisPlus.setConfiguration(mc);
    if (this.databaseIdProvider != null) {
      mybatisPlus.setDatabaseIdProvider(this.databaseIdProvider);
    }
    if (StringUtils.hasLength(this.properties.getTypeAliasesPackage())) {
      mybatisPlus.setTypeAliasesPackage(this.properties.getTypeAliasesPackage());
    }
    if (StringUtils.hasLength(this.properties.getTypeHandlersPackage())) {
      mybatisPlus.setTypeHandlersPackage(this.properties.getTypeHandlersPackage());
    }
    if (!ObjectUtils.isEmpty(this.properties.resolveMapperLocations())) {
      mybatisPlus.setMapperLocations(this.properties.resolveMapperLocations());
    }
    return mybatisPlus;
  }
}

插件以@bean的形式添加在config文件里例如:

?
1
2
3
4
5
6
@Bean
  public PaginationInterceptor paginationInterceptor() {
    PaginationInterceptor page = new PaginationInterceptor();
    page.setDialectType("mysql");
    return page;
  }

這是一個分頁插件。

代碼生成器參考官方文檔,但是他的代碼生成器可供修改的地方不多,只能控制一下代碼生成路徑之類的,自由度不高,推薦把mybatisplus 代碼生成部分單獨抽出來,修改成自己合適的,再打成jar包進行依賴。

springboot properties文件配置

?
1
2
3
# mybatis_config
mybatis.mapper-locations=classpath:com/boot/mapper/xml/*Mapper.xml
mybatis.typeAliasesPackage=com.boot.entity

前一個是xml文件的路徑

后面一個時別名包路徑

在springboot的啟動類上加上注解

?
1
2
3
@MapperScan("com.boot.mapper*")
@SpringBootApplication
public class BootApplication {

@mapperscan 里面是dao的掃描路徑

mybatisplus 提供了比較齊全的crud即增刪改查,不需要在mapper.xml里寫sql可以直接調用
例子:

?
1
2
3
4
5
6
7
8
//可以在controller:
Egg egg = new Egg();
eggService.insert(egg);
//可以在service
Egg egg = new Egg();
this.selectList(new EntityWrapper<Egg >(egg));//mybatisplus提供依靠實體查詢的方法的寫法
//也可以
mapper.selectList(new EntityWrapper<Egg >(egg));

分頁查詢demo:

dao:返回list

 

復制代碼 代碼如下:

List<Role> getPage(Pagination page, RoleParam param) throws DataAccessException;

 

xml:照著普通sql寫就可以了,其他的會自動拼接

?
1
2
3
4
5
6
<select id="getPage" resultMap="RoleResultMap">
  select
  <include refid="columns"/>
  from ella_role
  <include refid="where"/>
 </select>

service:

?
1
2
3
4
5
6
public Page<EllaRole> getPage(RoleParam param) {
//new 一個page 初始化傳入current當前頁,size每頁幾個,order 排序(默認asc要改的話page.setAsc(false);)
    Page<Role> page = new Page<Role>(param.getCurrent(), param.getSize(), param.getOrder());
    page.setRecords(iRoleMapper.getPage(page, param));
    return page;
  }

end

接下來是一些小貼士

生成的實體里主鍵要加上@TableId注解不然會報錯

數據庫里有下劃線的字段在查詢返回是會取不到值,需要在config文件中的mybatisSqlSessionFactoryBean方法下加上

?
1
mybatisPlus.setDbColumnUnderline(true);

domain里的所有屬性都會映射到數據庫的字段上,如果你加上數據庫里沒有但要用的屬性需要在上面加上@TableField(exist = false)標簽,這樣他會被忽略

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/u014519194/article/details/53786630

延伸 · 閱讀

精彩推薦
  • JAVA教程微信公眾帳號開發教程之圖文消息全攻略

    微信公眾帳號開發教程之圖文消息全攻略

    本篇主要介紹微信公眾帳號開發中圖文消息的使用,以及圖文消息的幾種表現形式。標題取名為"圖文消息全攻略",這絕對不是標題黨,是想借此機會把大...

    柳峰的專欄3492020-07-14
  • JAVA教程深入理解Spring Cloud Zuul過濾器

    深入理解Spring Cloud Zuul過濾器

    這篇文章主要給大家介紹了關于Spring Cloud Zuul過濾器的相關資料,通過閱讀本文您將了解:Zuul過濾器類型與請求生命周期、如何編寫Zuul過濾器、如何禁用Z...

    周立4472020-08-20
  • JAVA教程eclipse怎么引入spring boot項目插件的方法

    eclipse怎么引入spring boot項目插件的方法

    這篇文章主要介紹了eclipse怎么引入spring boot項目插件的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的...

    莫采4432019-07-08
  • JAVA教程Spring Boot Actuator監控器配置及使用解析

    Spring Boot Actuator監控器配置及使用解析

    這篇文章主要介紹了Spring Boot Actuator監控器配置及使用解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友...

    edda_huang4882020-07-10
  • JAVA教程Java如何實現定時任務

    Java如何實現定時任務

    這篇文章主要介紹了Java如何實現定時任務,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小...

    chenssy2202020-07-31
  • JAVA教程Java經典用法總結(二)

    Java經典用法總結(二)

    這篇文章主要介紹了Java經典用法總結,在本文中,盡量收集一些java最常用的習慣用法,特別是很難猜到的用法,本文重點講解了java應用和輸入輸出常用方...

    lijiao3442020-03-28
  • JAVA教程解析Java的設計模式編程之解釋器模式的運用

    解析Java的設計模式編程之解釋器模式的運用

    這篇文章主要介紹了解析Java的設計模式編程之解釋器模式的運用,文中對解釋器模式的優缺點及適用場景作出了分析,需要的朋友可以參考下 ...

    卡奴達摩2492020-04-01
  • JAVA教程淺談Java后臺對JSON格式的處理操作

    淺談Java后臺對JSON格式的處理操作

    下面小編就為大家帶來一篇淺談Java后臺對JSON格式的處理操作。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧 ...

    jingxian3792020-05-09
452
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 中国大陆高清aⅴ毛片 | 在线亚洲不卡 | 久久久久久一区 | 亚洲欧美另类久久久精品2019 | 亚洲第一成人在线视频 | 日韩三区| 日韩久色| 最新中文字幕视频 | 亚洲精品乱码8久久久久久日本 | 国产黄色免费网站 | 亚洲欧美福利视频 | 亚洲成熟少妇视频在线观看 | 亚洲精品9999 | 91在线视频在线 | 中文一二区 | 亚洲精品成人悠悠色影视 | 毛片网站在线 | 97成人在线免费视频 | 亚洲一区二区精品 | 在线视频一区二区三区 | 特黄特黄的视频 | 色婷婷综合久久久中字幕精品久久 | 亚洲一区二区中文字幕 | 人人干人人草 | 亚洲国产精品一区二区久久 | 一区二区三区国产 | 亚洲视频在线观看 | 亚洲欧美日韩在线 | 免费看国产片在线观看 | av在线中文 | 欧美一区二区三区的 | 999精品视频 | 亚洲国产成人久久 | 男女全黄一级一级高潮免费看 | 欧美国产日韩在线 | 91精品国产视频 | 欧美一级特黄aaaaaa大片在线观看 | 国产精品第一国产精品 | 91精品国产乱码久久久久久久久 | 欧美日韩国产在线播放 | 日韩a|