升级springboot到3.0.1

This commit is contained in:
阿沐 2023-01-18 00:04:56 +08:00
parent 8210b1f1ca
commit a097dc5e9d
59 changed files with 449 additions and 567 deletions

View File

@ -13,7 +13,7 @@
<dependency> <dependency>
<groupId>net.maku</groupId> <groupId>net.maku</groupId>
<artifactId>maku-generator-boot-starter</artifactId> <artifactId>maku-generator-boot-starter</artifactId>
<version>2.1.0</version> <version>3.0.1</version>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@ -13,7 +13,7 @@ import ${package}.${moduleName}.vo.${ClassName}VO;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid; import jakarta.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,6 +2,7 @@ package net.maku.message.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -10,15 +11,13 @@ import net.maku.message.entity.SmsLogEntity;
import net.maku.message.query.SmsLogQuery; import net.maku.message.query.SmsLogQuery;
import net.maku.message.service.SmsLogService; import net.maku.message.service.SmsLogService;
import net.maku.message.vo.SmsLogVO; import net.maku.message.vo.SmsLogVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
/** /**
* 短信日志 * 短信日志
* *

View File

@ -2,6 +2,7 @@ package net.maku.message.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.ExceptionUtils; import net.maku.framework.common.utils.ExceptionUtils;
@ -16,11 +17,10 @@ import net.maku.message.sms.service.SmsService;
import net.maku.message.vo.SmsPlatformVO; import net.maku.message.vo.SmsPlatformVO;
import net.maku.message.vo.SmsSendVO; import net.maku.message.vo.SmsSendVO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;

View File

@ -16,19 +16,9 @@
<version>${revision}</version> <version>${revision}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.7.7</version>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.7.7</version>
</dependency>
<dependency>
<groupId>com.github.oshi</groupId> <groupId>com.github.oshi</groupId>
<artifactId>oshi-core</artifactId> <artifactId>oshi-core</artifactId>
<version>6.3.2</version> <version>6.4.0</version>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@ -1,10 +0,0 @@
package net.maku.monitor.config;
import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.context.annotation.Configuration;
@Configuration(proxyBeanMethods = false)
@EnableAdminServer
public class AdminServerConfiguration {
}

View File

@ -1,5 +1,6 @@
package net.maku.monitor.controller; package net.maku.monitor.controller;
import jakarta.annotation.Resource;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
import net.maku.monitor.vo.Cache; import net.maku.monitor.vo.Cache;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@ -9,7 +10,6 @@ import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.*; import java.util.*;
/** /**

View File

@ -59,12 +59,12 @@ public class Server {
this.jvm = new Jvm(); this.jvm = new Jvm();
this.sys = new Sys(); this.sys = new Sys();
this.setDiskList(); this.setDiskList();
log.info("Server Info => {}", this); log.debug("Server Info => {}", this);
} }
public Server(Disk disk) { public Server(Disk disk) {
this.setDiskList(); this.setDiskList();
log.info("Server Info => {}", this); log.debug("Server Info => {}", this);
} }
/** /**

View File

@ -1,3 +0,0 @@
auth:
ignore_urls:
- /monitor/admin/**

View File

@ -4,6 +4,7 @@ import cn.hutool.core.util.ArrayUtil;
import cn.hutool.extra.spring.SpringUtil; import cn.hutool.extra.spring.SpringUtil;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.exception.ServerException; import net.maku.framework.common.exception.ServerException;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
@ -14,12 +15,11 @@ import net.maku.quartz.query.ScheduleJobQuery;
import net.maku.quartz.service.ScheduleJobService; import net.maku.quartz.service.ScheduleJobService;
import net.maku.quartz.utils.CronUtils; import net.maku.quartz.utils.CronUtils;
import net.maku.quartz.vo.ScheduleJobVO; import net.maku.quartz.vo.ScheduleJobVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,6 +2,7 @@ package net.maku.quartz.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -10,15 +11,13 @@ import net.maku.quartz.entity.ScheduleJobLogEntity;
import net.maku.quartz.query.ScheduleJobLogQuery; import net.maku.quartz.query.ScheduleJobLogQuery;
import net.maku.quartz.service.ScheduleJobLogService; import net.maku.quartz.service.ScheduleJobLogService;
import net.maku.quartz.vo.ScheduleJobLogVO; import net.maku.quartz.vo.ScheduleJobLogVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
/** /**
* 定时任务日志 * 定时任务日志
* *

View File

@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import jakarta.annotation.PostConstruct;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.service.impl.BaseServiceImpl; import net.maku.framework.common.service.impl.BaseServiceImpl;
@ -20,7 +21,6 @@ import org.quartz.SchedulerException;
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.PostConstruct;
import java.util.List; import java.util.List;
/** /**

View File

@ -1,5 +1,6 @@
package net.maku.storage.config; package net.maku.storage.config;
import jakarta.annotation.Resource;
import net.maku.storage.enums.StorageTypeEnum; import net.maku.storage.enums.StorageTypeEnum;
import net.maku.storage.properties.LocalStorageProperties; import net.maku.storage.properties.LocalStorageProperties;
import net.maku.storage.properties.StorageProperties; import net.maku.storage.properties.StorageProperties;
@ -8,8 +9,6 @@ import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import javax.annotation.Resource;
/** /**
* 本地资源映射配置 * 本地资源映射配置
* *

View File

@ -2,17 +2,17 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
import net.maku.system.query.SysAttachmentQuery; import net.maku.system.query.SysAttachmentQuery;
import net.maku.system.service.SysAttachmentService; import net.maku.system.service.SysAttachmentService;
import net.maku.system.vo.SysAttachmentVO; import net.maku.system.vo.SysAttachmentVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletRequest;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
import net.maku.framework.security.utils.TokenUtils; import net.maku.framework.security.utils.TokenUtils;
@ -13,8 +14,6 @@ import net.maku.system.vo.SysMobileLoginVO;
import net.maku.system.vo.SysTokenVO; import net.maku.system.vo.SysTokenVO;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
/** /**
* 认证管理 * 认证管理
* *

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -10,11 +11,10 @@ import net.maku.system.entity.SysDictDataEntity;
import net.maku.system.query.SysDictDataQuery; import net.maku.system.query.SysDictDataQuery;
import net.maku.system.service.SysDictDataService; import net.maku.system.service.SysDictDataService;
import net.maku.system.vo.SysDictDataVO; import net.maku.system.vo.SysDictDataVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -11,11 +12,10 @@ import net.maku.system.query.SysDictTypeQuery;
import net.maku.system.service.SysDictTypeService; import net.maku.system.service.SysDictTypeService;
import net.maku.system.vo.SysDictTypeVO; import net.maku.system.vo.SysDictTypeVO;
import net.maku.system.vo.SysDictVO; import net.maku.system.vo.SysDictVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,20 +2,19 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
import net.maku.system.query.SysLogLoginQuery; import net.maku.system.query.SysLogLoginQuery;
import net.maku.system.service.SysLogLoginService; import net.maku.system.service.SysLogLoginService;
import net.maku.system.vo.SysLogLoginVO; import net.maku.system.vo.SysLogLoginVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
/** /**
* 登录日志 * 登录日志
* *

View File

@ -3,6 +3,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.constant.Constant; import net.maku.framework.common.constant.Constant;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -16,7 +17,6 @@ import net.maku.system.vo.SysMenuVO;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.constant.Constant; import net.maku.framework.common.constant.Constant;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -12,7 +13,6 @@ import net.maku.system.vo.SysOrgVO;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -10,11 +11,10 @@ import net.maku.system.entity.SysParamsEntity;
import net.maku.system.query.SysParamsQuery; import net.maku.system.query.SysParamsQuery;
import net.maku.system.service.SysParamsService; import net.maku.system.service.SysParamsService;
import net.maku.system.vo.SysParamsVO; import net.maku.system.vo.SysParamsVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -10,11 +11,10 @@ import net.maku.system.entity.SysPostEntity;
import net.maku.system.query.SysPostQuery; import net.maku.system.query.SysPostQuery;
import net.maku.system.service.SysPostService; import net.maku.system.service.SysPostService;
import net.maku.system.vo.SysPostVO; import net.maku.system.vo.SysPostVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;

View File

@ -2,6 +2,7 @@ package net.maku.system.controller;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -16,11 +17,10 @@ import net.maku.system.vo.SysMenuVO;
import net.maku.system.vo.SysRoleDataScopeVO; import net.maku.system.vo.SysRoleDataScopeVO;
import net.maku.system.vo.SysRoleVO; import net.maku.system.vo.SysRoleVO;
import net.maku.system.vo.SysUserVO; import net.maku.system.vo.SysUserVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**

View File

@ -3,6 +3,7 @@ package net.maku.system.controller;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
import net.maku.framework.common.utils.Result; import net.maku.framework.common.utils.Result;
@ -16,13 +17,12 @@ import net.maku.system.service.SysUserRoleService;
import net.maku.system.service.SysUserService; import net.maku.system.service.SysUserService;
import net.maku.system.vo.SysUserPasswordVO; import net.maku.system.vo.SysUserPasswordVO;
import net.maku.system.vo.SysUserVO; import net.maku.system.vo.SysUserVO;
import org.springdoc.api.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.validation.Valid;
import java.util.List; import java.util.List;

View File

@ -1,12 +1,11 @@
package net.maku.system.query; package net.maku.system.query;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import net.maku.framework.common.query.Query; import net.maku.framework.common.query.Query;
import javax.validation.constraints.NotNull;
/** /**
* 字典数据 * 字典数据
* *

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.fhs.trans.service.impl.TransService; import com.fhs.trans.service.impl.TransService;
import jakarta.servlet.http.HttpServletRequest;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.SneakyThrows; import lombok.SneakyThrows;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
@ -19,7 +20,6 @@ import net.maku.system.vo.SysLogLoginVO;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;

View File

@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import jakarta.annotation.PostConstruct;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.common.exception.ServerException; import net.maku.framework.common.exception.ServerException;
import net.maku.framework.common.page.PageResult; import net.maku.framework.common.page.PageResult;
@ -19,7 +20,6 @@ import net.maku.system.vo.SysParamsVO;
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.PostConstruct;
import java.util.List; import java.util.List;
/** /**

View File

@ -2,12 +2,12 @@ package net.maku.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;

View File

@ -2,11 +2,11 @@ package net.maku.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;

View File

@ -2,10 +2,6 @@ package net.maku.system.vo;
import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.metadata.GlobalConfiguration;
import com.alibaba.excel.metadata.data.WriteCellData;
import com.alibaba.excel.metadata.property.ExcelContentProperty;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.fhs.core.trans.anno.Trans; import com.fhs.core.trans.anno.Trans;
import com.fhs.core.trans.constant.TransType; import com.fhs.core.trans.constant.TransType;

View File

@ -2,14 +2,14 @@ package net.maku.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import net.maku.framework.common.utils.TreeNode; import net.maku.framework.common.utils.TreeNode;
import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.Range;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.util.Date; import java.util.Date;
/** /**

View File

@ -2,13 +2,13 @@ package net.maku.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import net.maku.framework.common.utils.TreeNode; import net.maku.framework.common.utils.TreeNode;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.util.Date; import java.util.Date;
/** /**

View File

@ -2,12 +2,12 @@ package net.maku.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.Range;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;

View File

@ -1,9 +1,9 @@
package net.maku.system.vo; package net.maku.system.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.util.List; import java.util.List;

View File

@ -2,10 +2,10 @@ package net.maku.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;

View File

@ -1,10 +1,10 @@
package net.maku.system.vo; package net.maku.system.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
/** /**

View File

@ -6,14 +6,14 @@ import com.fhs.core.trans.anno.Trans;
import com.fhs.core.trans.constant.TransType; import com.fhs.core.trans.constant.TransType;
import com.fhs.core.trans.vo.TransPojo; import com.fhs.core.trans.vo.TransPojo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import net.maku.framework.common.utils.DateUtils; import net.maku.framework.common.utils.DateUtils;
import net.maku.system.entity.SysOrgEntity; import net.maku.system.entity.SysOrgEntity;
import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.Range;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;

View File

@ -15,6 +15,11 @@
<artifactId>spring-boot-starter-web</artifactId> <artifactId>spring-boot-starter-web</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId> <artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional> <optional>true</optional>
@ -24,6 +29,10 @@
<artifactId>spring-boot-starter-validation</artifactId> <artifactId>spring-boot-starter-validation</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
@ -53,10 +62,6 @@
<artifactId>mybatis-plus-boot-starter</artifactId> <artifactId>mybatis-plus-boot-starter</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
</dependency>
<dependency>
<groupId>cn.hutool</groupId> <groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId> <artifactId>hutool-all</artifactId>
</dependency> </dependency>

View File

@ -1,10 +1,10 @@
package net.maku.framework.common.cache; package net.maku.framework.common.cache;
import jakarta.annotation.Resource;
import org.springframework.data.redis.core.HashOperations; import org.springframework.data.redis.core.HashOperations;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Collection; import java.util.Collection;
import java.util.Map; import java.util.Map;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;

View File

@ -1,12 +1,11 @@
package net.maku.framework.common.query; package net.maku.framework.common.query;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.Range;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
/** /**
* 查询公共参数 * 查询公共参数
* *

View File

@ -12,13 +12,13 @@ import com.fhs.core.trans.constant.TransType;
import com.fhs.core.trans.util.ReflectUtils; import com.fhs.core.trans.util.ReflectUtils;
import com.fhs.core.trans.vo.TransPojo; import com.fhs.core.trans.vo.TransPojo;
import com.fhs.trans.service.impl.DictionaryTransService; import com.fhs.trans.service.impl.DictionaryTransService;
import jakarta.servlet.http.HttpServletResponse;
import lombok.SneakyThrows; import lombok.SneakyThrows;
import net.maku.framework.common.excel.ExcelDataListener; import net.maku.framework.common.excel.ExcelDataListener;
import net.maku.framework.common.excel.ExcelFinishCallBack; import net.maku.framework.common.excel.ExcelFinishCallBack;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;

View File

@ -1,13 +1,13 @@
package net.maku.framework.common.utils; package net.maku.framework.common.utils;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestAttributes;
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;
import javax.servlet.http.HttpServletResponse;
import java.util.Enumeration; import java.util.Enumeration;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;

View File

@ -1,6 +1,7 @@
package net.maku.framework.common.utils; package net.maku.framework.common.utils;
import javax.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import java.net.InetAddress; import java.net.InetAddress;
import java.net.UnknownHostException; import java.net.UnknownHostException;

View File

@ -1,9 +1,9 @@
package net.maku.framework.common.utils; package net.maku.framework.common.utils;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;

View File

@ -1,13 +1,13 @@
package net.maku.framework.common.xss; package net.maku.framework.common.xss;
import jakarta.servlet.FilterChain;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.util.PathMatcher; import org.springframework.util.PathMatcher;
import org.springframework.web.filter.OncePerRequestFilter; import org.springframework.web.filter.OncePerRequestFilter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
/** /**

View File

@ -2,12 +2,12 @@ package net.maku.framework.common.xss;
import cn.hutool.core.io.IoUtil; import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import jakarta.servlet.ReadListener;
import jakarta.servlet.ServletInputStream;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequestWrapper;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException; import java.io.IOException;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;

View File

@ -21,12 +21,11 @@ public class RedisConfig {
@Bean @Bean
public Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer(){ public Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer(){
Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(Object.class);
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL); objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(objectMapper, Object.class);
return jackson2JsonRedisSerializer; return jackson2JsonRedisSerializer;
} }

View File

@ -4,7 +4,7 @@ import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Contact; import io.swagger.v3.oas.models.info.Contact;
import io.swagger.v3.oas.models.info.Info; import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License; import io.swagger.v3.oas.models.info.License;
import org.springdoc.core.GroupedOpenApi; import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;

View File

@ -14,9 +14,10 @@ import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.authentication.DefaultAuthenticationEventPublisher; import org.springframework.security.authentication.DefaultAuthenticationEventPublisher;
import org.springframework.security.authentication.ProviderManager; import org.springframework.security.authentication.ProviderManager;
import org.springframework.security.authentication.dao.DaoAuthenticationProvider; import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;
import org.springframework.security.config.http.SessionCreationPolicy; import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder;
@ -35,7 +36,7 @@ import java.util.List;
@Configuration @Configuration
@AllArgsConstructor @AllArgsConstructor
@EnableWebSecurity @EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true) @EnableMethodSecurity
public class SecurityConfig { public class SecurityConfig {
private final OncePerRequestFilter authenticationTokenFilter; private final OncePerRequestFilter authenticationTokenFilter;
private final PermitResource permitResource; private final PermitResource permitResource;
@ -80,13 +81,14 @@ public class SecurityConfig {
http http
.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class) .addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class)
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS) .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and().authorizeRequests() .and().authorizeHttpRequests(auth -> auth
.antMatchers(permits).permitAll() .requestMatchers(permits).permitAll()
.antMatchers(HttpMethod.OPTIONS).permitAll() .requestMatchers(HttpMethod.OPTIONS).permitAll()
.anyRequest().authenticated() .anyRequest().authenticated()
.and().exceptionHandling().authenticationEntryPoint(new SecurityAuthenticationEntryPoint()) )
.exceptionHandling().authenticationEntryPoint(new SecurityAuthenticationEntryPoint())
.and().headers().frameOptions().disable() .and().headers().frameOptions().disable()
.and().csrf().disable() .and().csrf(AbstractHttpConfigurer::disable)
; ;
return http.build(); return http.build();

View File

@ -1,5 +1,7 @@
package net.maku.framework.security.exception; package net.maku.framework.security.exception;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import net.maku.framework.common.exception.ErrorCode; import net.maku.framework.common.exception.ErrorCode;
import net.maku.framework.common.utils.HttpContextUtils; import net.maku.framework.common.utils.HttpContextUtils;
import net.maku.framework.common.utils.JsonUtils; import net.maku.framework.common.utils.JsonUtils;
@ -7,8 +9,6 @@ import net.maku.framework.common.utils.Result;
import org.springframework.security.core.AuthenticationException; import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.AuthenticationEntryPoint; import org.springframework.security.web.AuthenticationEntryPoint;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
/** /**

View File

@ -1,5 +1,9 @@
package net.maku.framework.security.filter; package net.maku.framework.security.filter;
import jakarta.servlet.FilterChain;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import net.maku.framework.security.cache.TokenStoreCache; import net.maku.framework.security.cache.TokenStoreCache;
import net.maku.framework.security.user.UserDetail; import net.maku.framework.security.user.UserDetail;
@ -12,10 +16,6 @@ import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter; import org.springframework.web.filter.OncePerRequestFilter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
/** /**

View File

@ -1,9 +1,8 @@
package net.maku.framework.security.utils; package net.maku.framework.security.utils;
import cn.hutool.core.lang.UUID; import cn.hutool.core.lang.UUID;
import org.apache.commons.lang3.StringUtils; import cn.hutool.core.util.StrUtil;
import jakarta.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequest;
/** /**
* Token 工具类 * Token 工具类
@ -24,7 +23,7 @@ public class TokenUtils {
*/ */
public static String getAccessToken(HttpServletRequest request) { public static String getAccessToken(HttpServletRequest request) {
String accessToken = request.getHeader("Authorization"); String accessToken = request.getHeader("Authorization");
if (StringUtils.isBlank(accessToken)) { if (StrUtil.isBlank(accessToken)) {
accessToken = request.getParameter("access_token"); accessToken = request.getParameter("access_token");
} }

View File

@ -41,14 +41,15 @@
<version>${revision}</version> <version>${revision}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<artifactId>okio</artifactId>
<groupId>com.squareup.okio</groupId>
<version>3.3.0</version>
</dependency>
</dependencies> </dependencies>
<build> <build>

View File

@ -1,4 +1,5 @@
spring: spring:
data:
redis: redis:
database: 1 database: 1
host: localhost host: localhost
@ -30,26 +31,3 @@ spring:
max-lifetime: 1800000 # 连接的生命时长毫秒超时而且没被使用则被释放retired默认 30 分钟 max-lifetime: 1800000 # 连接的生命时长毫秒超时而且没被使用则被释放retired默认 30 分钟
connection-test-query: SELECT 1 connection-test-query: SELECT 1
pool-name: MakuHikariCP pool-name: MakuHikariCP
--- ############ 监控相关配置
# Actuator 配置
management:
endpoints:
web:
base-path: /actuator
exposure:
include: '*'
# Spring Boot Admin 配置
spring:
boot:
admin:
# Spring Boot Admin Server 服务端地址
context-path: /monitor/admin
client:
# 指定 Spring Boot Admin Server 服务端地址
url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path}
instance:
service-host-type: IP

View File

@ -1,4 +1,5 @@
spring: spring:
data:
redis: redis:
database: 1 database: 1
host: localhost host: localhost
@ -20,26 +21,3 @@ spring:
max-lifetime: 1800000 # 连接的生命时长毫秒超时而且没被使用则被释放retired默认 30 分钟 max-lifetime: 1800000 # 连接的生命时长毫秒超时而且没被使用则被释放retired默认 30 分钟
connection-test-query: SELECT 1 connection-test-query: SELECT 1
pool-name: MakuHikariCP pool-name: MakuHikariCP
--- ############ 监控相关配置
# Actuator 配置
management:
endpoints:
web:
base-path: /actuator
exposure:
include: '*'
# Spring Boot Admin 配置
spring:
boot:
admin:
# Spring Boot Admin Server 服务端地址
context-path: /monitor/admin
client:
# 指定 Spring Boot Admin Server 服务端地址
url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path}
instance:
service-host-type: IP

