最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis-Plus的多數(shù)據(jù)源你了解嗎

 更新時(shí)間:2022年03月23日 17:17:52   作者:禿頭的英才  
這篇文章主要為大家詳細(xì)介紹了Mybatis-Plus的多數(shù)據(jù)源,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

多數(shù)據(jù)源

創(chuàng)建數(shù)據(jù)庫(kù)

CREATE DATABASE mybatis_plus_1;
USE mybatis_plus_1;
CREATE TABLE product
(
    id BIGINT(20) NOT NULL COMMENT '主鍵id',
    NAME VARCHAR(30) NULL DEFAULT NULL COMMENT '商品名稱',
    price INT(11) DEFAULT 0 COMMENT '價(jià)格',
    VERSION INT(11) DEFAULT 0 COMMENT '樂觀鎖版本號(hào)',
    PRIMARY KEY (id)
);

刪除表

USE mybatis_plus;
DROP TABLE IF EXISTS product;

插入數(shù)據(jù)

INSERT INTO product (id, NAME, price) VALUES (1, '外星人', 100);

新建個(gè)工程。步驟和之前的一樣

導(dǎo)入依賴

<dependency>
	<groupId>com.baomidou</groupId>
    <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
    <version>3.5.0</version>
</dependency>

修改application.yml

spring:
  # 配置數(shù)據(jù)源信息
  datasource:
    dynamic:
      # 設(shè)置默認(rèn)的數(shù)據(jù)源或數(shù)據(jù)源組,默認(rèn)值即為master
      primary: master
      # 嚴(yán)格匹配數(shù)據(jù)源,默認(rèn)false,true未匹配到指定數(shù)據(jù)源時(shí)拋異常,false使用默認(rèn)數(shù)據(jù)源
      strict: false
      datasource:
        master:
          url: jdbc:mysql://localhost:3306/mybatis_plus?useSSL=false&serverTimezone=GMT%2B8
          driver-class-name: com.mysql.cj.jdbc.Driver
          username: root
          password: "011012"
        save_1:
          url: jdbc:mysql://localhost:3306/mybatis_plus_1?useSSL=false&serverTimezone=GMT%2B8
          driver-class-name: com.mysql.cj.jdbc.Driver
          username: root
          password: "011012"

創(chuàng)建文件包pojo

package com.example.pojo;
import lombok.Data;
@Data
public class Product {
    private Integer id;
    private  String name;
    private Integer price;
    private Integer version;
}
package com.example.pojo;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
//所有無(wú)參構(gòu)造和get方法和set方法還有哈希庫(kù)方法注解(lombok)
//有參構(gòu)造方法注解(@AllArgsConstructor)
@Data
@TableName("t_user")
public class User {
    //將該屬性對(duì)應(yīng)的字段指定為主鍵
    @TableId(value = "uid",type = IdType.AUTO)
    private Long id;
    private String name;
    private Integer age;
    private String email;
    private Integer sex;
}

創(chuàng)建文件包mapper(都是接口)

package com.example.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.pojo.Product;
import org.springframework.stereotype.Repository;
@Repository
public interface ProductMapper extends BaseMapper<Product> {
}
package com.example.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.pojo.User;
import org.springframework.stereotype.Repository;
@Repository
public interface UserMapper extends BaseMapper<User> {
}

創(chuàng)建文件包Service

package com.example.Sevice;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.pojo.Product;
public interface ProductService extends IService<Product> {
}
package com.example.Sevice;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.pojo.User;
public interface UserService extends IService<User> {
}

在這個(gè)包下創(chuàng)建文件包impl

package com.example.Sevice.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.mapper.UserMapper;
import com.example.pojo.User;
import org.springframework.stereotype.Service;
@Service
@DS("master")
public class UserService  extends ServiceImpl<UserMapper, User> implements com.example.Sevice.UserService {
}
package com.example.Sevice.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.Sevice.ProductService;
import com.example.mapper.ProductMapper;
import com.example.pojo.Product;
import lombok.Data;
import org.springframework.stereotype.Service;
@Service
@DS("save_1")
public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> implements ProductService {
}

寫測(cè)試文件

@Autowired
    private UserService userService;
    @Autowired
    private ProductService productService;
    @Test
    public void test1(){
        System.out.println(userService.getById(1));
        System.out.println(productService.getById(1));
    }

在這里插入圖片描述

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!    

