Navigation Menu

Skip to content

Commit

Permalink
[UPDATE]优化功能 修复BUG
Browse files Browse the repository at this point in the history
  • Loading branch information
Exrick committed Oct 23, 2018
1 parent 1a02e95 commit f8f3a7f
Show file tree
Hide file tree
Showing 82 changed files with 526 additions and 453 deletions.
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -83,7 +83,7 @@ http://xboot.exrick.cn
- 修改配置文件 `application.yml` 相应配置,其中有详细注释,所有配置只需在这里修改
- 编译器中启动运行 `XbootApplication.java` 或根目录下执行命令 `mvn spring-boot:run` 默认端口8888 访问接口文档 `http://localhost:8888/swagger-ui.html` 说明启动成功 管理员账密admin|123456
- 前台页面请启动基于Vue的 [xboot-front](https://github.com/Exrick/xboot-front) 项目,并修改其接口代理配置

> 温馨提示:若更新代码后,记得更新sql并清空缓存
### 开发指南及相关技术栈文档
- [项目基本配置和使用相关技术栈文档【必读】](https://github.com/Exrick/x-boot/wiki/%E9%A1%B9%E7%9B%AE%E5%9F%BA%E6%9C%AC%E9%85%8D%E7%BD%AE%E5%92%8C%E4%BD%BF%E7%94%A8%E7%9B%B8%E5%85%B3%E6%8A%80%E6%9C%AF%E6%A0%88%E6%96%87%E6%A1%A3%E3%80%90%E5%BF%85%E8%AF%BB%E3%80%91)
- [如何使用XBoot后端在30秒内开发出增删改接口](https://github.com/Exrick/x-boot/wiki/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8XBoot%E5%90%8E%E7%AB%AF%E5%9C%A830%E7%A7%92%E5%86%85%E5%BC%80%E5%8F%91%E5%87%BA%E5%A2%9E%E5%88%A0%E6%94%B9%E6%8E%A5%E5%8F%A3)
Expand Down
Binary file added screenshot/QQ截图20181023175346.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshot/QQ截图20181023175550.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshot/QQ截图20181023175615.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 4 additions & 4 deletions src/main/java/cn/exrick/xboot/common/aop/SystemLogAspect.java
Expand Up @@ -4,10 +4,10 @@
import cn.exrick.xboot.common.utils.IpInfoUtil;
import cn.exrick.xboot.common.utils.ObjectUtil;
import cn.exrick.xboot.common.utils.ThreadPoolUtil;
import cn.exrick.xboot.entity.Log;
import cn.exrick.xboot.entity.elasticsearch.EsLog;
import cn.exrick.xboot.service.LogService;
import cn.exrick.xboot.service.elasticsearch.EsLogService;
import cn.exrick.xboot.modules.base.entity.Log;
import cn.exrick.xboot.modules.base.entity.elasticsearch.EsLog;
import cn.exrick.xboot.modules.base.service.LogService;
import cn.exrick.xboot.modules.base.service.elasticsearch.EsLogService;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.JoinPoint;
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/cn/exrick/xboot/common/utils/QiniuUtil.java
@@ -1,6 +1,6 @@
package cn.exrick.xboot.common.utils;

import cn.exrick.xboot.exception.XbootException;
import cn.exrick.xboot.config.exception.XbootException;
import com.google.gson.Gson;
import com.qiniu.common.QiniuException;
import com.qiniu.common.Zone;
Expand Down
28 changes: 28 additions & 0 deletions src/main/java/cn/exrick/xboot/common/utils/SecurityUtil.java
@@ -0,0 +1,28 @@
package cn.exrick.xboot.common.utils;

import cn.exrick.xboot.modules.base.entity.User;
import cn.exrick.xboot.modules.base.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Component;

/**
* @author Exrickx
*/
@Component
public class SecurityUtil {

@Autowired
private UserService userService;

/**
* 获取当前登录用户
* @return
*/
public User getCurrUser(){

UserDetails user = (UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
return userService.findByUsername(user.getUsername());
}
}
@@ -1,4 +1,4 @@
package cn.exrick.xboot.exception;
package cn.exrick.xboot.config.exception;

import lombok.Data;
import org.springframework.security.authentication.InternalAuthenticationServiceException;
Expand Down
@@ -1,8 +1,7 @@
package cn.exrick.xboot.exception;
package cn.exrick.xboot.config.exception;

import cn.exrick.xboot.common.utils.ResultUtil;
import cn.exrick.xboot.common.vo.Result;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ExceptionHandler;
Expand Down
@@ -1,4 +1,4 @@
package cn.exrick.xboot.exception;
package cn.exrick.xboot.config.exception;

import lombok.Data;

Expand Down
Expand Up @@ -4,19 +4,15 @@
import cn.exrick.xboot.common.constant.CommonConstant;
import cn.exrick.xboot.common.limit.RedisRaterLimiter;
import cn.exrick.xboot.common.utils.IpInfoUtil;
import cn.exrick.xboot.common.utils.ResponseUtil;
import cn.exrick.xboot.exception.XbootException;
import cn.exrick.xboot.config.exception.XbootException;
import cn.hutool.core.util.StrUtil;
import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
Expand Down Expand Up @@ -55,8 +51,8 @@ public class LimitRaterInterceptor extends HandlerInterceptorAdapter {
public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
Object handler) throws Exception {

// IP限流 在线Demo所需 一秒限5个请求
String token1 = redisRaterLimiter.acquireTokenFromBucket(ipInfoUtil.getIpAddr(request), 5, 1000);
// IP限流 在线Demo所需 一秒限10个请求
String token1 = redisRaterLimiter.acquireTokenFromBucket(ipInfoUtil.getIpAddr(request), 10, 1000);
if (StrUtil.isBlank(token1)) {
throw new XbootException("你手速怎么这么快,请点慢一点");
}
Expand Down
30 changes: 30 additions & 0 deletions src/main/java/cn/exrick/xboot/config/jpa/UserAuditor.java
@@ -0,0 +1,30 @@
package cn.exrick.xboot.config.jpa;

import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.domain.AuditorAware;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;

import java.util.Optional;

/**
* 审计记录创建或修改用户
* @author Exrickx
*/
@Configuration
@Slf4j
public class UserAuditor implements AuditorAware<String> {

@Override
public Optional<String> getCurrentAuditor() {

UserDetails user;
try {
user = (UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
return Optional.ofNullable(user.getUsername());
}catch (Exception e){
return Optional.empty();
}
}
}
Expand Up @@ -9,7 +9,7 @@
* @author Exrickx
*/
@Configuration
@MapperScan("cn.exrick.xboot.dao.mapper")
@MapperScan("cn.exrick.xboot.modules.*.*.mapper")
public class MybatisPlusConfig {

/**
Expand Down
@@ -1,11 +1,9 @@
package cn.exrick.xboot.config.security;

import cn.exrick.xboot.common.constant.CommonConstant;
import cn.exrick.xboot.common.utils.JasyptUtil;
import cn.exrick.xboot.entity.Permission;
import cn.exrick.xboot.entity.Role;
import cn.exrick.xboot.entity.User;
import cn.hutool.core.collection.CollUtil;
import cn.exrick.xboot.modules.base.entity.Permission;
import cn.exrick.xboot.modules.base.entity.Role;
import cn.exrick.xboot.modules.base.entity.User;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.core.GrantedAuthority;
Expand Down
@@ -1,9 +1,8 @@
package cn.exrick.xboot.config.security;

import cn.exrick.xboot.entity.User;
import cn.exrick.xboot.exception.LoginFailLimitException;
import cn.exrick.xboot.exception.XbootException;
import cn.exrick.xboot.service.UserService;
import cn.exrick.xboot.modules.base.entity.User;
import cn.exrick.xboot.config.exception.LoginFailLimitException;
import cn.exrick.xboot.modules.base.service.UserService;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down
@@ -1,7 +1,7 @@
package cn.exrick.xboot.config.security.jwt;

import cn.exrick.xboot.common.utils.ResponseUtil;
import cn.exrick.xboot.exception.LoginFailLimitException;
import cn.exrick.xboot.config.exception.LoginFailLimitException;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down
Expand Up @@ -2,7 +2,7 @@

import cn.exrick.xboot.common.constant.SecurityConstant;
import cn.exrick.xboot.common.utils.ResponseUtil;
import cn.exrick.xboot.exception.XbootException;
import cn.exrick.xboot.config.exception.XbootException;
import cn.hutool.core.util.StrUtil;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
Expand Down
@@ -1,8 +1,8 @@
package cn.exrick.xboot.config.security.permission;

import cn.exrick.xboot.common.constant.CommonConstant;
import cn.exrick.xboot.entity.Permission;
import cn.exrick.xboot.service.PermissionService;
import cn.exrick.xboot.modules.base.entity.Permission;
import cn.exrick.xboot.modules.base.service.PermissionService;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down
16 changes: 0 additions & 16 deletions src/main/java/cn/exrick/xboot/dao/elasticsearch/EsLogDao.java

This file was deleted.

0 comments on commit f8f3a7f

Please sign in to comment.