View File

@ -1,4 +1,5 @@
spring: spring:
data:
redis: redis:
database: 1 database: 1
host: localhost host: localhost
@ -20,26 +21,3 @@ spring:
max-lifetime: 1800000 # 连接的生命时长毫秒超时而且没被使用则被释放retired默认 30 分钟 max-lifetime: 1800000 # 连接的生命时长毫秒超时而且没被使用则被释放retired默认 30 分钟
connection-test-query: SELECT 1 connection-test-query: SELECT 1
pool-name: MakuHikariCP pool-name: MakuHikariCP
--- ############ 监控相关配置
# Actuator 配置
management:
endpoints:
web:
base-path: /actuator
exposure:
include: '*'
# Spring Boot Admin 配置
spring:
boot:
admin:
# Spring Boot Admin Server 服务端地址
context-path: /monitor/admin
client:
# 指定 Spring Boot Admin Server 服务端地址
url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path}
instance:
service-host-type: IP

View File

@ -14,10 +14,6 @@
<!--输出到控制台--> <!--输出到控制台-->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<!--此日志appender是为开发使用只配置最低级别控制台输出的日志级别是大于或等于此级别的日志信息-->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>debug</level>
</filter>
<encoder> <encoder>
<Pattern>${CONSOLE_LOG_PATTERN}</Pattern> <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
<charset>UTF-8</charset> <charset>UTF-8</charset>
@ -33,15 +29,11 @@
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
<charset>UTF-8</charset> <charset>UTF-8</charset>
</encoder> </encoder>
<!-- 日志记录器的滚动策略,按日期,按大小记录 --> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志归档 -->
<fileNamePattern>${logging.path}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <fileNamePattern>${logging.path}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100MB</maxFileSize> <maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy> <maxHistory>60</maxHistory>
<!--日志文档保留天数--> <totalSizeCap>20GB</totalSizeCap>
<maxHistory>30</maxHistory>
</rollingPolicy> </rollingPolicy>
<!-- 此日志文档只记录debug级别的 --> <!-- 此日志文档只记录debug级别的 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter"> <filter class="ch.qos.logback.classic.filter.LevelFilter">
@ -57,12 +49,11 @@
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
<charset>UTF-8</charset> <charset>UTF-8</charset>
</encoder> </encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${logging.path}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <fileNamePattern>${logging.path}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100MB</maxFileSize> <maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy> <maxHistory>60</maxHistory>
<maxHistory>30</maxHistory> <totalSizeCap>20GB</totalSizeCap>
</rollingPolicy> </rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter"> <filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>info</level> <level>info</level>
@ -77,12 +68,11 @@
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
<charset>UTF-8</charset> <charset>UTF-8</charset>
</encoder> </encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${logging.path}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <fileNamePattern>${logging.path}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100MB</maxFileSize> <maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy> <maxHistory>60</maxHistory>
<maxHistory>30</maxHistory> <totalSizeCap>20GB</totalSizeCap>
</rollingPolicy> </rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter"> <filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>warn</level> <level>warn</level>
@ -97,12 +87,11 @@
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
<charset>UTF-8</charset> <charset>UTF-8</charset>
</encoder> </encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${logging.path}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <fileNamePattern>${logging.path}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100MB</maxFileSize> <maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy> <maxHistory>60</maxHistory>
<maxHistory>30</maxHistory> <totalSizeCap>20GB</totalSizeCap>
</rollingPolicy> </rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter"> <filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level> <level>ERROR</level>
@ -111,22 +100,14 @@
</filter> </filter>
</appender> </appender>
<!-- 开发环境,控制台打印-->
<springProfile name="dev">
<logger name="net.maku" level="DEBUG" />
<root level="INFO"> <root level="INFO">
<appender-ref ref="CONSOLE" /> <appender-ref ref="CONSOLE" />
</root>
</springProfile>
<!-- 测试、生产环境,输出到文档 -->
<springProfile name="test,prod">
<root level="info">
<appender-ref ref="CONSOLE" />
<appender-ref ref="DEBUG_FILE" /> <appender-ref ref="DEBUG_FILE" />
<appender-ref ref="INFO_FILE" /> <appender-ref ref="INFO_FILE" />
<appender-ref ref="WARN_FILE" /> <appender-ref ref="WARN_FILE" />
<appender-ref ref="ERROR_FILE" /> <appender-ref ref="ERROR_FILE" />
</root> </root>
</springProfile>
<logger name="net.maku" level="DEBUG"/>
</configuration> </configuration>

