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

mybatis-plus與JPA混合的使用方式

 更新時(shí)間:2023年03月30日 14:29:37   作者:K歌、之王  
這篇文章主要介紹了mybatis-plus與JPA混合的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

前言

感覺(jué)Jpa的動(dòng)態(tài)構(gòu)建查詢不好使用,然后mybatis-plus沒(méi)有動(dòng)態(tài)構(gòu)建表的功能,有沒(méi)有可能使兩者混合使用,利用Jpa自動(dòng)建表的優(yōu)勢(shì) 與 mybatis-plus lambda查詢的優(yōu)勢(shì) 結(jié)合一下呢?

實(shí)踐過(guò)程

一、pom配置

<dependencies>
		<dependency>
			<groupId>com.baomidou</groupId>
			<artifactId>mybatis-plus-boot-starter</artifactId>
			<version>3.1.2</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
		</dependency>
	</dependencies>

二、配置

package com.naruto.configuration;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;

@Configuration
@MapperScan({"com.naruto.**.mapper*"})
public class MybatiesPlusConfig {
	
	/**
	 * 開(kāi)啟mybatis-plus分頁(yè)功能
	 * @return
	 */
	@Bean
	public PaginationInterceptor paginationInterceptor() {
		return new PaginationInterceptor();
	}

}

application.yml配置

spring:
  jpa:
    database-platform: org.hibernate.dialect.MySQL5Dialect
    show-sql: true
    properties:
      hibernate:
        hbm2ddl:
          auto: update
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springcloud?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false&nullCatalogMeansCurrent=true
    username: root
    password: 123456
