日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Springboot mybatis-plus配置及用法詳解

瀏覽:11日期:2023-04-19 14:50:29

本節(jié)內(nèi)容擴(kuò)展介紹下針對mybatis的增強(qiáng)工具mybatis-plus,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡化開發(fā)、提高效率而生。

二話不多說,我們先寫編寫個簡單的例子,讓大家先初步的了解下mybatis-plus。

1.mybatis-plus初步實(shí)例

(1)創(chuàng)建一個spring boot web工程(具體創(chuàng)建過程就不再演示了,還不會的同學(xué)去看看spring boot專題第一節(jié)內(nèi)容)

(2)引入依賴

<!--web項(xiàng)目依賴--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--validation表單校驗(yàn)--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency> <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version> </dependency> <!--mysql驅(qū)動--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!--thymeleaf依賴包--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>

(3)配置文件application.yml

# DataSource Config spring: datasource: username: root password: tx@mysql@2020 url: jdbc:mysql://188.131.233.55:3306/spring_boot_topic driver-class-name: com.mysql.cj.jdbc.Driver(4)

(4)實(shí)體類User

package com.kinglead.demo.domain; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; ​ @Data @TableName(value = 't_user') //指明數(shù)據(jù)庫表名 public class User { private Long id; private String name; private Integer age; private String email; }

(5)創(chuàng)建Mapper接口

package com.kinglead.demo.mapper; ​ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.kinglead.demo.domain.User; ​ //未來使用mybatis-plus的公共接口,必須繼承BaseMapper public interface UserMapper extends BaseMapper<User> { }

(6)創(chuàng)建Service接口

UserService

package com.kinglead.demo.service; import com.kinglead.demo.domain.User; import java.util.List; public interface UserService { List<User> queryUserList(); }

UserServiceImpl

