style(all): 使用IDEA默认的格式化方案

This commit is contained in:
小锅盖 2020-05-20 17:56:16 +08:00
parent 07a5419a5c
commit 89a4ffae18
117 changed files with 3588 additions and 3556 deletions

View File

@ -1,26 +1,18 @@
package com.baomidou.samples.dynamicload.controller; package com.baomidou.samples.dynamicload.controller;
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
import com.baomidou.dynamic.datasource.creator.BasicDataSourceCreator; import com.baomidou.dynamic.datasource.creator.*;
import com.baomidou.dynamic.datasource.creator.DataSourceCreator;
import com.baomidou.dynamic.datasource.creator.DruidDataSourceCreator;
import com.baomidou.dynamic.datasource.creator.HikariDataSourceCreator;
import com.baomidou.dynamic.datasource.creator.JndiDataSourceCreator;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import com.baomidou.samples.dynamicload.dto.DataSourceDTO; import com.baomidou.samples.dynamicload.dto.DataSourceDTO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import java.util.Set;
import javax.sql.DataSource;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import javax.sql.DataSource;
import org.springframework.web.bind.annotation.RequestBody; import java.util.Set;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@AllArgsConstructor @AllArgsConstructor

View File

@ -1,9 +1,10 @@
package com.baomidou.samples.dynamicload.dto; package com.baomidou.samples.dynamicload.dto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
/** /**
* @author TaoYu * @author TaoYu
* @date 2020/1/27 * @date 2020/1/27

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.druid.mybatis.mapper; package com.baomidou.samples.druid.mybatis.mapper;
import com.baomidou.samples.druid.mybatis.entity.User; import com.baomidou.samples.druid.mybatis.entity.User;
import java.util.List;
import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface UserMapper { public interface UserMapper {
@Insert("INSERT INTO user (name,age) values (#{name},#{age})") @Insert("INSERT INTO user (name,age) values (#{name},#{age})")

View File

@ -2,6 +2,7 @@ package com.baomidou.samples.druid.mybatis.service;
import com.baomidou.samples.druid.mybatis.entity.User; import com.baomidou.samples.druid.mybatis.entity.User;
import java.util.List; import java.util.List;
public interface UserService { public interface UserService {

View File

@ -5,10 +5,11 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.samples.druid.mybatis.entity.User; import com.baomidou.samples.druid.mybatis.entity.User;
import com.baomidou.samples.druid.mybatis.mapper.UserMapper; import com.baomidou.samples.druid.mybatis.mapper.UserMapper;
import com.baomidou.samples.druid.mybatis.service.UserService; import com.baomidou.samples.druid.mybatis.service.UserService;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service @Service
public class UserServiceImpl implements UserService { public class UserServiceImpl implements UserService {

View File

@ -3,13 +3,14 @@ package com.baomidou.samples.druid.mybatis.test;
import com.baomidou.samples.druid.mybatis.DruidMybatisApplication; import com.baomidou.samples.druid.mybatis.DruidMybatisApplication;
import com.baomidou.samples.druid.mybatis.entity.User; import com.baomidou.samples.druid.mybatis.entity.User;
import com.baomidou.samples.druid.mybatis.service.UserService; import com.baomidou.samples.druid.mybatis.service.UserService;
import java.util.Random;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.Random;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = DruidMybatisApplication.class) @SpringBootTest(classes = DruidMybatisApplication.class)
public class DruidMybatisApplicationTest { public class DruidMybatisApplicationTest {

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.jdbc; package com.baomidou.samples.jdbc;
import javax.sql.DataSource;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.JdbcTemplate;
import javax.sql.DataSource;
@SpringBootApplication @SpringBootApplication
public class Application { public class Application {

View File

@ -1,6 +1,7 @@
package com.baomidou.samples.jdbc.service; package com.baomidou.samples.jdbc.service;
import com.baomidou.samples.jdbc.entity.User; import com.baomidou.samples.jdbc.entity.User;
import java.util.List; import java.util.List;
public interface UserService { public interface UserService {

View File

@ -4,11 +4,12 @@ package com.baomidou.samples.jdbc.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.samples.jdbc.entity.User; import com.baomidou.samples.jdbc.entity.User;
import com.baomidou.samples.jdbc.service.UserService; import com.baomidou.samples.jdbc.service.UserService;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
@Service @Service
public class UserServiceImpl implements UserService { public class UserServiceImpl implements UserService {

View File

@ -3,13 +3,14 @@ package com.baomidou.samples.jdbc.test;
import com.baomidou.samples.jdbc.Application; import com.baomidou.samples.jdbc.Application;
import com.baomidou.samples.jdbc.entity.User; import com.baomidou.samples.jdbc.entity.User;
import com.baomidou.samples.jdbc.service.UserService; import com.baomidou.samples.jdbc.service.UserService;
import java.util.Random;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.Random;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class) @SpringBootTest(classes = Application.class)
public class ApplicationTest { public class ApplicationTest {

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.mybatis.mapper; package com.baomidou.samples.mybatis.mapper;
import com.baomidou.samples.mybatis.entity.User; import com.baomidou.samples.mybatis.entity.User;
import java.util.List;
import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import java.util.List;
//@DS("slave")这里可以使用但不建议不要和service同时使用 //@DS("slave")这里可以使用但不建议不要和service同时使用
public interface UserMapper { public interface UserMapper {

View File

@ -2,6 +2,7 @@ package com.baomidou.samples.mybatis.service;
import com.baomidou.samples.mybatis.entity.User; import com.baomidou.samples.mybatis.entity.User;
import java.util.List; import java.util.List;
public interface UserService { public interface UserService {

View File

@ -5,10 +5,11 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.samples.mybatis.entity.User; import com.baomidou.samples.mybatis.entity.User;
import com.baomidou.samples.mybatis.mapper.UserMapper; import com.baomidou.samples.mybatis.mapper.UserMapper;
import com.baomidou.samples.mybatis.service.UserService; import com.baomidou.samples.mybatis.service.UserService;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service @Service
public class UserServiceImpl implements UserService { public class UserServiceImpl implements UserService {

View File

@ -4,13 +4,14 @@ package com.baomidou.samples.mybatis.test;
import com.baomidou.samples.mybatis.Application; import com.baomidou.samples.mybatis.Application;
import com.baomidou.samples.mybatis.entity.User; import com.baomidou.samples.mybatis.entity.User;
import com.baomidou.samples.mybatis.service.UserService; import com.baomidou.samples.mybatis.service.UserService;
import java.util.Random;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.Random;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class) @SpringBootTest(classes = Application.class)
public class ApplicationTest { public class ApplicationTest {

View File

@ -3,13 +3,14 @@ package com.baomidou.samples.mybatisplus2.test;
import com.baomidou.samples.mybatisplus2.Application; import com.baomidou.samples.mybatisplus2.Application;
import com.baomidou.samples.mybatisplus2.entity.User; import com.baomidou.samples.mybatisplus2.entity.User;
import com.baomidou.samples.mybatisplus2.service.UserService; import com.baomidou.samples.mybatisplus2.service.UserService;
import java.util.Random;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.Random;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class) @SpringBootTest(classes = Application.class)
public class ApplicationTest { public class ApplicationTest {

View File

@ -3,13 +3,14 @@ package com.baomidou.samples.mybatisplus3.test;
import com.baomidou.samples.mybatisplus.Application; import com.baomidou.samples.mybatisplus.Application;
import com.baomidou.samples.mybatisplus.entity.User; import com.baomidou.samples.mybatisplus.entity.User;
import com.baomidou.samples.mybatisplus.service.UserService; import com.baomidou.samples.mybatisplus.service.UserService;
import java.util.Random;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.Random;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class) @SpringBootTest(classes = Application.class)
public class ApplicationTest { public class ApplicationTest {

View File

@ -1,13 +1,14 @@
package com.baomidou.samples.nest; package com.baomidou.samples.nest;
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.event.ApplicationStartedEvent; import org.springframework.boot.context.event.ApplicationStartedEvent;
import org.springframework.context.ApplicationListener; import org.springframework.context.ApplicationListener;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
@Component @Component
public class CreateDatabaseOnStarted implements ApplicationListener<ApplicationStartedEvent> { public class CreateDatabaseOnStarted implements ApplicationListener<ApplicationStartedEvent> {

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.nest.mapper; package com.baomidou.samples.nest.mapper;
import com.baomidou.samples.nest.entiry.Student; import com.baomidou.samples.nest.entiry.Student;
import java.util.List;
import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface StudentMapper { public interface StudentMapper {
@Insert("INSERT INTO student (name,age) values (#{name},#{age})") @Insert("INSERT INTO student (name,age) values (#{name},#{age})")

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.nest.mapper; package com.baomidou.samples.nest.mapper;
import com.baomidou.samples.nest.entiry.Teacher; import com.baomidou.samples.nest.entiry.Teacher;
import java.util.List;
import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface TeacherMapper { public interface TeacherMapper {
@Insert("INSERT INTO teacher (name,age) values (#{name},#{age})") @Insert("INSERT INTO teacher (name,age) values (#{name},#{age})")

View File

@ -1,6 +1,7 @@
package com.baomidou.samples.nest.service; package com.baomidou.samples.nest.service;
import com.baomidou.samples.nest.entiry.Student; import com.baomidou.samples.nest.entiry.Student;
import java.util.List; import java.util.List;
public interface StudentService { public interface StudentService {

View File

@ -1,6 +1,7 @@
package com.baomidou.samples.nest.service; package com.baomidou.samples.nest.service;
import com.baomidou.samples.nest.entiry.Teacher; import com.baomidou.samples.nest.entiry.Teacher;
import java.util.List; import java.util.List;

View File

@ -4,11 +4,12 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.samples.nest.entiry.Student; import com.baomidou.samples.nest.entiry.Student;
import com.baomidou.samples.nest.mapper.StudentMapper; import com.baomidou.samples.nest.mapper.StudentMapper;
import com.baomidou.samples.nest.service.StudentService; import com.baomidou.samples.nest.service.StudentService;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
@Service @Service
@DS("student") @DS("student")
public class StudentServiceImpl implements StudentService { public class StudentServiceImpl implements StudentService {

View File

@ -5,12 +5,13 @@ import com.baomidou.samples.nest.entiry.Teacher;
import com.baomidou.samples.nest.mapper.TeacherMapper; import com.baomidou.samples.nest.mapper.TeacherMapper;
import com.baomidou.samples.nest.service.StudentService; import com.baomidou.samples.nest.service.StudentService;
import com.baomidou.samples.nest.service.TeacherService; import com.baomidou.samples.nest.service.TeacherService;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
@Service @Service
@DS("teacher") @DS("teacher")
public class TeacherServiceImpl implements TeacherService { public class TeacherServiceImpl implements TeacherService {

View File

@ -5,13 +5,14 @@ import com.baomidou.samples.nest.Application;
import com.baomidou.samples.nest.service.SchoolService; import com.baomidou.samples.nest.service.SchoolService;
import com.baomidou.samples.nest.service.StudentService; import com.baomidou.samples.nest.service.StudentService;
import com.baomidou.samples.nest.service.TeacherService; import com.baomidou.samples.nest.service.TeacherService;
import java.util.Random;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.Random;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class) @SpringBootTest(classes = Application.class)

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.seata.dto; package com.baomidou.samples.seata.dto;
import javax.validation.constraints.NotNull;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
@Data @Data
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor

View File

@ -2,10 +2,11 @@ package com.baomidou.samples.seata.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import java.util.Date;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import java.util.Date;
@Data @Data
@Builder @Builder
public class Account { public class Account {

View File

@ -2,10 +2,11 @@ package com.baomidou.samples.seata.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import java.util.Date;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import java.util.Date;
@Data @Data
@Builder @Builder
public class Product { public class Product {

View File

@ -5,12 +5,13 @@ import com.baomidou.samples.seata.dao.AccountDao;
import com.baomidou.samples.seata.entity.Account; import com.baomidou.samples.seata.entity.Account;
import com.baomidou.samples.seata.service.AccountService; import com.baomidou.samples.seata.service.AccountService;
import io.seata.core.context.RootContext; import io.seata.core.context.RootContext;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
@Slf4j @Slf4j
@Service @Service
public class AccountServiceImpl implements AccountService { public class AccountServiceImpl implements AccountService {

View File

@ -10,12 +10,13 @@ import com.baomidou.samples.seata.service.OrderService;
import com.baomidou.samples.seata.service.ProductService; import com.baomidou.samples.seata.service.ProductService;
import io.seata.core.context.RootContext; import io.seata.core.context.RootContext;
import io.seata.spring.annotation.GlobalTransactional; import io.seata.spring.annotation.GlobalTransactional;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
@Slf4j @Slf4j
@Service @Service
public class OrderServiceImpl implements OrderService { public class OrderServiceImpl implements OrderService {

View File

@ -5,12 +5,13 @@ import com.baomidou.samples.seata.dao.ProductDao;
import com.baomidou.samples.seata.entity.Product; import com.baomidou.samples.seata.entity.Product;
import com.baomidou.samples.seata.service.ProductService; import com.baomidou.samples.seata.service.ProductService;
import io.seata.core.context.RootContext; import io.seata.core.context.RootContext;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
@Slf4j @Slf4j
@Service @Service
public class ProductServiceImpl implements ProductService { public class ProductServiceImpl implements ProductService {

View File

@ -2,12 +2,13 @@ package com.baomidou.samples.spel.controller;
import com.baomidou.samples.spel.entity.User; import com.baomidou.samples.spel.entity.User;
import com.baomidou.samples.spel.service.UserService; import com.baomidou.samples.spel.service.UserService;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
@RestController @RestController
public class UserController { public class UserController {

View File

@ -1,11 +1,12 @@
package com.baomidou.samples.spel.mapper; package com.baomidou.samples.spel.mapper;
import com.baomidou.samples.spel.entity.User; import com.baomidou.samples.spel.entity.User;
import java.util.List;
import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import java.util.List;
//@DS("slave")这里可以使用但不建议不要和service同时使用 //@DS("slave")这里可以使用但不建议不要和service同时使用
public interface UserMapper { public interface UserMapper {

View File

@ -2,6 +2,7 @@ package com.baomidou.samples.spel.service;
import com.baomidou.samples.spel.entity.User; import com.baomidou.samples.spel.entity.User;
import java.util.List; import java.util.List;
public interface UserService { public interface UserService {

View File

@ -5,10 +5,11 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.samples.spel.entity.User; import com.baomidou.samples.spel.entity.User;
import com.baomidou.samples.spel.mapper.UserMapper; import com.baomidou.samples.spel.mapper.UserMapper;
import com.baomidou.samples.spel.service.UserService; import com.baomidou.samples.spel.service.UserService;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service @Service
@DS("slave") @DS("slave")
public class UserServiceImpl implements UserService { public class UserServiceImpl implements UserService {

View File

@ -1,12 +1,8 @@
package com.baomidou.samples.spel.test; package com.baomidou.samples.spel.test;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import com.baomidou.samples.spel.Application; import com.baomidou.samples.spel.Application;
import com.baomidou.samples.spel.entity.User; import com.baomidou.samples.spel.entity.User;
import com.baomidou.samples.spel.service.UserService; import com.baomidou.samples.spel.service.UserService;
import javax.servlet.http.HttpSession;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
@ -19,6 +15,11 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.WebApplicationContext;
import javax.servlet.http.HttpSession;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class) @SpringBootTest(classes = Application.class)
public class ApplicationTest { public class ApplicationTest {

View File

@ -3,14 +3,15 @@ package com.baomidou.samples.load;
import com.baomidou.dynamic.datasource.provider.AbstractJdbcDataSourceProvider; import com.baomidou.dynamic.datasource.provider.AbstractJdbcDataSourceProvider;
import com.baomidou.dynamic.datasource.provider.DynamicDataSourceProvider; import com.baomidou.dynamic.datasource.provider.DynamicDataSourceProvider;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.sql.Statement; import java.sql.Statement;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
@SpringBootApplication @SpringBootApplication
public class Application { public class Application {

View File

@ -16,10 +16,11 @@
*/ */
package com.baomidou.dynamic.datasource; package com.baomidou.dynamic.datasource;
import org.springframework.jdbc.datasource.AbstractDataSource;
import javax.sql.DataSource;
import java.sql.Connection; import java.sql.Connection;
import java.sql.SQLException; import java.sql.SQLException;
import javax.sql.DataSource;
import org.springframework.jdbc.datasource.AbstractDataSource;
/** /**
* 抽象动态获取数据源 * 抽象动态获取数据源

View File

@ -19,9 +19,10 @@ package com.baomidou.dynamic.datasource;
import com.baomidou.dynamic.datasource.matcher.ExpressionMatcher; import com.baomidou.dynamic.datasource.matcher.ExpressionMatcher;
import com.baomidou.dynamic.datasource.matcher.Matcher; import com.baomidou.dynamic.datasource.matcher.Matcher;
import com.baomidou.dynamic.datasource.matcher.RegexMatcher; import com.baomidou.dynamic.datasource.matcher.RegexMatcher;
import lombok.Getter;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
import lombok.Getter;
/** /**
* 基于多种策略的自动切换数据源 * 基于多种策略的自动切换数据源

View File

@ -17,10 +17,11 @@
package com.baomidou.dynamic.datasource; package com.baomidou.dynamic.datasource;
import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy; import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy;
import lombok.Data;
import javax.sql.DataSource;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
import javax.sql.DataSource;
import lombok.Data;
/** /**
* 分组数据源 * 分组数据源

View File

@ -21,18 +21,19 @@ import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import com.p6spy.engine.spy.P6DataSource; import com.p6spy.engine.spy.P6DataSource;
import io.seata.rm.datasource.DataSourceProxy; import io.seata.rm.datasource.DataSourceProxy;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.DisposableBean;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.util.StringUtils;
import javax.sql.DataSource;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import javax.sql.DataSource;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.DisposableBean;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.util.StringUtils;
/** /**
* 核心动态数据源组件 * 核心动态数据源组件

View File

@ -17,11 +17,7 @@
package com.baomidou.dynamic.datasource.annotation; package com.baomidou.dynamic.datasource.annotation;
import java.lang.annotation.Documented; import java.lang.annotation.*;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/** /**
* The core Annotation to switch datasource. It can be annotate at class or method. * The core Annotation to switch datasource. It can be annotate at class or method.

View File

@ -16,9 +16,10 @@
*/ */
package com.baomidou.dynamic.datasource.aop; package com.baomidou.dynamic.datasource.aop;
import org.springframework.aop.aspectj.AspectJExpressionPointcut;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.Map; import java.util.Map;
import org.springframework.aop.aspectj.AspectJExpressionPointcut;
/** /**
* @author TaoYu * @author TaoYu

View File

@ -21,10 +21,6 @@ import com.baomidou.dynamic.datasource.matcher.Matcher;
import com.baomidou.dynamic.datasource.matcher.RegexMatcher; import com.baomidou.dynamic.datasource.matcher.RegexMatcher;
import com.baomidou.dynamic.datasource.processor.DsProcessor; import com.baomidou.dynamic.datasource.processor.DsProcessor;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import lombok.Setter; import lombok.Setter;
import org.aopalliance.aop.Advice; import org.aopalliance.aop.Advice;
import org.aopalliance.intercept.MethodInterceptor; import org.aopalliance.intercept.MethodInterceptor;
@ -36,6 +32,11 @@ import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware; import org.springframework.beans.factory.BeanFactoryAware;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/** /**
* @author TaoYu * @author TaoYu
* @since 1.2.0 * @since 1.2.0

View File

@ -20,12 +20,13 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.processor.DsProcessor; import com.baomidou.dynamic.datasource.processor.DsProcessor;
import com.baomidou.dynamic.datasource.support.DataSourceClassResolver; import com.baomidou.dynamic.datasource.support.DataSourceClassResolver;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import java.lang.reflect.Method;
import lombok.Setter; import lombok.Setter;
import org.aopalliance.intercept.MethodInterceptor; import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation; import org.aopalliance.intercept.MethodInvocation;
import org.springframework.core.annotation.AnnotationUtils; import org.springframework.core.annotation.AnnotationUtils;
import java.lang.reflect.Method;
/** /**
* Core Interceptor of Dynamic Datasource * Core Interceptor of Dynamic Datasource
* *

View File

@ -16,9 +16,10 @@
*/ */
package com.baomidou.dynamic.datasource.aop; package com.baomidou.dynamic.datasource.aop;
import java.util.Map;
import org.springframework.aop.support.JdkRegexpMethodPointcut; import org.springframework.aop.support.JdkRegexpMethodPointcut;
import java.util.Map;
/** /**
* @author TaoYu * @author TaoYu
* @since 2.5.0 * @since 2.5.0

View File

@ -18,11 +18,12 @@ package com.baomidou.dynamic.datasource.creator;
import com.baomidou.dynamic.datasource.exception.ErrorCreateDataSourceException; import com.baomidou.dynamic.datasource.exception.ErrorCreateDataSourceException;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import java.lang.reflect.Method;
import javax.sql.DataSource;
import lombok.Data; import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import javax.sql.DataSource;
import java.lang.reflect.Method;
/** /**
* 基础数据源创建器 * 基础数据源创建器
* *

View File

@ -16,16 +16,17 @@
*/ */
package com.baomidou.dynamic.datasource.creator; package com.baomidou.dynamic.datasource.creator;
import static com.baomidou.dynamic.datasource.support.DdConstants.DRUID_DATASOURCE;
import static com.baomidou.dynamic.datasource.support.DdConstants.HIKARI_DATASOURCE;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import com.baomidou.dynamic.datasource.support.ScriptRunner; import com.baomidou.dynamic.datasource.support.ScriptRunner;
import javax.sql.DataSource;
import lombok.Setter; import lombok.Setter;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import javax.sql.DataSource;
import static com.baomidou.dynamic.datasource.support.DdConstants.DRUID_DATASOURCE;
import static com.baomidou.dynamic.datasource.support.DdConstants.HIKARI_DATASOURCE;
/** /**
* 数据源创建器 * 数据源创建器
* *

View File

@ -27,16 +27,17 @@ import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourcePrope
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidConfig; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidConfig;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidSlf4jConfig; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidSlf4jConfig;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidWallConfigUtil; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidWallConfigUtil;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import javax.sql.DataSource;
import lombok.Data; import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import javax.sql.DataSource;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
/** /**
* Druid数据源创建器 * Druid数据源创建器
* *

View File

@ -20,10 +20,11 @@ import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourcePrope
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari.HikariCpConfig; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari.HikariCpConfig;
import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource; import com.zaxxer.hikari.HikariDataSource;
import javax.sql.DataSource;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import javax.sql.DataSource;
/** /**
* Hikari数据源创建器 * Hikari数据源创建器
* *

View File

@ -16,9 +16,10 @@
*/ */
package com.baomidou.dynamic.datasource.creator; package com.baomidou.dynamic.datasource.creator;
import javax.sql.DataSource;
import org.springframework.jdbc.datasource.lookup.JndiDataSourceLookup; import org.springframework.jdbc.datasource.lookup.JndiDataSourceLookup;
import javax.sql.DataSource;
/** /**
* JNDI数据源创建器 * JNDI数据源创建器
* *

View File

@ -20,21 +20,18 @@ import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSour
import com.baomidou.dynamic.datasource.support.DbHealthIndicator; import com.baomidou.dynamic.datasource.support.DbHealthIndicator;
import com.baomidou.dynamic.datasource.support.DdConstants; import com.baomidou.dynamic.datasource.support.DdConstants;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import java.util.Properties;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.executor.Executor; import org.apache.ibatis.executor.Executor;
import org.apache.ibatis.mapping.MappedStatement; import org.apache.ibatis.mapping.MappedStatement;
import org.apache.ibatis.mapping.SqlCommandType; import org.apache.ibatis.mapping.SqlCommandType;
import org.apache.ibatis.plugin.Interceptor; import org.apache.ibatis.plugin.*;
import org.apache.ibatis.plugin.Intercepts;
import org.apache.ibatis.plugin.Invocation;
import org.apache.ibatis.plugin.Plugin;
import org.apache.ibatis.plugin.Signature;
import org.apache.ibatis.session.ResultHandler; import org.apache.ibatis.session.ResultHandler;
import org.apache.ibatis.session.RowBounds; import org.apache.ibatis.session.RowBounds;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.util.Properties;
/** /**
* Master-slave Separation Plugin with mybatis * Master-slave Separation Plugin with mybatis
* *

View File

@ -16,11 +16,12 @@
*/ */
package com.baomidou.dynamic.datasource.processor; package com.baomidou.dynamic.datasource.processor;
import javax.servlet.http.HttpServletRequest;
import org.aopalliance.intercept.MethodInvocation; import org.aopalliance.intercept.MethodInvocation;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
/** /**
* @author TaoYu * @author TaoYu
* @since 2.5.0 * @since 2.5.0

View File

@ -16,11 +16,12 @@
*/ */
package com.baomidou.dynamic.datasource.processor; package com.baomidou.dynamic.datasource.processor;
import javax.servlet.http.HttpServletRequest;
import org.aopalliance.intercept.MethodInvocation; import org.aopalliance.intercept.MethodInvocation;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
/** /**
* @author TaoYu * @author TaoYu
* @since 2.5.0 * @since 2.5.0

View File

@ -16,7 +16,6 @@
*/ */
package com.baomidou.dynamic.datasource.processor; package com.baomidou.dynamic.datasource.processor;
import java.lang.reflect.Method;
import org.aopalliance.intercept.MethodInvocation; import org.aopalliance.intercept.MethodInvocation;
import org.springframework.context.expression.MethodBasedEvaluationContext; import org.springframework.context.expression.MethodBasedEvaluationContext;
import org.springframework.core.DefaultParameterNameDiscoverer; import org.springframework.core.DefaultParameterNameDiscoverer;
@ -26,6 +25,8 @@ import org.springframework.expression.ExpressionParser;
import org.springframework.expression.ParserContext; import org.springframework.expression.ParserContext;
import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.standard.SpelExpressionParser;
import java.lang.reflect.Method;
/** /**
* @author TaoYu * @author TaoYu
* @since 2.5.0 * @since 2.5.0
@ -40,12 +41,6 @@ public class DsSpelExpressionProcessor extends DsProcessor {
* Express语法解析器 * Express语法解析器
*/ */
private static final ExpressionParser PARSER = new SpelExpressionParser(); private static final ExpressionParser PARSER = new SpelExpressionParser();
@Override
public boolean matches(String key) {
return true;
}
/** /**
* 解析上下文的模板 * 解析上下文的模板
* 对于默认不设置的情况下,从参数中取值的方式 #param1 * 对于默认不设置的情况下,从参数中取值的方式 #param1
@ -54,6 +49,11 @@ public class DsSpelExpressionProcessor extends DsProcessor {
*/ */
private ParserContext parserContext = null; private ParserContext parserContext = null;
@Override
public boolean matches(String key) {
return true;
}
@Override @Override
public String doDetermineDatasource(MethodInvocation invocation, String key) { public String doDetermineDatasource(MethodInvocation invocation, String key) {
Method method = invocation.getMethod(); Method method = invocation.getMethod();

View File

@ -18,12 +18,13 @@ package com.baomidou.dynamic.datasource.provider;
import com.baomidou.dynamic.datasource.creator.DataSourceCreator; import com.baomidou.dynamic.datasource.creator.DataSourceCreator;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import java.util.HashMap;
import java.util.Map;
import javax.sql.DataSource;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import javax.sql.DataSource;
import java.util.HashMap;
import java.util.Map;
@Slf4j @Slf4j
public abstract class AbstractDataSourceProvider implements DynamicDataSourceProvider { public abstract class AbstractDataSourceProvider implements DynamicDataSourceProvider {

View File

@ -17,14 +17,15 @@
package com.baomidou.dynamic.datasource.provider; package com.baomidou.dynamic.datasource.provider;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.support.JdbcUtils;
import javax.sql.DataSource;
import java.sql.Connection; import java.sql.Connection;
import java.sql.DriverManager; import java.sql.DriverManager;
import java.sql.SQLException; import java.sql.SQLException;
import java.sql.Statement; import java.sql.Statement;
import java.util.Map; import java.util.Map;
import javax.sql.DataSource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.support.JdbcUtils;
/** /**
* JDBC数据源提供者(抽象) * JDBC数据源提供者(抽象)

View File

@ -16,8 +16,8 @@
*/ */
package com.baomidou.dynamic.datasource.provider; package com.baomidou.dynamic.datasource.provider;
import java.util.Map;
import javax.sql.DataSource; import javax.sql.DataSource;
import java.util.Map;
/** /**
* 多数据源加载接口默认的实现为从yml信息中加载所有数据源 你可以自己实现从其他地方加载所有数据源 * 多数据源加载接口默认的实现为从yml信息中加载所有数据源 你可以自己实现从其他地方加载所有数据源

View File

@ -17,11 +17,12 @@
package com.baomidou.dynamic.datasource.provider; package com.baomidou.dynamic.datasource.provider;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty;
import java.util.Map;
import javax.sql.DataSource;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import javax.sql.DataSource;
import java.util.Map;
/** /**
* YML数据源提供者 * YML数据源提供者
* *

View File

@ -19,15 +19,16 @@ package com.baomidou.dynamic.datasource.spring.boot.autoconfigure;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidConfig; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidConfig;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari.HikariCpConfig; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari.HikariCpConfig;
import com.baomidou.dynamic.datasource.toolkit.CryptoUtils; import com.baomidou.dynamic.datasource.toolkit.CryptoUtils;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.sql.DataSource;
import lombok.Data; import lombok.Data;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.context.properties.NestedConfigurationProperty; import org.springframework.boot.context.properties.NestedConfigurationProperty;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import javax.sql.DataSource;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/** /**
* @author TaoYu * @author TaoYu
* @since 1.2.0 * @since 1.2.0

View File

@ -29,8 +29,6 @@ import com.baomidou.dynamic.datasource.provider.DynamicDataSourceProvider;
import com.baomidou.dynamic.datasource.provider.YmlDynamicDataSourceProvider; import com.baomidou.dynamic.datasource.provider.YmlDynamicDataSourceProvider;
import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidDynamicDataSourceConfiguration; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.druid.DruidDynamicDataSourceConfiguration;
import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy; import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy;
import java.util.Map;
import javax.sql.DataSource;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.AutoConfigureBefore; import org.springframework.boot.autoconfigure.AutoConfigureBefore;
@ -43,7 +41,9 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import; import org.springframework.context.annotation.Import;
import org.springframework.core.Ordered; import org.springframework.core.Ordered;
import org.springframework.expression.ParserContext;
import javax.sql.DataSource;
import java.util.Map;
/** /**
* 动态数据源核心自动配置类 * 动态数据源核心自动配置类

View File

@ -16,11 +16,7 @@
*/ */
package com.baomidou.dynamic.datasource.spring.boot.autoconfigure; package com.baomidou.dynamic.datasource.spring.boot.autoconfigure;
import com.baomidou.dynamic.datasource.creator.BasicDataSourceCreator; import com.baomidou.dynamic.datasource.creator.*;
import com.baomidou.dynamic.datasource.creator.DataSourceCreator;
import com.baomidou.dynamic.datasource.creator.DruidDataSourceCreator;
import com.baomidou.dynamic.datasource.creator.HikariDataSourceCreator;
import com.baomidou.dynamic.datasource.creator.JndiDataSourceCreator;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;

View File

@ -21,8 +21,6 @@ import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari.HikariCp
import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy; import com.baomidou.dynamic.datasource.strategy.DynamicDataSourceStrategy;
import com.baomidou.dynamic.datasource.strategy.LoadBalanceDynamicDataSourceStrategy; import com.baomidou.dynamic.datasource.strategy.LoadBalanceDynamicDataSourceStrategy;
import com.baomidou.dynamic.datasource.toolkit.CryptoUtils; import com.baomidou.dynamic.datasource.toolkit.CryptoUtils;
import java.util.LinkedHashMap;
import java.util.Map;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -31,6 +29,9 @@ import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.NestedConfigurationProperty; import org.springframework.boot.context.properties.NestedConfigurationProperty;
import org.springframework.core.Ordered; import org.springframework.core.Ordered;
import java.util.LinkedHashMap;
import java.util.Map;
/** /**
* DynamicDataSourceProperties * DynamicDataSourceProperties
* *

View File

@ -16,15 +16,16 @@
*/ */
package com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari; package com.baomidou.dynamic.datasource.spring.boot.autoconfigure.hikari;
import static java.util.concurrent.TimeUnit.MINUTES;
import static java.util.concurrent.TimeUnit.SECONDS;
import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariConfig;
import java.lang.reflect.Field;
import java.util.Properties;
import lombok.Data; import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.lang.reflect.Field;
import java.util.Properties;
import static java.util.concurrent.TimeUnit.MINUTES;
import static java.util.concurrent.TimeUnit.SECONDS;
/** /**
* HikariCp参数配置 * HikariCp参数配置
* *

View File

@ -16,8 +16,8 @@
*/ */
package com.baomidou.dynamic.datasource.strategy; package com.baomidou.dynamic.datasource.strategy;
import java.util.List;
import javax.sql.DataSource; import javax.sql.DataSource;
import java.util.List;
/** /**
* The interface of dynamic datasource switch strategy * The interface of dynamic datasource switch strategy

View File

@ -16,9 +16,9 @@
*/ */
package com.baomidou.dynamic.datasource.strategy; package com.baomidou.dynamic.datasource.strategy;
import javax.sql.DataSource;
import java.util.List; import java.util.List;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import javax.sql.DataSource;
/** /**
* LoadBalance strategy to switch a database * LoadBalance strategy to switch a database

View File

@ -16,9 +16,9 @@
*/ */
package com.baomidou.dynamic.datasource.strategy; package com.baomidou.dynamic.datasource.strategy;
import javax.sql.DataSource;
import java.util.List; import java.util.List;
import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.ThreadLocalRandom;
import javax.sql.DataSource;
/** /**
* Random strategy to switch a database * Random strategy to switch a database

View File

@ -16,11 +16,12 @@
*/ */
package com.baomidou.dynamic.datasource.support; package com.baomidou.dynamic.datasource.support;
import java.lang.reflect.Field;
import java.lang.reflect.Proxy;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.aopalliance.intercept.MethodInvocation; import org.aopalliance.intercept.MethodInvocation;
import java.lang.reflect.Field;
import java.lang.reflect.Proxy;
/** /**
* 获取对mybatis-plus的支持 * 获取对mybatis-plus的支持
* *

View File

@ -17,13 +17,6 @@
package com.baomidou.dynamic.datasource.support; package com.baomidou.dynamic.datasource.support;
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import javax.sql.DataSource;
import org.springframework.boot.actuate.health.AbstractHealthIndicator; import org.springframework.boot.actuate.health.AbstractHealthIndicator;
import org.springframework.boot.actuate.health.Health; import org.springframework.boot.actuate.health.Health;
import org.springframework.dao.support.DataAccessUtils; import org.springframework.dao.support.DataAccessUtils;
@ -32,6 +25,14 @@ import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper; import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.support.JdbcUtils; import org.springframework.jdbc.support.JdbcUtils;
import javax.sql.DataSource;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
/** /**
* 数据库健康状况指标 * 数据库健康状况指标
* *

View File

@ -16,7 +16,6 @@
*/ */
package com.baomidou.dynamic.datasource.support; package com.baomidou.dynamic.datasource.support;
import javax.sql.DataSource;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.ClassPathResource;
@ -24,6 +23,8 @@ import org.springframework.jdbc.datasource.init.DatabasePopulatorUtils;
import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator; import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import javax.sql.DataSource;
/** /**
* @author TaoYu * @author TaoYu
* @since 2020/1/21 * @since 2020/1/21

View File

@ -16,19 +16,11 @@
*/ */
package com.baomidou.dynamic.datasource.toolkit; package com.baomidou.dynamic.datasource.toolkit;
import javax.crypto.Cipher;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.security.InvalidKeyException; import java.security.*;
import java.security.Key;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
import java.security.cert.Certificate; import java.security.cert.Certificate;
import java.security.cert.CertificateFactory; import java.security.cert.CertificateFactory;
import java.security.interfaces.RSAPrivateKey; import java.security.interfaces.RSAPrivateKey;
@ -37,7 +29,6 @@ import java.security.spec.PKCS8EncodedKeySpec;
import java.security.spec.RSAPrivateKeySpec; import java.security.spec.RSAPrivateKeySpec;
import java.security.spec.RSAPublicKeySpec; import java.security.spec.RSAPublicKeySpec;
import java.security.spec.X509EncodedKeySpec; import java.security.spec.X509EncodedKeySpec;
import javax.crypto.Cipher;
/** /**
* Copy from Druid * Copy from Druid

View File

@ -16,11 +16,12 @@
*/ */
package com.baomidou.dynamic.datasource.toolkit; package com.baomidou.dynamic.datasource.toolkit;
import java.util.ArrayDeque;
import java.util.Deque;
import org.springframework.core.NamedThreadLocal; import org.springframework.core.NamedThreadLocal;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.util.ArrayDeque;
import java.util.Deque;
/** /**
* 核心基于ThreadLocal的切换数据源工具类 * 核心基于ThreadLocal的切换数据源工具类
* *