相關(guān)文章

  • 六個(gè)Java集合使用時(shí)需要注意的事項(xiàng)

    六個(gè)Java集合使用時(shí)需要注意的事項(xiàng)

    這篇文章主要為大家詳細(xì)介紹了六個(gè)Java集合使用時(shí)需要注意的事項(xiàng),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)java有一定的幫助,需要的可以參考一下
    2023-01-01
  • SpringBoot接口或方法進(jìn)行失敗重試的實(shí)現(xiàn)方式

    SpringBoot接口或方法進(jìn)行失敗重試的實(shí)現(xiàn)方式

    為了防止網(wǎng)絡(luò)抖動(dòng),影響我們核心接口或方法的成功率,通常我們會(huì)對(duì)核心方法進(jìn)行失敗重試,如果我們自己通過(guò)for循環(huán)實(shí)現(xiàn),會(huì)使代碼顯得比較臃腫,所以本文給大家介紹了SpringBoot接口或方法進(jìn)行失敗重試的實(shí)現(xiàn)方式,需要的朋友可以參考下
    2024-07-07
  • SpringBoot 過(guò)濾器, 攔截器, 監(jiān)聽器的具體使用

    SpringBoot 過(guò)濾器, 攔截器, 監(jiān)聽器的具體使用

    本文主要介紹了SpringBoot 過(guò)濾器, 攔截器, 監(jiān)聽器的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • Mybatis的xml中使用if/else標(biāo)簽的具體使用

    Mybatis的xml中使用if/else標(biāo)簽的具體使用

    本文主要介紹了Mybatis的xml中使用if/else標(biāo)簽的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • springBoot集成flowable的流程解析

    springBoot集成flowable的流程解析

    這篇文章主要介紹了springBoot集成flowable的流程,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-02-02
  • SpringBoot集成SOL鏈的詳細(xì)過(guò)程

    SpringBoot集成SOL鏈的詳細(xì)過(guò)程

    Solanaj 是一個(gè)用于與 Solana 區(qū)塊鏈交互的 Java 庫(kù),它為 Java 開發(fā)者提供了一套功能豐富的 API,使得在 Java 環(huán)境中可以輕松構(gòu)建與 Solana 區(qū)塊鏈交互的應(yīng)用程序,這篇文章主要介紹了SpringBoot集成SOL鏈的詳細(xì)過(guò)程,需要的朋友可以參考下
    2025-01-01
  • springboot bean掃描路徑的實(shí)現(xiàn)

    springboot bean掃描路徑的實(shí)現(xiàn)

    這篇文章主要介紹了springboot bean掃描路徑的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • JVM性能調(diào)優(yōu)實(shí)現(xiàn)原理及配置

    JVM性能調(diào)優(yōu)實(shí)現(xiàn)原理及配置

    這篇文章主要介紹了JVM性能調(diào)優(yōu)實(shí)現(xiàn)原理及配置,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • 多線程計(jì)數(shù),怎么保持計(jì)數(shù)準(zhǔn)確的方法

    多線程計(jì)數(shù),怎么保持計(jì)數(shù)準(zhǔn)確的方法

    這篇文章主要介紹了多線程計(jì)數(shù)的方法,有需要的朋友可以參考一下
    2014-01-01
  • 劍指Offer之Java算法習(xí)題精講鏈表與數(shù)組專項(xiàng)訓(xùn)練

    劍指Offer之Java算法習(xí)題精講鏈表與數(shù)組專項(xiàng)訓(xùn)練

    跟著思路走,之后從簡(jiǎn)單題入手,反復(fù)去看,做過(guò)之后可能會(huì)忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會(huì)發(fā)現(xiàn)質(zhì)的變化
    2022-03-03

最新評(píng)論

安顺市| 拜泉县| 抚州市| 双辽市| 五大连池市| 黄冈市| 林甸县| 井研县| 恩施市| 屏东市| 东兰县| 天长市| 蒲城县| 康保县| 汝州市| 大宁县| 临邑县| 聊城市| 湘西| 古田县| 霸州市| 嘉祥县| 崇文区| 同德县| 常山县| 鹤峰县| 马龙县| 连云港市| 澄迈县| 霍城县| 肇东市| 拜泉县| 周宁县| 上栗县| 莆田市| 延长县| 盐源县| 故城县| 灵石县| 密云县| 五常市|