package com.kinglead.demo.service.impl; ​ import com.kinglead.demo.domain.User; import com.kinglead.demo.mapper.UserMapper; import com.kinglead.demo.service.UserService; import org.springframework.stereotype.Service; ​ import javax.annotation.Resource; import java.util.List; ​ @Service public class UserServiceImpl implements UserService { @Resource private UserMapper userMapper; @Override public List<User> queryUserList() { //使用mybatis-plus公共查詢接口完成列表查詢 return userMapper.selectList(null); } }

(7)創(chuàng)建controller

package com.kinglead.demo.controller; ​ import com.kinglead.demo.domain.User; import com.kinglead.demo.service.UserService; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; ​ import javax.annotation.Resource; import java.util.List; ​ @Controller @RequestMapping('/user') public class UserController { ​ @Resource private UserService userService; ​ @RequestMapping('/userList') public ModelAndView queryUserList(ModelAndView modelAndView){ List<User> userList = userService.queryUserList(); modelAndView.addObject('userList', userList); modelAndView.setViewName('userList'); return modelAndView; } ​ }

(8)用戶列表頁面

<!DOCTYPE html> <html xmlns:th='http://www.thymeleaf.org'> <head> <meta http-equiv='Content-Type' content='text/html;charset=UTF-8' /> <title>用戶信息</title> <!--<link rel='stylesheet' type='text/css' href='http://www.b3g6.com/css/common.css' rel='external nofollow' />--> <style type='text/css'> table { border: 1px solid black; text-align: center; border-collapse: collapse; } table thead th { border: 1px solid black; } table tbody td { border: 1px solid black; } </style> </head> <body> <div> <h2>用戶列表</h2> </div> <table cellpadding='0' cellspacing='0'> <thead> <th>序號</th> <th>編碼</th> <th>用戶名</th> </thead> <tbody> <tr th:each='entries,stat:${userList}' th:style='’ color: rgb(17, 119, 0);'>> <td th:text='${stat.count}'></td> <td th:text='${entries[’id’]}'></td> <td th:text='${entries[’name’]}'></td> </tr> </tbody> </table> </body> </html>

(9)啟動類

package com.kinglead.demo; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @MapperScan('com.kinglead.demo.mapper') public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }

(10)測試訪問

Springboot mybatis-plus配置及用法詳解

小結(jié)

我們能看到mybatis-plus通過對mybatis的加強(qiáng),能在不寫mapper.xml文件的情況下,完成簡單的CRUD的操作。看到這里,有的小伙伴可能會想,這和JPA有什么不一樣,直接用JPA不就好啦。

下面我們來對比下他們倆的區(qū)別:要說mybatis-plus,得先說mybatis。mybatis比較接近原生sql,要想使用的好,需要很好的sql基礎(chǔ),所有的數(shù)據(jù)庫操作都必須寫sql語句;JPA是對hibernate的封裝,提取了很多CRUD的公共方法,可以在不寫sql的情況下完成不復(fù)雜的CRUD;mybatis-plus是mybatis的增強(qiáng)工具,天生擁有mybatis的優(yōu)勢,也具備像JPA一樣擁有很多CRUD的公共方法,簡單的sql直接調(diào)用,不要編寫語句。

那我們該如何選擇他們呢?沒有哪個框架是最優(yōu)的,主要還是要根據(jù)實(shí)際項(xiàng)目情況而定。如果項(xiàng)目不復(fù)雜,涉及不到很多復(fù)雜的數(shù)據(jù)處理,那么建議考慮JPA。如果項(xiàng)目復(fù)雜,涉及到很多復(fù)雜的數(shù)據(jù)處理,那么建議考慮mybatis或mybatis-plus,在這基礎(chǔ)上,如果想簡化mybatis,可以考慮mybatis-plus。

本節(jié)內(nèi)容只是展示了mybatis-plus的冰山一角,它還有擁有很多特色功能,如支持主鍵字段生成、內(nèi)置分頁插件等。

源碼地址:https://github.com/kinglead2012/myblog

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
中文字幕人成乱码在线观看 | 在线视频观看日韩| 国产高清精品二区| 国产日产精品一区二区三区四区的观看方式| 欧美69视频| 欧美1区2区3区| 波多野结衣一区| 亚洲精品888| 国产亚洲精品v| 久久午夜视频| 亚洲九九精品| 91精品国产自产观看在线| 日韩在线网址| 亚洲一区欧美| 色综合视频一区二区三区日韩| 一区二区电影| 欧美日韩亚洲三区| 久久免费精品| 新版的欧美在线视频| 亚洲电影有码| 亚州av乱码久久精品蜜桃| 午夜在线视频观看日韩17c| 免费视频一区二区| 日韩精品三区四区| 久久超级碰碰| 中文字幕在线看片| 亚洲精品小说| 五月激激激综合网色播| 天堂俺去俺来也www久久婷婷| 国产欧美日韩视频在线| 国产一区调教| 欧美福利一区| 亚洲视频二区| 国产精品66| 日韩在线视频精品| 亚洲女同中文字幕| 日韩欧美中文字幕一区二区三区| 国产日韩欧美中文在线| 国产专区精品| 午夜日韩福利| 91欧美日韩在线| 国产精品蜜芽在线观看| 91超碰国产精品| 亚洲精品黄色| 老牛国内精品亚洲成av人片| 欧美aa在线观看| 亚洲一区av| 精品亚洲a∨| 欧美+亚洲+精品+三区| 日韩精品乱码av一区二区| 丁香婷婷久久| 欧美日韩国产高清| 欧美亚洲综合视频| 日韩欧美1区| 亚洲一二三区视频| 精品久久97| 亚洲欧美不卡| 久久精品人人| 狠狠干成人综合网| 国产欧美在线| 免费久久精品| 久久国内精品自在自线400部| 日本蜜桃在线观看视频| 美女尤物久久精品| 日韩成人精品一区二区| 免费成人在线影院| 中文在线а√天堂| 日韩专区视频网站| 群体交乱之放荡娇妻一区二区| 免费人成黄页网站在线一区二区| 麻豆久久一区| 鲁大师影院一区二区三区| 精品视频99| 欧美精品自拍| 电影91久久久| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美激情麻豆| 香蕉久久国产| 高清一区二区| 日韩一二三区在线观看| 深夜视频一区二区| 日本伊人久久| 九一成人免费视频| 精品国产成人| 国产精品xxx在线观看| 婷婷视频一区二区三区| 日本午夜精品一区二区三区电影| 蜜桃精品视频| 91久久久精品国产| 99视频+国产日韩欧美| 韩日一区二区三区| 亚洲综合另类| 国产精选一区| 国产极品久久久久久久久波多结野 | 97精品在线| 伊人精品在线| 香蕉久久精品| 欧美日韩一区二区三区不卡视频 | 激情久久中文字幕| 国产综合视频| 伊人久久成人| 日韩在线观看一区二区三区| 香蕉精品久久| 久久精品三级| 99国产精品视频免费观看一公开| 中文字幕免费精品| 国产成人久久精品麻豆二区| 亚洲无线观看| 亚欧成人精品| 日韩黄色免费网站| 日韩电影二区| 麻豆久久一区二区| 欧美日韩国产在线观看网站 | 日韩视频一区二区三区在线播放免费观看 | 9国产精品视频| 国产精品三级| 麻豆精品视频在线观看| 精品久久久网| 伊人久久亚洲影院| 精品视频网站| 国产一区日韩欧美| 一区二区三区四区日韩| 国产精品激情| 鲁大师成人一区二区三区| 麻豆国产精品| 国产精品观看| 国产精品久久国产愉拍| 日韩av中文字幕一区二区三区| 亚洲综合激情在线| 午夜一级久久| 日韩在线a电影| 精品91久久久久| 91精品国产自产在线观看永久∴| 国产成人免费视频网站视频社区| 国产精品久久久久久久久久妞妞| 国产欧美日韩一区二区三区四区| 日韩av网站在线观看| 亚洲精品国产精品粉嫩| 亚洲人成网站在线在线观看| 欧美在线网站| 亚洲激情二区| 黄色成人精品网站| 久久av一区| 日本大胆欧美人术艺术动态| 国产模特精品视频久久久久| 日韩一级不卡| 免播放器亚洲一区| 综合激情网站| 日韩精品欧美成人高清一区二区| 日韩国产精品久久久久久亚洲| 日本一区二区三区视频在线看 | 精品国产一区二区三区噜噜噜| 日本免费在线视频不卡一不卡二| 蜜臀久久99精品久久久久久9| 亚洲久久在线| 国产亚洲精品美女久久| 国产探花在线精品| 精品一区视频| 免费在线小视频| 日韩视频二区| 日韩高清国产一区在线| 国产精品手机在线播放| 老司机免费视频一区二区| 国产欧洲在线| 欧美理论视频| 丝袜脚交一区二区| 欧美日韩一区二区三区在线电影| 国产精品宾馆| sm捆绑调教国产免费网站在线观看| 香蕉成人av| 日韩一区二区久久| 日韩精品a在线观看91| 精品一区二区三区免费看| 日韩毛片视频| 亚洲资源av| 国产精品美女在线观看直播| 国产一区二区三区不卡视频网站| 日本不卡免费高清视频在线| 夜夜嗨网站十八久久| 日韩精品欧美精品| 欧美一级鲁丝片| 中文字幕中文字幕精品| 国产精品久久久久久久久久齐齐| 91亚洲一区| 国产精品腿扒开做爽爽爽挤奶网站| 国产日韩1区| 久久免费黄色| 日本欧美韩国一区三区| 正在播放日韩精品| 日韩综合小视频| 在线天堂中文资源最新版| 亚洲精品一区二区在线播放∴| 欧美交a欧美精品喷水| 91九色精品| 国产精品xxxav免费视频| 亚洲成人精选| 国产精品久久久久9999高清| 久久久久.com| 日本不卡一二三区黄网| 久久国产欧美|