From a1ff33d35a25d3ff7ea579657609a557c5a0b2f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B7=E8=B0=83?= <3084898776@qq.com> Date: Wed, 21 Aug 2024 08:25:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9F=A5=E8=AF=A2=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=BA=90=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/inspectionProfiles/Project_Default.xml | 55 +++++++++++++++++++ .../com/muyu/source/domain/DataSource.java | 19 ++++++- .../muyu/source/config/MybatisPlusConfig.java | 45 +++++++++++++++ .../controller/DataSourceController.java | 41 +++++++++++++- .../muyu/source/mapper/DataSourceMapper.java | 17 ++++++ .../source/service/DataSourceService.java | 20 +++++++ .../service/Impl/DataSourceServiceImpl.java | 26 +++++++++ .../src/main/resources/bootstrap.yml | 10 +++- 8 files changed, 226 insertions(+), 7 deletions(-) create mode 100644 muyu-source-server/src/main/java/com/muyu/source/config/MybatisPlusConfig.java create mode 100644 muyu-source-server/src/main/java/com/muyu/source/mapper/DataSourceMapper.java create mode 100644 muyu-source-server/src/main/java/com/muyu/source/service/DataSourceService.java create mode 100644 muyu-source-server/src/main/java/com/muyu/source/service/Impl/DataSourceServiceImpl.java diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index 8d66637..56d11c3 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -1,5 +1,60 @@ \ No newline at end of file diff --git a/muyu-source-common/src/main/java/com/muyu/source/domain/DataSource.java b/muyu-source-common/src/main/java/com/muyu/source/domain/DataSource.java index 3c330cf..5fa7fbd 100644 --- a/muyu-source-common/src/main/java/com/muyu/source/domain/DataSource.java +++ b/muyu-source-common/src/main/java/com/muyu/source/domain/DataSource.java @@ -1,6 +1,7 @@ package com.muyu.source.domain; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.muyu.common.core.annotation.Excel; @@ -21,12 +22,10 @@ import lombok.experimental.SuperBuilder; */ @Data -@SuperBuilder @NoArgsConstructor @AllArgsConstructor @TableName(value = "data_source",autoResultMap = true) -@EqualsAndHashCode(callSuper = true) -public class DataSource extends BaseEntity { +public class DataSource { /** * 主键 */ @@ -37,83 +36,97 @@ public class DataSource extends BaseEntity { * 接入源名称 */ @Excel(name = "接入源名称") + @TableField ("name") private String name; /** * 数据来源系统名称 */ @Excel(name = "数据来源系统名称") + @TableField ("system_name") private String systemName; /** * 数据库类型 */ @Excel(name = "数据库类型") + @TableField("data_type") private String dataType; /** * ip地址 */ @Excel(name = "ip地址") + @TableField("ip") private String ip; /** * 端口号 */ @Excel(name = "端口号") + @TableField("port") private String port; /** * 数据库名称 */ @Excel(name = "数据库名称") + @TableField("database_name") private String databaseName; /** * 用户名 */ @Excel(name = "用户名") + @TableField("user_name") private String userName; /** * 密码 */ @Excel(name = "密码") + @TableField("password") private String password; /** * 数据连接参数 */ @Excel(name = "数据连接参数") + @TableField("connection_param") private String connectionParam; /** * 是否初始化 状态 'Y'/'N' */ @Excel(name = "是否初始化") + @TableField("is_init") private String isInit; /** * 初始化连接数量 */ @Excel(name = "初始连接数量") + @TableField("init_total") private Long initNum; /** * 最大连接数量 */ @Excel(name = "最大连接数量") + @TableField("max_num") private Long maxNum; /** * 最大等待时间 */ @Excel(name = "最大等待时间") + @TableField("max_wait_time") private Long maxWaitTime; /** * 最大等待次数 */ @Excel(name = "最大等待次数") + @TableField("max_wait_size") private Long maxWaitSize; diff --git a/muyu-source-server/src/main/java/com/muyu/source/config/MybatisPlusConfig.java b/muyu-source-server/src/main/java/com/muyu/source/config/MybatisPlusConfig.java new file mode 100644 index 0000000..2d701ac --- /dev/null +++ b/muyu-source-server/src/main/java/com/muyu/source/config/MybatisPlusConfig.java @@ -0,0 +1,45 @@ +package com.muyu.source.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; + +/** + * @ Tool:IntelliJ IDEA + * @ Author:CHX + * @ Date:2024-08-20-22:36 + * @ Version:1.0 + * @ Description:Mybatis Plus 配置 + * @author Lenovo + */ +public class MybatisPlusConfig { + // 配置分页插件 + @Bean + public PaginationInnerInterceptor paginationInnerInterceptor() { + PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor(); + // 设置数据库类型为mysql + paginationInnerInterceptor.setDbType(DbType.MYSQL); + // 设置最大单页限制数量,默认 500 条,-1 不受限制 + paginationInnerInterceptor.setMaxLimit(-1L); + return paginationInnerInterceptor; + } + @Bean + /** + * 乐观锁插件 https://baomidou.com/guide/interceptor-optimistic-locker.html + */ + public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() + { + return new OptimisticLockerInnerInterceptor(); + } + @Bean + /** + * 如果是对全表的删除或更新操作,就会终止该操作 https://baomidou.com/guide/interceptor-block-attack.html + */ + public BlockAttackInnerInterceptor blockAttackInnerInterceptor() + { + return new BlockAttackInnerInterceptor(); + } + +} diff --git a/muyu-source-server/src/main/java/com/muyu/source/controller/DataSourceController.java b/muyu-source-server/src/main/java/com/muyu/source/controller/DataSourceController.java index 471d560..acd9f8b 100644 --- a/muyu-source-server/src/main/java/com/muyu/source/controller/DataSourceController.java +++ b/muyu-source-server/src/main/java/com/muyu/source/controller/DataSourceController.java @@ -1,8 +1,18 @@ package com.muyu.source.controller; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.conditions.update.UpdateChainWrapper; +import com.dtflys.forest.annotation.Post; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.web.controller.BaseController; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.muyu.source.domain.DataSource; +import com.muyu.source.service.DataSourceService; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * @ Tool:IntelliJ IDEA @@ -12,8 +22,33 @@ import org.springframework.web.bind.annotation.RestController; * @ Description:数据源控制层 * @author Lenovo */ +@Log4j2 @RestController -@RequestMapping("/data_source") +@RequestMapping("/dataSource") +@Tag(name = "数据源控制层",description = "进行数据源管理,查看等相关操作") public class DataSourceController extends BaseController { + /** + * 数据源业务层 + */ + @Autowired + private DataSourceService dataSourceService; + + /** + * 查询数据源的全部数据 + * @return + */ + @GetMapping("/list") + public Result> list(){ + List list =dataSourceService.list(); + return Result.success(list); + } + @PutMapping("/update") + public Result update(@RequestBody DataSource dataSource){ + UpdateChainWrapper update = dataSourceService.update(); + return Result.success(); + } + + + } diff --git a/muyu-source-server/src/main/java/com/muyu/source/mapper/DataSourceMapper.java b/muyu-source-server/src/main/java/com/muyu/source/mapper/DataSourceMapper.java new file mode 100644 index 0000000..d95ef2e --- /dev/null +++ b/muyu-source-server/src/main/java/com/muyu/source/mapper/DataSourceMapper.java @@ -0,0 +1,17 @@ +package com.muyu.source.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.source.domain.DataSource; +import org.apache.ibatis.annotations.Mapper; + +/** + * @ Tool:IntelliJ IDEA + * @ Author:CHX + * @ Date:2024-08-20-20:03 + * @ Version:1.0 + * @ Description:数据源持久层 + * @author Lenovo + */ +@Mapper +public interface DataSourceMapper extends BaseMapper { +} diff --git a/muyu-source-server/src/main/java/com/muyu/source/service/DataSourceService.java b/muyu-source-server/src/main/java/com/muyu/source/service/DataSourceService.java new file mode 100644 index 0000000..9c6e149 --- /dev/null +++ b/muyu-source-server/src/main/java/com/muyu/source/service/DataSourceService.java @@ -0,0 +1,20 @@ +package com.muyu.source.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.source.domain.DataSource; + +import java.util.List; + +/** + * @ Tool:IntelliJ IDEA + * @ Author:CHX + * @ Date:2024-08-20-20:06 + * @ Version:1.0 + * @ Description:数据源业务层 + * @author Lenovo + */ +public interface DataSourceService extends IService { + + + +} diff --git a/muyu-source-server/src/main/java/com/muyu/source/service/Impl/DataSourceServiceImpl.java b/muyu-source-server/src/main/java/com/muyu/source/service/Impl/DataSourceServiceImpl.java new file mode 100644 index 0000000..2305b18 --- /dev/null +++ b/muyu-source-server/src/main/java/com/muyu/source/service/Impl/DataSourceServiceImpl.java @@ -0,0 +1,26 @@ +package com.muyu.source.service.Impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.source.domain.DataSource; +import com.muyu.source.mapper.DataSourceMapper; +import com.muyu.source.service.DataSourceService; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @ Tool:IntelliJ IDEA + * @ Author:CHX + * @ Date:2024-08-20-20:06 + * @ Version:1.0 + * @ Description:数据源业务层 + * @author Lenovo + */ +@Service +public class DataSourceServiceImpl extends ServiceImpl implements DataSourceService { + + +} + diff --git a/muyu-source-server/src/main/resources/bootstrap.yml b/muyu-source-server/src/main/resources/bootstrap.yml index 9573a66..fb36461 100644 --- a/muyu-source-server/src/main/resources/bootstrap.yml +++ b/muyu-source-server/src/main/resources/bootstrap.yml @@ -52,4 +52,12 @@ spring: - application-xxl-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} # rabbit 配置文件 - application-rabbit-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - +#mybatis-plus 配置 +mybatis-plus: + #xml文件位置 + mapper-locations: classpath:mapper/*.xml + configuration: + #控制台打印信息 + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + #驼峰配置 + map-underscore-to-camel-case: true