欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MyBatis-Plus 通用IService使用詳解

 更新時(shí)間:2020年08月24日 11:57:06   作者:IT賤男  
這篇文章主要介紹了MyBatis-Plus 通用IService使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一、引言

MP除了通用的Mapper還是通用的Servcie層,這也減少了相對(duì)應(yīng)的代碼工作量,把通用的接口提取到公共。其實(shí)按照MP的這種思想,可以自己也實(shí)現(xiàn)一些通用的Controller。

今天是周天,作為一名碼農(nóng)來(lái)說(shuō),這里小編提醒大家周末有空還是多出去運(yùn)動(dòng)一下。

生命在于運(yùn)動(dòng),生命誠(chéng)可貴。

二、 小編瞎扯

相信有和小編一樣的朋友,在大城市獨(dú)自漂泊,感覺(jué)就憑借自己內(nèi)心那一點(diǎn)點(diǎn)的火苗,想要燃燒起來(lái)。

小編在上海這些年,不慌也不忙,從開(kāi)始每天厭惡工作,到現(xiàn)在開(kāi)開(kāi)心心的上班,回顧自己的成長(zhǎng)除了存款,其他倒是成長(zhǎng)了不少。在今年小編做了自己很多想做的事,雖然錢(qián)花了,但是感覺(jué)完成了多年自己的心愿,還是很有成就感的。

所以各位程序員的小伙伴,好好享受生活、多和家人聯(lián)系溝通,過(guò)好每一天。

這一段和本章沒(méi)有任何關(guān)系。

三、IService使用

service層需要繼承IService,當(dāng)然實(shí)現(xiàn)層也要繼承對(duì)應(yīng)的實(shí)現(xiàn)類(lèi)。

/**
 * <p>
 * 用戶(hù) 服務(wù)類(lèi)
 * </p>
 *
 * @author IT賤男
 * @since 2019-06-14
 */
public interface UserService extends IService<User> {

}

/**
 * <p>
 * 用戶(hù) 服務(wù)實(shí)現(xiàn)類(lèi)
 * </p>
 *
 * @author IT賤男
 * @since 2019-06-14
 */
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {

}

這里小編基本的增刪改查就不一一演示了,演示幾個(gè)特殊一點(diǎn)的方法。

getOne(),這個(gè)是方法返回結(jié)果不止一條則會(huì)拋出異常,如果想默認(rèn)取第一條結(jié)果,可以給這方法傳第二個(gè)參數(shù)為false。

 @Test
 public void getOne() {
  User one = userService.getOne(Wrappers.<User>lambdaQuery().eq(User::getAge, 31),false);
  System.out.println(one);
 }

saveOrUpdateBatch(),批量新增或者修改方法,判斷ID是否存在,如果ID不存在執(zhí)行新增,如果ID存在先執(zhí)行查詢(xún)語(yǔ)句,查詢(xún)結(jié)果為空新增,否則修改。

 @Test
 public void saveOrUpdateBatch() {
  User user1 = new User();
  user1.setName("兔子");
  user1.setAge(18);

  User user2 = new User();
  user2.setId(1088250446457389060L);
  user2.setName("烏龜");
  user2.setAge(18);

  List<User> users = Arrays.asList(user1, user2);

  boolean b = userService.saveOrUpdateBatch(users);
  System.out.println(b);
 }

接下來(lái)說(shuō)一下基于lambda的相關(guān)操作

 /**
  * lombda查詢(xún)
  */
 @Test
 public void lambdaQuery(){
  List<User> list = userService.lambdaQuery().eq(User::getAge, 18).list();
  list.forEach(System.out::println);
 }

 /**
  * lombda修改
  */
 @Test
 public void lambdaUpdate(){
  boolean update = userService.lambdaUpdate().eq(User::getAge, 18).set(User::getAge, 31).update();
  System.out.println(update);
 }

 /**
  * lombda刪除
  */
 @Test
 public void lambdaRemoce(){
  boolean remove = userService.lambdaUpdate().eq(User::getAge, 18).remove();
  System.out.println(remove);
 }