28
pom.xml
View File

@ -13,7 +13,7 @@
<parent> <parent>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId> <artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.6</version> <version>3.0.1</version>
</parent> </parent>
<modules> <modules>
@ -30,23 +30,22 @@
<skipTests>true</skipTests> <skipTests>true</skipTests>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version> <java.version>17</java.version>
<mybatisplus.version>3.5.2</mybatisplus.version> <mybatisplus.version>3.5.3</mybatisplus.version>
<dameng.version>8.1.2.79</dameng.version> <dameng.version>8.1.2.79</dameng.version>
<knife4j.version>4.0.0</knife4j.version> <knife4j.version>4.0.0</knife4j.version>
<springdoc.version>1.6.9</springdoc.version> <hutool.version>5.8.11</hutool.version>
<hutool.version>5.7.22</hutool.version>
<captcha.version>1.6.2</captcha.version> <captcha.version>1.6.2</captcha.version>
<mapstruct.version>1.4.2.Final</mapstruct.version> <mapstruct.version>1.4.2.Final</mapstruct.version>
<aliyun.oss.version>3.8.0</aliyun.oss.version> <aliyun.oss.version>3.15.2</aliyun.oss.version>
<aliyun.dysmsapi.version>2.0.18</aliyun.dysmsapi.version> <aliyun.dysmsapi.version>2.0.23</aliyun.dysmsapi.version>
<tencentcloud.sdk.version>3.1.574</tencentcloud.sdk.version> <tencentcloud.sdk.version>3.1.574</tencentcloud.sdk.version>
<qiniu.version>7.11.0</qiniu.version> <qiniu.version>7.12.1</qiniu.version>
<minio.version>8.4.3</minio.version> <minio.version>8.5.1</minio.version>
<qcloud.cos.version>5.6.89</qcloud.cos.version> <qcloud.cos.version>5.6.97</qcloud.cos.version>
<huaweicloud.obs.version>3.22.3</huaweicloud.obs.version> <huaweicloud.obs.version>3.22.3</huaweicloud.obs.version>
<easyexcel.version>3.1.1</easyexcel.version> <easyexcel.version>3.1.1</easyexcel.version>
<easytrans.version>2.0.12</easytrans.version> <easytrans.version>2.1.6</easytrans.version>
</properties> </properties>
<dependencies> <dependencies>
@ -83,15 +82,10 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.github.xiaoymin</groupId> <groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-spring-boot-starter</artifactId> <artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
<version>${knife4j.version}</version> <version>${knife4j.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>${springdoc.version}</version>
</dependency>
<dependency>
<groupId>cn.hutool</groupId> <groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId> <artifactId>hutool-all</artifactId>
<version>${hutool.version}</version> <version>${hutool.version}</version>