pom.xml
@@ -34,6 +34,8 @@ <poi.version>4.1.2</poi.version> <springdoc.version>1.6.9</springdoc.version> <transmittable-thread-local.version>2.14.4</transmittable-thread-local.version> <mybatis-plus.version>3.5.4</mybatis-plus.version> <hutool.version>5.0.3</hutool.version> <!-- override dependency version --> <tomcat.version>9.0.96</tomcat.version> @@ -102,6 +104,33 @@ </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.13</version> <!-- 使用与 MyBatis-Plus 兼容的版本 --> </dependency> <!-- mybatis-plus 增强CRUD --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatis-plus.version}</version> </dependency> <!-- hutool 的依赖配置--> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>${hutool.version}</version> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.24</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>${tomcat.version}</version> ruoyi-common/ruoyi-common-core/pom.xml
@@ -107,6 +107,35 @@ <artifactId>javax.servlet-api</artifactId> </dependency> <!-- Pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> </exclusion> <exclusion> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-autoconfigure</artifactId> </exclusion> </exclusions> </dependency> <!-- mybatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> </dependency> <!-- hutool 的依赖配置--> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> </dependency> </dependencies> </project> ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/MyMetaObjectHandler.java
New file @@ -0,0 +1,14 @@ package com.ruoyi.common.core.config; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import org.apache.ibatis.reflection.MetaObject; public class MyMetaObjectHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { } @Override public void updateFill(MetaObject metaObject) { } } ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/MybatisPlusConfig.java
New file @@ -0,0 +1,83 @@ package com.ruoyi.common.core.config; import cn.hutool.core.net.NetUtil; import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; import com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.transaction.annotation.EnableTransactionManagement; /** * Mybatis Plus 配置 * * @author lfl */ @EnableTransactionManagement(proxyTargetClass = true) @Configuration public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); // 分页插件 interceptor.addInnerInterceptor(paginationInnerInterceptor()); // 乐观锁插件 interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor()); return interceptor; } /** * 分页插件,自动识别数据库类型 */ public PaginationInnerInterceptor paginationInnerInterceptor() { PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor(); // 设置最大单页限制数量,默认 500 条,-1 不受限制 paginationInnerInterceptor.setMaxLimit(-1L); // 分页合理化 paginationInnerInterceptor.setOverflow(true); return paginationInnerInterceptor; } /** * 乐观锁插件 */ public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() { return new OptimisticLockerInnerInterceptor(); } // @Bean // public VersionInterceptor versionInterceptor() { // return new VersionInterceptor(); // } /** * Map下划线自动转驼峰 */ @Bean public ConfigurationCustomizer configurationCustomizer() { return configuration -> configuration.setObjectWrapperFactory(new MybatisMapWrapperFactory()); } /** * 元对象字段填充控制器 */ @Bean public MetaObjectHandler metaObjectHandler() { return new MyMetaObjectHandler(); } /** * 使用网卡信息绑定雪花生成器 * 防止集群雪花ID重复 */ @Bean public IdentifierGenerator idGenerator() { return new DefaultIdentifierGenerator(NetUtil.getLocalhost()); } } ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1 +1,3 @@ com.ruoyi.common.core.utils.SpringUtils com.ruoyi.common.core.config.MybatisPlusConfig ruoyi-gateway/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@ # Tomcat server: port: 8080 port: 9000 # Spring spring: ruoyi-modules/ruoyi-company/pom.xml
@@ -45,17 +45,31 @@ <artifactId>mysql-connector-j</artifactId> </dependency> <!-- Pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.4.6</version> <!-- 使用最新版本 --> </dependency> <!-- mybatis-plus 增强CRUD --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <!-- RuoYi Common DataSource --> <dependency> <groupId>com.ruoyi</groupId> <artifactId>ruoyi-common-datasource</artifactId> </dependency> <!-- RuoYi Common DataScope --> <dependency> <groupId>com.ruoyi</groupId> <artifactId>ruoyi-common-datascope</artifactId> </dependency> <!-- RuoYi Common Log --> <dependency> ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/controller/UserController.java
New file @@ -0,0 +1,9 @@ package com.ruoyi.company.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/user") public class UserController { } ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/domain/User.java
New file @@ -0,0 +1,30 @@ package com.ruoyi.company.domain; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.time.LocalDateTime; @TableName("t_user") @Data public class User { @TableId private Long userId; private String accountName; private String password; private String phone; private Integer status; private LocalDateTime createTime; private LocalDateTime updateTime; @TableLogic private Boolean isDelete; } ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/mapper/UserMapper.java
New file @@ -0,0 +1,7 @@ package com.ruoyi.company.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.company.domain.User; public interface UserMapper extends BaseMapper<User> { } ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/UserService.java
New file @@ -0,0 +1,7 @@ package com.ruoyi.company.service; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.company.domain.User; public interface UserService extends IService<User> { } ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/impl/UserServiceImpl.java
New file @@ -0,0 +1,11 @@ package com.ruoyi.company.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.company.domain.User; import com.ruoyi.company.mapper.UserMapper; import com.ruoyi.company.service.UserService; import org.springframework.stereotype.Service; @Service public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService { } ruoyi-modules/ruoyi-company/src/main/resources/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
New file @@ -0,0 +1,3 @@ com.ruoyi.common.core.utils.SpringUtils com.ruoyi.common.core.config.MybatisPlusConfig