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

Mybatis-plus 雙主鍵的實現(xiàn)示例

 更新時間:2024年05月07日 09:35:34   作者:0000it_  
本文主要介紹了Mybatis-plus 雙主鍵的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、首先引入依賴

在Maven工程下的pom.xml文件引入這兩個依賴

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
        <dependency>
            <groupId>com.github.jeffreyning</groupId>
            <artifactId>mybatisplus-plus</artifactId>
            <version>1.5.1-RELEASE</version>
        </dependency>

二、在啟動類中添加@EnableMpp標簽

package com.GradeSystem.app;

import com.github.jeffreyning.mybatisplus.conf.EnableMPP;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

// web工程的啟動類 該類啟動一個內(nèi)置的tomcat服務器
@SpringBootApplication  //啟動web服務器的注解標簽
@MapperScan("com.GradeSystem.app.dao")
@EnableMPP
public class SpringBootApp {
    public static void main(String[] args) {
        SpringApplication.run(SpringBootApp.class);//啟動內(nèi)置tomcat服務器
    }
}

三、在實體類中添加@MppMultiId標簽和@TableField

package com.GradeSystem.app.bean;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * 功能:
 * 作者:jiaping
 * 日期:2023/9/5 20:48
 **/
@Data //注解標簽在類的頭部編寫,生成get set 無參數(shù)一有參數(shù)和其它的方法
@AllArgsConstructor  //會自動生成有參數(shù)構(gòu)造函數(shù)
@NoArgsConstructor //會生成無參構(gòu)造函數(shù)
public class Grade  implements Serializable {
    @MppMultiId
    @TableField(value = "stuid")
    private String stuid; // 學生學號
    @MppMultiId
    @TableField(value = "counum")
    private  String counum;//課程序號
    private  String classid;//行政班級
    private  Float ordinaryscore;//平時成績
    private  Float labscore;//實驗成績
    private  Float finalscore;//期末成績
    private  Float finalgrade;//總評成績
    private  String gradepoint;//績點

    private  String pass;//是否通過
    private  String stus;//狀態(tài)
    private  String resitgrade;//補考成績
    @TableField(exist = false) //非數(shù)據(jù)庫字段
    private  String stuname;//學生姓名

}

四、在控制器類中添加復合主鍵操作,批量更新

/**
 * 功能:
 * 作者:jiaping
 * 日期:2023/9/5 20:54
 **/
@Api(tags = "成績表")
@RestController //具備請求和相應功能
@RequestMapping("/grade")
@CrossOrigin //跨域訪問
public class GradeController {
    @Autowired
    private GradeService gradeService;


    @PostMapping("/batchSave")
    public CommonResult batchSave(@RequestBody List<Grade> product) {
        // 進行批量保存操作,例如批量保存到數(shù)據(jù)庫
        return CommonResult.success(gradeService.saveOrUpdateBatchByMultiId(product));
    }


}

五、Mapper或者Dao類繼承@MppBaseMapper

@Repository //表示這是數(shù)據(jù)訪問層標簽,意思就是將數(shù)據(jù)存儲到數(shù)據(jù)庫中,是springboot他的語義化注解標簽
public interface GradeDao extends MppBaseMapper<Grade> {
   
}

六、Service和ServiceImpl類繼承IMppService和MppServiceImpl

public interface GradeService extends IMppService<Grade> {
  
}
@Service
public class GradeServiceImpl extends MppServiceImpl<GradeDao, Grade> implements GradeService {
    @Autowired //用來實例化對象
    private GradeDao gradeDao;

   
}

七、問題解決:

458c654eceea41278539e7e0b57c48a7.png

出現(xiàn)這種錯誤,大概率是第一步加入的依賴版本沖突導致,mybatisplus-plus的版本1.5.1不要和mybatis-plus-boot-starter的版本3.5.2一起使用,更換為3.4.0

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
        <dependency>
            <groupId>com.github.jeffreyning</groupId>
            <artifactId>mybatisplus-plus</artifactId>
            <version>1.5.1-RELEASE</version>
        </dependency>

到此這篇關于Mybatis-plus 雙主鍵的實現(xiàn)示例的文章就介紹到這了,更多相關Mybatis-plus 雙主鍵內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • Java中的WeakHashMap詳解

    Java中的WeakHashMap詳解

    這篇文章主要介紹了Java中的WeakHashMap詳解,WeakHashMap可能平時使用的頻率并不高,但是你可能聽過WeakHashMap會進行自動回收吧,下面就對其原理進行分析,需要的朋友可以參考下
    2023-09-09
  • Spring @Configuration和@Component的區(qū)別

    Spring @Configuration和@Component的區(qū)別

    今天小編就為大家分享一篇關于Spring @Configuration和@Component的區(qū)別,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • java如何執(zhí)行l(wèi)inux命令

    java如何執(zhí)行l(wèi)inux命令

    這篇文章主要介紹了java如何執(zhí)行l(wèi)inux命令問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • IDEA導入eclipse項目并且部署到tomcat的步驟詳解

    IDEA導入eclipse項目并且部署到tomcat的步驟詳解

    這篇文章主要給大家介紹了關于IDEA導入eclipse項目并且部署到tomcat的相關資料,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-02-02
  • Springboot系列之kafka操作使用詳解

    Springboot系列之kafka操作使用詳解

    這篇文章主要為大家介紹了Springboot系列之kafka操作使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • 解決工具接口調(diào)用報錯:error:Unsupported Media Type問題

    解決工具接口調(diào)用報錯:error:Unsupported Media Type問題

    當遇到"UnsupportedMediaType"錯誤時,意味著HTTP請求的Content-Type與服務器期望的不匹配,比如服務器期待接收JSON格式數(shù)據(jù),而發(fā)送了純文本格式,常見的Content-Type類型包括text/html、application/json、multipart/form-data等
    2024-10-10
  • Java陷阱之a(chǎn)ssert關鍵字詳解

    Java陷阱之a(chǎn)ssert關鍵字詳解

    這篇文章詳細介紹了Java陷阱之a(chǎn)ssert關鍵字,有需要的朋友可以參考一下
    2013-09-09
  • Java實現(xiàn)24點小游戲

    Java實現(xiàn)24點小游戲

    這篇文章主要為大家詳細介紹了Java實現(xiàn)24點小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Spring Cloud Alibaba Nacos Config加載配置詳解流程

    Spring Cloud Alibaba Nacos Config加載配置詳解流

    這篇文章主要介紹了Spring Cloud Alibaba Nacos Config配置中心實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-07-07
  • Gradle進階使用結(jié)合Sonarqube進行代碼審查的方法

    Gradle進階使用結(jié)合Sonarqube進行代碼審查的方法

    今天小編就為大家分享一篇關于Gradle進階使用結(jié)合Sonarqube進行代碼審查的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12

最新評論