到此這篇關(guān)于MyBatis-Plus 通用IService使用詳解的文章就介紹到這了,更多相關(guān)MyBatis-Plus 通用IService內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java的equals和==的比較示例

    java的equals和==的比較示例

    這篇文章主要介紹了java的equals和==的比較示例,需要的朋友可以參考下
    2014-04-04
  • 詳解Java中Optional類(lèi)的使用方法

    詳解Java中Optional類(lèi)的使用方法

    Optional的作用是什么?他都有哪些方法?阿里規(guī)范點(diǎn)名說(shuō)盡量用Optional來(lái)避免空指針,那么什么場(chǎng)景用Optional?本篇文章圍繞這三點(diǎn)來(lái)進(jìn)行講解,感興趣的可以學(xué)習(xí)一下
    2022-05-05
  • 基于RabbitMQ的簡(jiǎn)單應(yīng)用(詳解)

    基于RabbitMQ的簡(jiǎn)單應(yīng)用(詳解)

    下面小編就為大家分享一篇基于RabbitMQ的簡(jiǎn)單應(yīng)用(詳解),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • 如何解決Java多線(xiàn)程死鎖問(wèn)題

    如何解決Java多線(xiàn)程死鎖問(wèn)題

    死鎖是一個(gè)很?chē)?yán)重的、必須要引起重視的問(wèn)題,本文主要介紹了死鎖的定義,解決方法和面試會(huì)遇到的問(wèn)題,感興趣的可以了解一下
    2021-05-05
  • java實(shí)現(xiàn)秒表功能

    java實(shí)現(xiàn)秒表功能

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)秒表功能,利用javax.swing.Timer類(lèi)設(shè)計(jì)實(shí)現(xiàn)秒表應(yīng)用程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • java設(shè)計(jì)模式之簡(jiǎn)單工廠模式

    java設(shè)計(jì)模式之簡(jiǎn)單工廠模式

    這篇文章主要為大家詳細(xì)介紹了java設(shè)計(jì)模式之簡(jiǎn)單工廠模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 簡(jiǎn)述JAVA中堆內(nèi)存與棧內(nèi)存的區(qū)別

    簡(jiǎn)述JAVA中堆內(nèi)存與棧內(nèi)存的區(qū)別

    這篇文章主要介紹了JAVA中堆內(nèi)存與棧內(nèi)存的區(qū)別,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • 如何在Java中使用WebSocket協(xié)議

    如何在Java中使用WebSocket協(xié)議

    WebSocket是一種基于 TCP 協(xié)議的全雙工通信協(xié)議,可以在瀏覽器和服務(wù)器之間建立實(shí)時(shí)、雙向的數(shù)據(jù)通信,下面這篇文章主要給大家介紹了關(guān)于如何在Java中使用WebSocket協(xié)議的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • XML Web 服務(wù) Eclipse實(shí)現(xiàn)sun-jaxws.xml文件的方法

    XML Web 服務(wù) Eclipse實(shí)現(xiàn)sun-jaxws.xml文件的方法

    在sun-jaxws.xml文件,可以配置endpoint、handler-chain等內(nèi)容,在這個(gè)文件中配置的內(nèi)容會(huì)覆蓋在Java代碼中使用注解屬性配置的的內(nèi)容,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2023-11-11
  • FP-Growth算法的Java實(shí)現(xiàn)+具體實(shí)現(xiàn)思路+代碼

    FP-Growth算法的Java實(shí)現(xiàn)+具體實(shí)現(xiàn)思路+代碼

    FP-Growth算法比Apriori算法快很多(但是卻比不上時(shí)間,how time slipped away)。在網(wǎng)上搜索后發(fā)現(xiàn)Java實(shí)現(xiàn)的FP-Growth算法很少,且大多數(shù)不太能理解):太菜。所以就自己實(shí)現(xiàn)了一下。這篇文章重點(diǎn)介紹一下我的Java實(shí)現(xiàn)
    2021-06-06

最新評(píng)論