mybatis-plus:
  mapper-locations: classpath*:com/naruto/**/xml/*Mapper.xml
  global-config:
    # 關(guān)閉MP3.0自帶的banner
    banner: false

三、實(shí)體類

此處

Table
TableName
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@TableId(type = IdType.ID_WORKER_STR) 不可忽略
@Table(name="platform_table")
@TableName("platform_table")
@Entity
public class PlatformTableModel implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 4977394314428963032L;
	
	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@TableId(type = IdType.ID_WORKER_STR)
	private String id;
	
	private String tableName;
	
	private String tableVersion;
	
	private String tableDescrition;
	
	private String createBy;
	
	private String createTime;
	
	private String updateBy;
	
	private String updateTime;
    ....	
}

四、配置好mapper和Service

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.naruto.mapper.PlatformTableMapper">

</mapper>
package com.naruto.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.naruto.entity.PlatformTableModel;

public interface PlatformTableMapper extends BaseMapper<PlatformTableModel>{

}
package com.naruto.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.naruto.entity.PlatformTableModel;

public interface IPlatformTableService extends IService<PlatformTableModel>{

}
package com.naruto.service.impl;

import org.springframework.stereotype.Service;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.naruto.entity.PlatformTableModel;
import com.naruto.mapper.PlatformTableMapper;
import com.naruto.service.IPlatformTableService;

@Service
public class PlatformTableServiceImpl extends ServiceImpl<PlatformTableMapper, PlatformTableModel> implements IPlatformTableService{

}

測(cè)試

1、啟動(dòng)

發(fā)現(xiàn)表已經(jīng)自動(dòng)建立好。

在這里插入圖片描述

2、 測(cè)試插入 與 查詢, 沒(méi)有問(wèn)題。

@RestController
@RequestMapping("table")
public class PlatformTableAction {
	
	@Autowired
	private IPlatformTableService platformTableService;
	
	@GetMapping("get")
	public List<PlatformTableModel> get() {
		LambdaQueryWrapper<PlatformTableModel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
		lambdaQueryWrapper.eq(PlatformTableModel::getId, "1461159441186361345");
		List<PlatformTableModel> platformTableModels = platformTableService.list(lambdaQueryWrapper);
		return platformTableModels;
	}
	
	@PostMapping("save")
	public Result save(@RequestBody PlatformTableModel platformTableModel) {
		platformTableService.save(platformTableModel);
		return new Result(platformTableModel);
	}
	
}

在這里插入圖片描述

在這里插入圖片描述

結(jié)論

可以結(jié)合使用以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 線程池原理深入分析

    Java 線程池原理深入分析

    這篇文章主要介紹了Java 線程池原理深入分析的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • Spring的事件和監(jiān)聽(tīng)器-同步與異步詳解

    Spring的事件和監(jiān)聽(tīng)器-同步與異步詳解

    這篇文章主要介紹了Spring的事件和監(jiān)聽(tīng)器-同步與異步詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 使用Idea快速搭建SpringMVC項(xiàng)目的詳細(xì)步驟記錄

    使用Idea快速搭建SpringMVC項(xiàng)目的詳細(xì)步驟記錄

    這篇文章主要給大家介紹了關(guān)于使用Idea快速搭建SpringMVC項(xiàng)目的詳細(xì)步驟,Spring?MVC是一種基于MVC模式的框架,它是Spring框架的一部分,它提供了一種更簡(jiǎn)單和更有效的方式來(lái)構(gòu)建Web應(yīng)用程序,需要的朋友可以參考下
    2024-05-05
  • Java中絕對(duì)值函數(shù)的介紹與其妙用

    Java中絕對(duì)值函數(shù)的介紹與其妙用

    這篇文章主要給大家介紹了Java中絕對(duì)值函數(shù)的介紹與其妙用,其中包括絕對(duì)值函數(shù)用來(lái)獲取表達(dá)式的絕對(duì)值和絕對(duì)值函數(shù)實(shí)現(xiàn)降序+升序輸出。文章末尾給出了實(shí)例介紹,有需要的朋友們可以參考學(xué)習(xí),下面來(lái)一起看看吧。
    2017-01-01
  • 解析Java程序中對(duì)象內(nèi)存的分配和控制的基本方法

    解析Java程序中對(duì)象內(nèi)存的分配和控制的基本方法

    這篇文章主要介紹了解析Java程序中對(duì)象內(nèi)存的分配和控制的基本方法,包括計(jì)算對(duì)象的內(nèi)存占用的方法,要的朋友可以參考下
    2016-04-04
  • mybatis中的延遲加載類型及設(shè)定詳解

    mybatis中的延遲加載類型及設(shè)定詳解

    這篇文章主要介紹了mybatis中的延遲加載類型及設(shè)定詳解,MyBatis中的延遲加載,也稱為懶加載,是指在進(jìn)行關(guān)聯(lián)查詢時(shí),按照設(shè)置延遲規(guī)則推遲對(duì)關(guān)聯(lián)對(duì)象的select查詢,延遲加載可以有效的減少數(shù)據(jù)庫(kù)壓力,需要的朋友可以參考下
    2023-10-10
  • mybatis使用xml進(jìn)行增刪改查代碼解析

    mybatis使用xml進(jìn)行增刪改查代碼解析

    這篇文章主要介紹了mybatis使用xml進(jìn)行增刪改查代碼解析,分享了相關(guān)配置和代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • Spring Security角色繼承分析

    Spring Security角色繼承分析

    這篇文章主要介紹了Spring Security角色繼承分析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Jax-rs規(guī)范REST接口文件上傳代碼實(shí)例

    Jax-rs規(guī)范REST接口文件上傳代碼實(shí)例

    這篇文章主要介紹了Jax-rs規(guī)范REST接口文件上傳代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java的validation參數(shù)校驗(yàn)代碼實(shí)例

    Java的validation參數(shù)校驗(yàn)代碼實(shí)例

    這篇文章主要介紹了Java的validation參數(shù)校驗(yàn)代碼實(shí)例,Validation參數(shù)校驗(yàn)是指在程序運(yùn)行中對(duì)傳進(jìn)來(lái)的參數(shù)進(jìn)行合法性檢查,以保證程序的正確性和安全性,需要的朋友可以參考下
    2023-10-10

最新評(píng)論