亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

MyBatis-Plus入門

難度高級
時長 4小時 0分
學習人數
綜合評分9.57
102人評價 查看評價
9.7 內容實用
9.4 簡潔易懂
9.6 邏輯清晰
  • 如圖所示的內容筆記

    查看全部
  • 如圖所示的內容筆記

    查看全部
  • 如圖所示的內容筆記

    查看全部
  • 如圖所示的內容筆記

    查看全部
  • 如圖所示的內容筆記

    查看全部
  • 開發環境:

    http://img1.sycdn.imooc.com//5f85c0f30001c3cd05240491.jpg

    查看全部
  • JPA:java持久層API,可以理解為一種規范,Hibernate就是其具體一個實現。(目前比較常用的是SpringDataJpa,它是Spring提供的一套簡化開發的框架,按照約定好的方法命名規則,編寫dao層接口,就可以在不編寫實現情況下執行數據庫操作,還提供了除CRUD以外的功能,例如分頁、排序、復雜查詢等等,SpringDataJpa可以理解為對JPA的再次封裝,底層仍舊是Hibernate)

    Mybatis優勢

    1、SQL語句可以自由控制,更靈活、性能較高。

    2、SQL與代碼分離,易于閱讀和維護。

    3、提供XML標簽,支持編寫動態SQL語句。

    JPA優勢

    JPA移植性比較好(Hibernate方言)

    提供了很多CRUD方法、開發效率高(不用編寫sql語句)

    對象化程度更高(面向對象開發思想)

    Mybatis劣勢

    簡單CRUD操作需要編寫SQL語句(單表仍需要編寫Mapper接口方法和xml的sql)

    XML中有大量sql需維護

    mybatis自身功能有限

    查看全部
  • Mybatis-plus簡介:Mybatis增強工具,只做增強,不作改變,簡化開發,提高效率。

    官網地址https://mybatis.plus/

    1、Crab:Mybatisplus3.0教學版。(MP核心程序員作品)

    2、Crab:WEB極速開發框架。(MP項目負責人作品)

    github項目地址:https://github.com/baomidou/mybatis-plus

    碼云項目地址:https://gitee.com/baomidou/mybatis-plus

    Mybatis-plus特點:

    1、無侵入(只做增強,不作改變)、損耗?。ǔ绦騿訒r,進行注入增強的功能)、強大的CRUD操作(通用Service、通用Mapper,通過少量配置可實現單表操作,類似Hibernate)、支持條件構造器,支持各類需求。

    2、支持Lambda形式調用、提供了Lambda條件構造器,支持多種數據庫(主流的Mysql、Oracle等)

    3、支持主鍵生成策略、支持ActiveRecord模式(實體類只需要繼承Model,然后通過實體類完成CRUD操作)。

    4、支持全局自定義操作(支持全局通用方法注入)、支持關鍵詞自動?轉義(數據庫關鍵詞自動轉義)

    5、內置代碼生成器(實體、Mapper接口、Mapper文件、Service、Controller)、內置分頁插件(基于Mybatis的物理分頁)、內置性能分析插件

    6、內置全局攔截插件(提供了delete、update智能分析阻斷,也可以自定義攔截規則,以防誤操作)、內置sql注入剝離器(有效防止注入攻擊)

    http://img2.sycdn.imooc.com/5f85abc2000101cb09590577.jpg

    http://img4.sycdn.imooc.com/5f85ac1b0001d5a709760553.jpg

    查看全部
    0 采集 收起 來源:MP簡介

    2020-10-13

  • selectMaps

    查看全部
  • 1、用transient給屬性做聲明,該方式無序列化

    eg:private transient int flag;

    2、用static給屬性做聲明,默認不給靜態變量生成get/set方法,所以這時需要手動寫get/set方法,全類唯一一個的屬性。

    3、@TableField(exist=false)

    給屬性添加該注解,表示該字段在數據庫中不存在。默認exist=true。

    該種方式可以生成get/set方法,也不是唯一的屬性。

    查看全部
  • 1、@TableName("表全名")

    指定實體類對應的表名

    2、@TableId

    mp會按照雪花自增填充主鍵,默認實體類的主鍵為"id",當沒有id時,它就不知道誰是主鍵,這時可以添加該注解

    3、@TableField("字段名")

    當實體類中的屬性名和字段名對不上時,用該注解指定數據庫中的字段名

    查看全部
    0 采集 收起 來源:常用注解

    2020-09-29

  • 一、建庫建表

    #創建數據庫

    create?table?user?(? id?BIGINT(20)?PRIMARY?key?not?null?comment?'主鍵', name?varchar(30)?default?null?comment?'姓名',age?int(11)?default?null?comment?'年齡', email?varchar(50)?default?null?comment?'郵箱',?? manager_id?BIGINT(20)?default?null?comment?'直屬上級id',?? create_time?DATETIME?default?null?comment?'創建時間',? CONSTRAINT?manager_fk?foreign?key?(manager_id)????????? REFERENCES?user?(id)) ENGINE=INNODB?CHARSET=UTF8;?#數據初始化INSERT?INTO?user?(id,name,age,email,manager_id,create_time)VALUES?(1087982257332887553,?'大boss',?40,?'[email protected]',?NULL,?'2019-01-11?14:20:20'),??????????? (1088248166370832385,'王天風',25,'[email protected]',?1087982257332887553,'2019-02-05?11:12:22'),??????????? (1088250446457389058,'李藝偉',28,'[email protected]',?1088248166370832385,'2019-02-14?08:31:16'),??????????? (1094590409767661570,'張雨琪',31,'[email protected]',?1088248166370832385,'2019-01-14?09:15:15'),??????????? (1094592041087729666,'劉紅雨',32,'[email protected]',?1088248166370832385,'2019-01-14?09:48:16');

    二、引入依賴

    1、建立maven項目(勾上create a simple project )

    2、在pom中引入依賴

    <parent>????<groupId>org.springframework.boot</groupId>????<artifactId>spring-boot-starter-parent</artifactId>????<version>2.1.3.RELEASE</version></parent><dependencies>????<dependency>????????<groupId>org.springframework.boot</groupId>????????<artifactId>spring-boot-starter</artifactId>????</dependency>????<dependency>????????<groupId>org.springframework.boot</groupId>????????<artifactId>spring-boot-test</artifactId>????????<scope>test</scope>????</dependency>????<!--?Lombok?-->????<dependency>????????<groupId>org.projectlombok</groupId>????????<artifactId>lombok</artifactId>????????<optional>true</optional>????</dependency>????<!--?Mybatis-Plus啟動器?-->????<dependency>????????<groupId>com.baomidou</groupId>????????<artifactId>mybatis-plus-boot-starter</artifactId>????????<version>3.1.0</version>????</dependency>????<!--?Mysql?JDBC?不用指定version,依賴的spring?jdbc已指定?-->????<dependency>????????<groupId>mysql</groupId>????????<artifactId>mysql-connector-java</artifactId>????</dependency></dependencies>

    項目上有報錯:項目右鍵--maven--update project即可

    三、配置

    ?resource包下創建file(名字為application.yml)

    spring:??datasource:???driver-class-name:com.mysql.cj.jdbc.Driver???url:jdbc:mysql://localhost:3306/mp?useSSL=false&serverTimezone=GMT%2B8???username:root???password:root

    四、編碼

    1、建啟動類

    java包下創建com.mp包-->mp包下創建Java類(加上main方法)

    2、加注解

    類上:@SpringBootApplication意思為spring boot的啟動類

    3、main方法中編寫

    SpringApplication.run(啟動類.class,args);

    4、創建實體類

    在mp包下建立entity包-->創建User的Java類

    依次編寫數據庫中的字段-->在類上添加@Data注解,就可自動生成get()、set()方法

    5、com.mp.dao-->UserMapper.java

    該mapper類要繼承MP的BaseMapper類,<User>泛型。

    在啟動類上添加@MapperScan("com.mp.dao"),指定需要掃描的Mapper包

    五、測試

    test-->com.mp-->SimpleTest.java

    該類添加@SpringBootTest注解和@RunWith(SpringRunner.class)

    添加@Aotuwired注解,注入userMapper類

    寫一個select()方法,添加@Test注解:

    List<User> list = userMapper.selectList(null);

    list.forEach(System.out::println);//迭代輸出

    查看全部
  • 1、在maven官網下載lombox.jar-->project lombox.jar

    2、安裝路徑選擇到eclipse.exe/myeclipse.exe

    3、裝完后,在eclipse/myeclipse文件根目錄中生成lombox.jar文件,同時在eclipse/license.txt(myeclipse/myeclipse.ini)文件中會生成lombox.jar的路徑(如果存放路徑帶有中文,則需要修改路徑和lombox文件的位置)

    查看全部
  • transient, static, @TableField(exist = false)

    查看全部
  • 默認情況下實體名和表名一致,如果不一致可以在實體類中使用注解指定表名

    默認情況下主鍵使用id標識,如果不一致可以在實體類中使用注解指定

    查看全部
    0 采集 收起 來源:常用注解

    2020-07-21

舉報

0/150
提交
取消
課程須知
1、有Java開發基礎,了解Lambda表達式; 2、至少會使用一種關系型數據庫; 3、熟悉Maven; 4、熟悉SpringBoot; 5、最好熟悉MyBatis。
老師告訴你能學到什么?
1、了解MP的基本原理及框架特點; 2、掌握MP通用Mapper的使用; 3、掌握MP常用注解的使用; 4、掌握ActiveRecord模式的使用; 5、掌握MP多種主鍵策略的使用; 6、掌握MP常用配置的使用; 7、掌握MP通用Service的使用; 8、掌握MP在某些應用場景下的具體使用方式。

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!