From 1bec824faf5c37e7f927e6e3bfb356dec9686bc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Tue, 19 Mar 2019 14:30:05 +0800 Subject: [PATCH 01/39] =?UTF-8?q?spring-cloud=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E5=88=B0Greenwich.RELEASE=20spring-boot-starter-parent=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E5=88=B0=202.1.3.RELEASE=20spring.boot.admin?= =?UTF-8?q?=20=E5=8D=87=E7=BA=A7=E5=88=B0=202.1.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 0329ec2..1fc008a 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ org.springframework.boot spring-boot-starter-parent - 2.1.1.RELEASE + 2.1.3.RELEASE @@ -35,14 +35,14 @@ 1.8 UTF-8 UTF-8 - Finchley.SR2 + Greenwich.RELEASE 3.1.0 1.2.54 1.1.12 2.3.2 0.9.1 4.4.0 - 2.1.1 + 2.1.3 1.18.4 -- Gitee From bb75164ad02fb83ed5d43df21c10f61ee13c945a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Sat, 13 Apr 2019 17:01:28 +0800 Subject: [PATCH 02/39] 1.2.2.1 --- kernel-actuator/pom.xml | 2 +- kernel-core/pom.xml | 6 +- .../metadata/CustomMetaObjectHandler.java | 8 +- .../roses/core/page/PageFactory.java | 4 +- .../core/reqres/request/RequestQuery.java | 79 +++++++++++++++++++ kernel-generator/pom.xml | 2 +- kernel-jwt/pom.xml | 4 +- kernel-logger/pom.xml | 6 +- kernel-model/pom.xml | 2 +- kernel-scanner/pom.xml | 4 +- kernel-sign/pom.xml | 4 +- kernel-validator/pom.xml | 4 +- pom.xml | 2 +- 13 files changed, 104 insertions(+), 23 deletions(-) create mode 100644 kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java diff --git a/kernel-actuator/pom.xml b/kernel-actuator/pom.xml index f045c64..004405a 100644 --- a/kernel-actuator/pom.xml +++ b/kernel-actuator/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-actuator diff --git a/kernel-core/pom.xml b/kernel-core/pom.xml index 479cfe5..781a5bf 100644 --- a/kernel-core/pom.xml +++ b/kernel-core/pom.xml @@ -7,12 +7,12 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 ../pom.xml kernel-core - 1.2.2 + 1.2.2.1 jar @@ -23,7 +23,7 @@ cn.stylefeng.roses kernel-model - 1.2.2 + 1.2.2.1 diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java index 7d21d0a..55907e7 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java @@ -71,15 +71,15 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { /** * 获取逻辑删除字段的名称(非数据库中字段名称) */ - protected String getDeleteFlagFieldName() { - return "delFlag"; + public static String getDeleteFlagFieldName() { + return "DELETED"; } /** * 获取逻辑删除字段的默认值 */ - protected Object getDefaultDelFlagValue() { - return "N"; + public static Object getDefaultDelFlagValue() { + return "0"; } /** diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java index 27bfb97..92f4bc2 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java @@ -22,6 +22,7 @@ import cn.stylefeng.roses.core.util.ToolUtil; import cn.stylefeng.roses.kernel.model.page.PageQuery; import cn.stylefeng.roses.kernel.model.util.ValidateUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.google.common.base.CaseFormat; import javax.servlet.http.HttpServletRequest; @@ -96,6 +97,7 @@ public class PageFactory { if (ToolUtil.isEmpty(orderByField)) { return page; } + orderByField = CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, orderByField); if (ToolUtil.isEmpty(sort)) { // 默认降序 page.setDesc(orderByField); @@ -165,7 +167,7 @@ public class PageFactory { } } } else { - return null; + return parameter; } } } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java new file mode 100644 index 0000000..94bff3f --- /dev/null +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java @@ -0,0 +1,79 @@ +package cn.stylefeng.roses.core.reqres.request; + +import cn.stylefeng.roses.kernel.model.exception.ServiceException; +import cn.stylefeng.roses.kernel.model.exception.enums.CoreExceptionEnum; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.TableFieldInfo; +import com.baomidou.mybatisplus.core.toolkit.TableInfoHelper; +import com.google.common.base.CaseFormat; + +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.util.Collection; + +public class RequestQuery { + + public Wrapper buildWrapper(Class clazz) { + + QueryWrapper queryWrapper = new QueryWrapper<>(); + + if (TableInfoHelper.getTableInfo(clazz).isLogicDelete()) { + TableFieldInfo field = TableInfoHelper.getTableInfo(clazz).getFieldList().stream().filter(TableFieldInfo::isLogicDelete).findFirst().get(); + queryWrapper.eq(field.getColumn(), field.getLogicNotDeleteValue()); + } + + Field[] fields = this.getClass().getDeclaredFields(); + try { + for (Field f : fields) { + String fieldName = f.toString().substring(f.toString().lastIndexOf(".") + 1); //取出属性名称 + String[] splitFieldName = fieldName.split("_"); + if (splitFieldName.length == 2) { + String methodName = fieldName.substring(0, 1).toUpperCase() + fieldName.substring(1); + Method method = this.getClass().getMethod("get" + methodName); + Object val = method.invoke(this);//取出属性值 + if (val == null) { + continue; + } + String columnName = CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, splitFieldName[1]); + switch (splitFieldName[0].toLowerCase()) { + case "eq": + queryWrapper.eq(columnName, val); + break; + case "ne": + queryWrapper.ne(columnName, val); + break; + case "ge": + queryWrapper.ge(columnName, val); + break; + case "lt": + queryWrapper.lt(columnName, val); + break; + case "le": + queryWrapper.le(columnName, val); + break; + case "like": + queryWrapper.like(columnName, val); + break; + case "likel": + queryWrapper.likeLeft(columnName, val); + break; + case "liker": + queryWrapper.likeRight(columnName, val); + break; + case "in": + queryWrapper.in(columnName, (Collection)val); + break; + case "notin": + queryWrapper.notIn(columnName, (Collection)val); + break; + } + } + } + } catch (Exception e) { + throw new RuntimeException(e); + } + + return queryWrapper; + } +} diff --git a/kernel-generator/pom.xml b/kernel-generator/pom.xml index 3fbabff..efea821 100644 --- a/kernel-generator/pom.xml +++ b/kernel-generator/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-generator diff --git a/kernel-jwt/pom.xml b/kernel-jwt/pom.xml index 9921dbd..0d7e221 100644 --- a/kernel-jwt/pom.xml +++ b/kernel-jwt/pom.xml @@ -6,7 +6,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-jwt @@ -19,7 +19,7 @@ cn.stylefeng.roses kernel-core - 1.2.2 + 1.2.2.1 diff --git a/kernel-logger/pom.xml b/kernel-logger/pom.xml index 3266499..e554f68 100644 --- a/kernel-logger/pom.xml +++ b/kernel-logger/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-logger @@ -18,12 +18,12 @@ cn.stylefeng.roses kernel-core - 1.2.2 + 1.2.2.1 cn.stylefeng.roses kernel-validator - 1.2.2 + 1.2.2.1 diff --git a/kernel-model/pom.xml b/kernel-model/pom.xml index bb3a707..3145b28 100644 --- a/kernel-model/pom.xml +++ b/kernel-model/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-model diff --git a/kernel-scanner/pom.xml b/kernel-scanner/pom.xml index 1d7d62a..073fca1 100644 --- a/kernel-scanner/pom.xml +++ b/kernel-scanner/pom.xml @@ -6,7 +6,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 ../pom.xml @@ -20,7 +20,7 @@ cn.stylefeng.roses kernel-model - 1.2.2 + 1.2.2.1 diff --git a/kernel-sign/pom.xml b/kernel-sign/pom.xml index becdec4..6a98a81 100644 --- a/kernel-sign/pom.xml +++ b/kernel-sign/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-sign @@ -18,7 +18,7 @@ cn.stylefeng.roses kernel-core - 1.2.2 + 1.2.2.1 diff --git a/kernel-validator/pom.xml b/kernel-validator/pom.xml index 7bf862e..ed9b036 100644 --- a/kernel-validator/pom.xml +++ b/kernel-validator/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 kernel-validator @@ -18,7 +18,7 @@ cn.stylefeng.roses kernel-model - 1.2.2 + 1.2.2.1 diff --git a/pom.xml b/pom.xml index a4c2389..e0e1ed9 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ cn.stylefeng.roses roses-kernel - 1.2.2 + 1.2.2.1 pom -- Gitee From 5b1b6d10afa899be26cbd87bce85994e70f64064 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Sat, 13 Apr 2019 17:05:09 +0800 Subject: [PATCH 03/39] 1.2.2.1 --- .../core/config/MybatisPluginAutoConfiguration.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java index 88623dc..36e46e7 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java @@ -21,6 +21,8 @@ import cn.stylefeng.roses.core.dbid.GunsDatabaseIdProvider; import cn.stylefeng.roses.core.metadata.CustomMetaObjectHandler; import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.baomidou.mybatisplus.core.injector.ISqlInjector; +import com.baomidou.mybatisplus.extension.injector.LogicSqlInjector; import com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import org.springframework.beans.factory.annotation.Autowired; @@ -85,6 +87,14 @@ public class MybatisPluginAutoConfiguration { return new OptimisticLockerInterceptor(); } + /** + * 逻辑删除mybatis插件 + */ + @Bean + public ISqlInjector sqlInjector() { + return new LogicSqlInjector(); + } + /** * 数据库id选择器 */ -- Gitee From 95d17c6cdc3c4c71ec477564f90154df157af8d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Sat, 13 Apr 2019 17:17:26 +0800 Subject: [PATCH 04/39] 1.2.2.1 --- .../metadata/CustomMetaObjectHandler.java | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java index 55907e7..2afd31e 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java @@ -52,6 +52,15 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { setFieldValByName(getCreateUserFieldName(), accountId, metaObject); } + + Object createUserName = getFieldValByName(getCreateUserNameFieldName(), metaObject); + if (createUserName == null) { + + //获取当前登录用户姓名 + Object accountName = getUserName(); + + setFieldValByName(getCreateUserNameFieldName(), accountName, metaObject); + } } @Override @@ -66,6 +75,15 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { setFieldValByName(getUpdateUserFieldName(), accountId, metaObject); } + + Object updateUserName = getFieldValByName(getUpdateUserNameFieldName(), metaObject); + if (updateUserName == null) { + + //获取当前登录用户姓名 + Object accountName = getUserName(); + + setFieldValByName(getUpdateUserNameFieldName(), accountName, metaObject); + } } /** @@ -96,6 +114,13 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { return "createUser"; } + /** + * 获取创建用户姓名字段的名称(非数据库中字段名称) + */ + protected String getCreateUserNameFieldName() { + return "createUserName"; + } + /** * 获取更新时间字段的名称(非数据库中字段名称) */ @@ -110,10 +135,24 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { return "updateUser"; } + /** + * 获取更新用户姓名字段的名称(非数据库中字段名称) + */ + private String getUpdateUserNameFieldName() { + return "updateUserName"; + } + /** * 获取用户唯一id(注意默认获取的用户唯一id为空,如果想填写则需要继承本类) */ protected Object getUserUniqueId() { return ""; } + + /** + * 获取用户名称(注意默认获取的用户名称为空,如果想填写则需要继承本类) + */ + protected Object getUserName() { + return ""; + } } \ No newline at end of file -- Gitee From b5f70541f73a8fdc4e5a0d846e803a4f4136d00a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Sat, 13 Apr 2019 17:45:32 +0800 Subject: [PATCH 05/39] 1.2.2.1 --- .../config/MybatisDataSourceAutoConfiguration.java | 2 ++ .../roses/core/metadata/CustomMetaObjectHandler.java | 12 ++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java index cdb8b5d..3ddcd62 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java @@ -17,6 +17,7 @@ package cn.stylefeng.roses.core.config; import cn.stylefeng.roses.core.config.properties.DruidProperties; import com.alibaba.druid.pool.DruidDataSource; +import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Bean; @@ -29,6 +30,7 @@ import org.springframework.context.annotation.Configuration; * @Date 2017/5/20 21:58 */ @Configuration +@MapperScan(basePackages = {"**.mapper"}) @ConditionalOnProperty(prefix = "spring.datasource", name = "url") public class MybatisDataSourceAutoConfiguration { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java index 2afd31e..d91a131 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java @@ -67,23 +67,23 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { public void updateFill(MetaObject metaObject) { setFieldValByName(getUpdateTimeFieldName(), new Date(), metaObject); - Object updateUser = getFieldValByName(getUpdateUserFieldName(), metaObject); - if (updateUser == null) { +// Object updateUser = getFieldValByName(getUpdateUserFieldName(), metaObject); +// if (updateUser == null) { //获取当前登录用户 Object accountId = getUserUniqueId(); setFieldValByName(getUpdateUserFieldName(), accountId, metaObject); - } +// } - Object updateUserName = getFieldValByName(getUpdateUserNameFieldName(), metaObject); - if (updateUserName == null) { +// Object updateUserName = getFieldValByName(getUpdateUserNameFieldName(), metaObject); +// if (updateUserName == null) { //获取当前登录用户姓名 Object accountName = getUserName(); setFieldValByName(getUpdateUserNameFieldName(), accountName, metaObject); - } +// } } /** -- Gitee From f5197e49c44e772e9ea999cce44df62725671c93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Wed, 17 Apr 2019 09:08:37 +0800 Subject: [PATCH 06/39] 1.2.3.1 --- .../java/cn/stylefeng/roses/core/aop/RequestDataAop.java | 9 +++++++-- .../roses/core/converter/RequestDataMessageConvert.java | 6 +----- .../roses/core/metadata/CustomMetaObjectHandler.java | 4 ++-- .../stylefeng/roses/core/reqres/request/RequestData.java | 5 +++++ 4 files changed, 15 insertions(+), 9 deletions(-) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java index af7f7e9..e1ced2b 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java @@ -36,10 +36,15 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.REQUEST public class RequestDataAop { @Pointcut("execution(* *..controller.*.*(..))") - public void cutService() { + public void cutController() { } - @Around("cutService()") + @Pointcut("execution(* *..provider.*.*(..))") + public void cutProvider() { + } + + + @Around("cutProvider()||cutController()") public Object sessionKit(ProceedingJoinPoint point) throws Throwable { Object[] params = point.getArgs(); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java index b856fb6..1272aa6 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java @@ -59,11 +59,7 @@ public class RequestDataMessageConvert extends AbstractGenericHttpMessageConvert @Override public boolean canWrite(Type type, Class clazz, MediaType mediaType) { - if (type instanceof Class) { - return ((Class) type).isAssignableFrom(RequestData.class); - } else { - return false; - } + return super.canWrite(clazz, mediaType); } @Override diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java index d91a131..f76c845 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java @@ -97,7 +97,7 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { * 获取逻辑删除字段的默认值 */ public static Object getDefaultDelFlagValue() { - return "0"; + return 0; } /** @@ -146,7 +146,7 @@ public class CustomMetaObjectHandler implements MetaObjectHandler { * 获取用户唯一id(注意默认获取的用户唯一id为空,如果想填写则需要继承本类) */ protected Object getUserUniqueId() { - return ""; + return 0L; } /** diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java index e42ae2c..9eef355 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java @@ -50,6 +50,11 @@ public class RequestData implements Serializable { */ private String url; +// private Class getTClass() { +// Class tClass = (Class) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0]; +// return tClass; +// } + /** * 解析请求json为指定类 */ -- Gitee From a9a800427dc353447b28951628f60026897c6e6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Thu, 18 Apr 2019 10:51:06 +0800 Subject: [PATCH 07/39] 1.2.3.1 --- .../converter/RequestDataMessageConvert.java | 35 +++++-------------- .../core/reqres/request/RequestQuery.java | 8 ++--- 2 files changed, 12 insertions(+), 31 deletions(-) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java index 1272aa6..e91924a 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java @@ -51,7 +51,7 @@ public class RequestDataMessageConvert extends AbstractGenericHttpMessageConvert @Override public boolean canRead(Type type, Class contextClass, MediaType mediaType) { if (type instanceof Class) { - return ((Class) type).isAssignableFrom(RequestData.class); + return RequestData.class.isAssignableFrom((Class) type); } else { return false; } @@ -74,7 +74,7 @@ public class RequestDataMessageConvert extends AbstractGenericHttpMessageConvert @Override public Object readInternal(Class clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { - return readMap(inputMessage); + return readMap(clazz, inputMessage); } @Override @@ -84,10 +84,10 @@ public class RequestDataMessageConvert extends AbstractGenericHttpMessageConvert @Override public Object read(Type type, Class contextClass, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { - return readMap(inputMessage); + return readMap(type, inputMessage); } - private Object readMap(HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { + private Object readMap(Type type, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { //请求流转化为字符串 String requestBody = IoUtil.read(inputMessage.getBody(), "UTF-8"); @@ -98,35 +98,18 @@ public class RequestDataMessageConvert extends AbstractGenericHttpMessageConvert } HttpServletRequest request = HttpContext.getRequest(); - return getRequestData(requestBody, request); + return getRequestData(type, requestBody, request); } - private Object getRequestData(String requestBody, HttpServletRequest request) { - RequestData requestData = new RequestData(); + private Object getRequestData(Type type, String requestBody, HttpServletRequest request) { + JSONObject jsonObject = JSON.parseObject(requestBody); + RequestData requestData = jsonObject.toJavaObject(type); if (request != null) { requestData.setIp(request.getRemoteHost()); requestData.setUrl(request.getServletPath()); } - requestData.setData(clearWhiteSpace(requestBody)); + requestData.setData(jsonObject); return requestData; } - - private JSONObject clearWhiteSpace(String requestBody) { - JSONObject jsonObject = JSON.parseObject(requestBody); - if (jsonObject != null) { - Set> entries = jsonObject.entrySet(); - for (Map.Entry entry : entries) { - Object value = entry.getValue(); - if (value instanceof String) { - value = ((String) value).trim(); - jsonObject.put(entry.getKey(), value); - } - } - return jsonObject; - } else { - return null; - } - } - } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java index 94bff3f..dff7fd5 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java @@ -1,7 +1,5 @@ package cn.stylefeng.roses.core.reqres.request; -import cn.stylefeng.roses.kernel.model.exception.ServiceException; -import cn.stylefeng.roses.kernel.model.exception.enums.CoreExceptionEnum; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.TableFieldInfo; @@ -12,7 +10,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.Collection; -public class RequestQuery { +public class RequestQuery extends RequestData { public Wrapper buildWrapper(Class clazz) { @@ -62,10 +60,10 @@ public class RequestQuery { queryWrapper.likeRight(columnName, val); break; case "in": - queryWrapper.in(columnName, (Collection)val); + queryWrapper.in(columnName, (Collection) val); break; case "notin": - queryWrapper.notIn(columnName, (Collection)val); + queryWrapper.notIn(columnName, (Collection) val); break; } } -- Gitee From 947994c8ef8212b43bede16be07b2fb3010fa7ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Thu, 18 Apr 2019 18:32:28 +0800 Subject: [PATCH 08/39] 1.2.3.1 --- .../roses/core/context/RequestNoContext.java | 4 ++++ .../core/reqres/request/RequestData.java | 3 ++- .../chain/aop/ChainOnControllerAop.java | 19 +++++++++++-------- .../model/validator/BaseValidatingParam.java | 4 +++- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java index abf2082..ecb6099 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java @@ -55,6 +55,10 @@ public class RequestNoContext { */ public static String getRequestNoByRequestParam(Object[] params) { + String requestNo = getRequestNoByHttpHeader(); + if (!ToolUtil.isEmpty(requestNo)) { + return requestNo; + } if (params == null || params.length <= 0) { return ""; } else { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java index 9eef355..ab23bc0 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java @@ -17,6 +17,7 @@ package cn.stylefeng.roses.core.reqres.request; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; +import cn.stylefeng.roses.kernel.model.api.base.AbstractBaseRequest; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.Data; @@ -31,7 +32,7 @@ import java.util.*; * @Date 2018/2/11 23:04 */ @Data -public class RequestData implements Serializable { +public class RequestData extends AbstractBaseRequest implements Serializable { private static final long serialVersionUID = 9081406366569775542L; diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java index 72ae5a7..ec12e23 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java @@ -67,27 +67,24 @@ public class ChainOnControllerAop { @Around("cutService()") public Object sessionKit(ProceedingJoinPoint point) throws Throwable { - MethodSignature methodSignature = null; - Signature signature = point.getSignature(); - if (signature instanceof MethodSignature) { - methodSignature = (MethodSignature) signature; - } - long begin = System.currentTimeMillis(); if (logger.isDebugEnabled()) { logger.debug("开始记录controller aop耗时!"); } + //获取拦截方法的参数 + Object[] methodParams = point.getArgs(); + //生成本节点的spanId String currentSpanId = IdWorker.getIdStr(); SpanIdHolder.set(currentSpanId); //获取当前节点的parentSpanId - String parentSpanId = SpanIdContext.getSpanIdByHttpHeader(); + String parentSpanId = SpanIdContext.getSpanIdByRequestParam(methodParams); ParentSpanIdHolder.set(parentSpanId); //获取traceId - String traceId = RequestNoContext.getRequestNoByHttpHeader(); + String traceId = RequestNoContext.getRequestNoByRequestParam(methodParams); TraceIdHolder.set(traceId); //初始化log记录 @@ -122,6 +119,12 @@ public class ChainOnControllerAop { logger.debug("controller aop 记录完错误日志!" + (System.currentTimeMillis() - begin)); } + MethodSignature methodSignature = null; + Signature signature = point.getSignature(); + if (signature instanceof MethodSignature) { + methodSignature = (MethodSignature) signature; + } + //报告:发送给网关失败的响应 TraceUtil.trace(methodSignature, RpcPhaseEnum.EP1, traceId, currentSpanId, parentSpanId, exceptionMsg); diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java index afcddf5..a9a40bb 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java @@ -30,5 +30,7 @@ public interface BaseValidatingParam { * @author fengshuonan * @Date 2018/8/6 下午4:28 */ - String checkParam(); + default String checkParam() { + return null; + } } -- Gitee From fbb93b74698d7aefb6281707679c675b7078dcbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Tue, 23 Apr 2019 15:27:44 +0800 Subject: [PATCH 09/39] init --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 868e57e..de6e0ab 100644 --- a/pom.xml +++ b/pom.xml @@ -43,7 +43,7 @@ 0.9.1 4.4.0 2.1.3 - 1.18.4 + 1.18.6 -- Gitee From f512426123c14bf641b746691de0f20440322d0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Sun, 5 May 2019 17:50:03 +0800 Subject: [PATCH 10/39] init --- pom.xml | 41 +++++++++-------------------------------- 1 file changed, 9 insertions(+), 32 deletions(-) diff --git a/pom.xml b/pom.xml index de6e0ab..4630565 100644 --- a/pom.xml +++ b/pom.xml @@ -177,19 +177,6 @@ -Xdoclint:none - - org.apache.maven.plugins - maven-gpg-plugin - 1.5 - - - verify - - sign - - - - @@ -204,28 +191,18 @@ - - - stylefeng - sn93@qq.com - - - - - scm:git@gitee.com:stylefeng-Roses/roses-kernel.git - scm:git@gitee.com:stylefeng-Roses/roses-kernel.git - https://gitee.com/stylefeng-Roses/roses-kernel - - + - - center - https://oss.sonatype.org/content/repositories/snapshots - - center - https://oss.sonatype.org/service/local/staging/deploy/maven2 + nexus-releases + Nexus Release Repository + http://10.100.21.58:8081/repository/my-releases/ + + nexus-snapshots + Nexus Snapshot Repository + http://10.100.21.58:8081/repository/my-snapshots/ + \ No newline at end of file -- Gitee From 7dbc3726b32a74691396d7898487496fa49920f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Tue, 7 May 2019 17:37:14 +0800 Subject: [PATCH 11/39] init --- .../stylefeng/roses/core/reqres/response/ResponseData.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java index abca216..2b11ab2 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java @@ -25,7 +25,7 @@ import lombok.Data; * @Date 2018/1/4 22:37 */ @Data -public class ResponseData { +public class ResponseData { public static final String DEFAULT_SUCCESS_MESSAGE = "请求成功"; @@ -53,12 +53,12 @@ public class ResponseData { /** * 响应对象 */ - private Object data; + private T data; public ResponseData() { } - public ResponseData(Boolean success, Integer code, String message, Object data) { + public ResponseData(Boolean success, Integer code, String message, T data) { this.success = success; this.code = code; this.message = message; -- Gitee From b194db403a7a747be95f3fecce5dd20c78feec88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Wed, 8 May 2019 23:29:55 +0800 Subject: [PATCH 12/39] swagger --- kernel-core/pom.xml | 8 ++++++++ .../roses/core/reqres/request/RequestData.java | 4 ++++ kernel-model/pom.xml | 9 +++++++++ .../kernel/model/api/base/AbstractBaseRequest.java | 9 +++++---- pom.xml | 13 ++++++++++++- 5 files changed, 38 insertions(+), 5 deletions(-) diff --git a/kernel-core/pom.xml b/kernel-core/pom.xml index 609c87b..9ecccaf 100644 --- a/kernel-core/pom.xml +++ b/kernel-core/pom.xml @@ -110,5 +110,13 @@ true + + io.springfox + springfox-swagger2 + + + io.springfox + springfox-swagger-ui + \ No newline at end of file diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java index ab23bc0..a273363 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java @@ -20,6 +20,7 @@ import cn.hutool.core.util.StrUtil; import cn.stylefeng.roses.kernel.model.api.base.AbstractBaseRequest; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; @@ -39,16 +40,19 @@ public class RequestData extends AbstractBaseRequest implements Serializable { /** * 封装前端请求的json数据 */ + @ApiModelProperty(hidden = true) private JSONObject data; /** * 客户端请求的ip */ + @ApiModelProperty(hidden = true) private String ip; /** * 客户端请求的地址 */ + @ApiModelProperty(hidden = true) private String url; // private Class getTClass() { diff --git a/kernel-model/pom.xml b/kernel-model/pom.xml index ef7e45d..1396003 100644 --- a/kernel-model/pom.xml +++ b/kernel-model/pom.xml @@ -36,6 +36,15 @@ spring-boot-configuration-processor true + + + io.springfox + springfox-swagger2 + + + io.springfox + springfox-swagger-ui + diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java index 6badbdf..5f1fd82 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java @@ -16,8 +16,8 @@ package cn.stylefeng.roses.kernel.model.api.base; import cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam; -import lombok.Getter; -import lombok.Setter; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; /** * 远程服务的参数的基类 @@ -25,18 +25,19 @@ import lombok.Setter; * @author fengshuonan * @date 2018-08-06-下午4:22 */ -@Getter -@Setter +@Data public abstract class AbstractBaseRequest implements BaseValidatingParam { /** * 唯一请求号 */ + @ApiModelProperty(hidden = true) private String requestNo; /** * 业务节点id */ + @ApiModelProperty(hidden = true) private String spanId; } diff --git a/pom.xml b/pom.xml index 4630565..8290b62 100644 --- a/pom.xml +++ b/pom.xml @@ -44,6 +44,7 @@ 4.4.0 2.1.3 1.18.6 + 2.9.2 @@ -130,7 +131,17 @@ spring-boot-admin-starter-client ${spring.boot.admin} - + + + io.springfox + springfox-swagger2 + ${swagger.version} + + + io.springfox + springfox-swagger-ui + ${swagger.version} + -- Gitee From 3ffb4835a7afc167be98525a55373c7059f464a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Thu, 16 May 2019 16:46:05 +0800 Subject: [PATCH 13/39] =?UTF-8?q?=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel-core/pom.xml | 5 +++++ .../base/warpper/BaseControllerWrapper.java | 2 +- .../roses/core/page/PageFactory.java | 1 - .../stylefeng/roses/core}/page/PageQuery.java | 5 +++-- .../roses/core}/page/PageResult.java | 19 +++++++++++++------ pom.xml | 5 +++++ 6 files changed, 27 insertions(+), 10 deletions(-) rename {kernel-model/src/main/java/cn/stylefeng/roses/kernel/model => kernel-core/src/main/java/cn/stylefeng/roses/core}/page/PageQuery.java (90%) rename {kernel-model/src/main/java/cn/stylefeng/roses/kernel/model => kernel-core/src/main/java/cn/stylefeng/roses/core}/page/PageResult.java (71%) diff --git a/kernel-core/pom.xml b/kernel-core/pom.xml index 9ecccaf..57e0a27 100644 --- a/kernel-core/pom.xml +++ b/kernel-core/pom.xml @@ -110,6 +110,11 @@ true + + com.google.guava + guava + + io.springfox springfox-swagger2 diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java index 828bd16..d47dabf 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java @@ -15,7 +15,7 @@ */ package cn.stylefeng.roses.core.base.warpper; -import cn.stylefeng.roses.kernel.model.page.PageResult; +import cn.stylefeng.roses.core.page.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util.List; diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java index 92f4bc2..a6deda5 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java @@ -19,7 +19,6 @@ import cn.stylefeng.roses.core.context.RequestDataHolder; import cn.stylefeng.roses.core.reqres.request.RequestData; import cn.stylefeng.roses.core.util.HttpContext; import cn.stylefeng.roses.core.util.ToolUtil; -import cn.stylefeng.roses.kernel.model.page.PageQuery; import cn.stylefeng.roses.kernel.model.util.ValidateUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.base.CaseFormat; diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/page/PageQuery.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java similarity index 90% rename from kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/page/PageQuery.java rename to kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java index 3e346d7..bce25b4 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/page/PageQuery.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java @@ -13,8 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package cn.stylefeng.roses.kernel.model.page; +package cn.stylefeng.roses.core.page; +import cn.stylefeng.roses.core.reqres.request.RequestQuery; import lombok.Data; /** @@ -24,7 +25,7 @@ import lombok.Data; * @date 2017-11-08-上午11:18 */ @Data -public class PageQuery { +public class PageQuery extends RequestQuery { /** * 每页的条数 diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/page/PageResult.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java similarity index 71% rename from kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/page/PageResult.java rename to kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java index be6c58b..63bd310 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/page/PageResult.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package cn.stylefeng.roses.kernel.model.page; +package cn.stylefeng.roses.core.page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.Data; @@ -32,9 +32,9 @@ public class PageResult implements Serializable { private static final long serialVersionUID = -4071521319254024213L; - private Integer page = 1;// 要查找第几页 - private Integer pageSize = 20;// 每页显示多少条 - private Integer totalPage = 0;// 总页数 + private Long page = 1L;// 要查找第几页 + private Long pageSize = 20L;// 每页显示多少条 + private Long totalPage = 0L;// 总页数 private Long totalRows = 0L;// 总记录数 private List rows;// 结果集 @@ -44,8 +44,15 @@ public class PageResult implements Serializable { public PageResult(Page page) { this.setRows(page.getRecords()); this.setTotalRows(page.getTotal()); - this.setPage((int) page.getCurrent()); - this.setPageSize((int) page.getSize()); + this.setPage(page.getCurrent()); + this.setPageSize(page.getSize()); + } + + public PageResult(List rows, Long page, Long pageSize, Long totalRows, Long totalPage) { + this.setRows(rows); + this.setTotalRows(totalRows); + this.setPage(page); + this.setPageSize(pageSize); } } diff --git a/pom.xml b/pom.xml index 8290b62..c40ed80 100644 --- a/pom.xml +++ b/pom.xml @@ -131,6 +131,11 @@ spring-boot-admin-starter-client ${spring.boot.admin} + + com.google.guava + guava + 27.1-jre + io.springfox -- Gitee From add975c569eeb9d1618d61e8dfbff47272cf68ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Thu, 30 May 2019 17:44:42 +0800 Subject: [PATCH 14/39] =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logger/chain/aop/ChainOnConsumerAop.java | 31 ++++++++++++------- .../chain/aop/ChainOnControllerAop.java | 19 +++++++++--- .../logger/chain/aop/ChainOnProviderAop.java | 19 +++++++++--- 3 files changed, 48 insertions(+), 21 deletions(-) diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java index 1fb37e0..bb1734d 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java @@ -22,6 +22,8 @@ import cn.stylefeng.roses.kernel.logger.chain.context.TraceIdHolder; import cn.stylefeng.roses.kernel.logger.chain.enums.RpcPhaseEnum; import cn.stylefeng.roses.kernel.logger.util.TraceUtil; import cn.stylefeng.roses.kernel.model.api.base.AbstractBaseRequest; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.serializer.SerializerFeature; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.Signature; import org.aspectj.lang.annotation.Around; @@ -51,7 +53,16 @@ public class ChainOnConsumerAop { } @Around("cutService()") - public Object sessionKit(ProceedingJoinPoint point) throws Throwable { + public Object cutService(ProceedingJoinPoint point) throws Throwable { + + long begin = System.currentTimeMillis(); + if (logger.isDebugEnabled()) { + logger.debug("开始记录consumer aop耗时!"); + } + + if (logger.isDebugEnabled()) { + logger.debug("{} 开始调用--> {} 参数:{}", point.getSignature().getDeclaringTypeName(), point.getSignature().getName(), JSONObject.toJSONStringWithDateFormat(point.getArgs(), "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue)); + } MethodSignature methodSignature = null; Signature signature = point.getSignature(); @@ -59,10 +70,6 @@ public class ChainOnConsumerAop { methodSignature = (MethodSignature) signature; } - long begin = System.currentTimeMillis(); - if (logger.isDebugEnabled()) { - logger.debug("开始记录consumer aop耗时!"); - } //获取当前节点的spanId String currentSpanId = SpanIdHolder.get(); @@ -74,7 +81,7 @@ public class ChainOnConsumerAop { String traceId = TraceIdHolder.get(); if (logger.isDebugEnabled()) { - logger.debug("consumer aop 获取参数!" + (System.currentTimeMillis() - begin)); + logger.debug("consumer aop 获取参数!耗时:{}ms", (System.currentTimeMillis() - begin)); } try { @@ -86,19 +93,21 @@ public class ChainOnConsumerAop { setRequestParam(point); if (logger.isDebugEnabled()) { - logger.debug("consumer aop 开始调用远程服务前!" + (System.currentTimeMillis() - begin)); + logger.debug("consumer aop 开始调用远程服务前!耗时:{}ms", (System.currentTimeMillis() - begin)); } Object result = point.proceed(); if (logger.isDebugEnabled()) { - logger.debug("consumer aop 调用完远程服务!" + (System.currentTimeMillis() - begin)); + logger.debug("consumer aop 调用完远程服务!耗时:{}ms", (System.currentTimeMillis() - begin)); } if (logger.isDebugEnabled()) { - logger.debug("consumer aop 发送调用成功!" + (System.currentTimeMillis() - begin)); + logger.debug("consumer aop 发送调用成功!耗时:{}ms", (System.currentTimeMillis() - begin)); + } + if (logger.isDebugEnabled()) { + logger.debug("{} 调用结束<-- {} 返回值:{} 耗时:{}ms", point.getSignature().getDeclaringTypeName(), point.getSignature().getName(), JSONObject.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue), (System.currentTimeMillis() - begin)); } - return result; } catch (Throwable exception) { @@ -109,7 +118,7 @@ public class ChainOnConsumerAop { TraceUtil.trace(methodSignature, RpcPhaseEnum.EP2, traceId, currentSpanId, parentSpanId, exceptionMsg); if (logger.isDebugEnabled()) { - logger.debug("consumer aop 记录完错误日志!" + (System.currentTimeMillis() - begin)); + logger.debug("consumer aop 记录完错误日志!耗时:{}ms", (System.currentTimeMillis() - begin)); } throw exception; diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java index ec12e23..a6a428b 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java @@ -25,6 +25,8 @@ import cn.stylefeng.roses.kernel.logger.chain.enums.RpcPhaseEnum; import cn.stylefeng.roses.kernel.logger.sql.log.SqlHolder; import cn.stylefeng.roses.kernel.logger.util.TraceUtil; import cn.stylefeng.roses.kernel.model.auth.context.LoginUserHolder; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.Signature; @@ -65,13 +67,17 @@ public class ChainOnControllerAop { * */ @Around("cutService()") - public Object sessionKit(ProceedingJoinPoint point) throws Throwable { + public Object cutService(ProceedingJoinPoint point) throws Throwable { long begin = System.currentTimeMillis(); if (logger.isDebugEnabled()) { logger.debug("开始记录controller aop耗时!"); } + if (logger.isDebugEnabled()) { + logger.debug("{} 开始调用--> {} 参数:{}", point.getSignature().getDeclaringTypeName(), point.getSignature().getName(), JSONObject.toJSONStringWithDateFormat(point.getArgs(), "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue)); + } + //获取拦截方法的参数 Object[] methodParams = point.getArgs(); @@ -94,21 +100,24 @@ public class ChainOnControllerAop { LoginUserHolder.init(); if (logger.isDebugEnabled()) { - logger.debug("controller aop 获取参数!" + (System.currentTimeMillis() - begin)); + logger.debug("controller aop 获取参数!耗时:{}ms", (System.currentTimeMillis() - begin)); } try { if (logger.isDebugEnabled()) { - logger.debug("controller aop 开始执行控制器之前!" + (System.currentTimeMillis() - begin)); + logger.debug("controller aop 开始执行控制器之前!耗时:{}ms", (System.currentTimeMillis() - begin)); } Object result = point.proceed(); if (logger.isDebugEnabled()) { - logger.debug("controller aop 执行控制器成功完成!" + (System.currentTimeMillis() - begin)); + logger.debug("controller aop 执行控制器成功完成!耗时:{}ms", (System.currentTimeMillis() - begin)); } + if (logger.isDebugEnabled()) { + logger.debug("{} 调用结束<-- {} 返回值:{} 耗时:{}ms", point.getSignature().getDeclaringTypeName(), point.getSignature().getName(), JSONObject.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue), (System.currentTimeMillis() - begin)); + } return result; } catch (Throwable exception) { @@ -116,7 +125,7 @@ public class ChainOnControllerAop { String exceptionMsg = ToolUtil.getExceptionMsg(exception); if (logger.isDebugEnabled()) { - logger.debug("controller aop 记录完错误日志!" + (System.currentTimeMillis() - begin)); + logger.debug("controller aop 记录完错误日志!耗时:{}ms", (System.currentTimeMillis() - begin)); } MethodSignature methodSignature = null; diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java index dc1d4a2..25ca798 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java @@ -25,6 +25,8 @@ import cn.stylefeng.roses.kernel.logger.chain.enums.RpcPhaseEnum; import cn.stylefeng.roses.kernel.logger.util.TraceUtil; import cn.stylefeng.roses.kernel.model.auth.context.LoginUserHolder; import cn.stylefeng.roses.kernel.validator.util.CheckUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.Signature; @@ -66,13 +68,17 @@ public class ChainOnProviderAop { * */ @Around("cutService()") - public Object sessionKit(ProceedingJoinPoint point) throws Throwable { + public Object cutService(ProceedingJoinPoint point) throws Throwable { long begin = System.currentTimeMillis(); if (logger.isDebugEnabled()) { logger.debug("开始记录provider aop耗时!"); } + if (logger.isDebugEnabled()) { + logger.debug("{} 开始调用--> {} 参数:{}", point.getSignature().getDeclaringTypeName(), point.getSignature().getName(), JSONObject.toJSONStringWithDateFormat(point.getArgs(), "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue)); + } + //获取拦截方法的参数 Object[] methodParams = point.getArgs(); @@ -92,7 +98,7 @@ public class ChainOnProviderAop { LoginUserHolder.init(); if (logger.isDebugEnabled()) { - logger.debug("provider aop 获取参数!" + (System.currentTimeMillis() - begin)); + logger.debug("provider aop 获取参数!耗时:{}ms", (System.currentTimeMillis() - begin)); } try { @@ -103,15 +109,18 @@ public class ChainOnProviderAop { } if (logger.isDebugEnabled()) { - logger.debug("provider aop 开始提供远程服务业务!" + (System.currentTimeMillis() - begin)); + logger.debug("provider aop 开始提供远程服务业务!耗时:{}ms", (System.currentTimeMillis() - begin)); } Object result = point.proceed(); if (logger.isDebugEnabled()) { - logger.debug("provider aop 提供远程服务完成!" + (System.currentTimeMillis() - begin)); + logger.debug("provider aop 提供远程服务完成!耗时:{}ms", (System.currentTimeMillis() - begin)); } + if (logger.isDebugEnabled()) { + logger.debug("{} 调用结束<-- {} 返回值:{} 耗时:{}ms", point.getSignature().getDeclaringTypeName(), point.getSignature().getName(), JSONObject.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue), (System.currentTimeMillis() - begin)); + } return result; } catch (Throwable exception) { @@ -119,7 +128,7 @@ public class ChainOnProviderAop { String exceptionMsg = ToolUtil.getExceptionMsg(exception); if (logger.isDebugEnabled()) { - logger.debug("provider aop 记录完错误日志!" + (System.currentTimeMillis() - begin)); + logger.debug("provider aop 记录完错误日志!耗时:{}ms", (System.currentTimeMillis() - begin)); } MethodSignature methodSignature = null; -- Gitee From 3f27d7c0287ff5a9c66b6f4482035c7f8ce61184 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Wed, 5 Jun 2019 14:30:45 +0800 Subject: [PATCH 15/39] =?UTF-8?q?=E6=B3=9B=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../NoneSecurityAutoConfiguration.java | 2 +- .../roses/core/aop/RequestDataAop.java | 2 +- .../core/base/controller/BaseController.java | 2 +- .../base/warpper/BaseControllerWrapper.java | 2 +- .../core/config/WebAutoConfiguration.java | 2 +- .../cache/FastJson2JsonRedisSerializer.java | 2 +- .../roses/core/context/RequestNoContext.java | 2 +- .../converter/RequestDataMessageConvert.java | 2 +- .../roses/core/db/DbInitializer.java | 18 ++++---- .../core/db/listener/InitTableListener.java | 2 +- .../core/feign/RosesFeignErrorDecoder.java | 2 +- .../RosesFeignHeaderProcessInterceptor.java | 2 +- .../mutidatasource/aop/MultiSourceExAop.java | 2 +- .../roses/core/page/PageFactory.java | 8 ++-- .../core/reqres/request/RequestData.java | 2 +- .../reqres/response/ErrorResponseData.java | 10 ++--- .../core/reqres/response/ResponseData.java | 24 +++++----- .../reqres/response/SuccessResponseData.java | 10 ++--- .../treebuild/DefaultTreeBuildFactory.java | 2 +- .../abst/AbstractTreeBuildFactory.java | 10 ++--- .../roses/core/util/HttpContext.java | 44 +++++++++++++++++++ .../cn/stylefeng/roses/core/util/MD5Util.java | 2 +- .../stylefeng/roses/core/util/MvcAdapter.java | 2 +- .../stylefeng/roses/core/util/ToolUtil.java | 36 +++++++-------- .../cn/stylefeng/roses/core/xss/WafKit.java | 2 +- .../kernel/generator/GenerateParams.java | 2 +- .../logger/chain/aop/ChainOnConsumerAop.java | 4 +- .../chain/aop/ChainOnControllerAop.java | 2 +- .../logger/chain/aop/ChainOnProviderAop.java | 2 +- .../chain/context/ParentSpanIdHolder.java | 2 +- .../logger/chain/context/SpanIdContext.java | 2 +- .../logger/chain/context/SpanIdHolder.java | 2 +- .../logger/chain/context/TraceIdHolder.java | 2 +- .../logger/chain/enums/RpcPhaseEnum.java | 2 +- .../config/LoggerAutoConfiguration.java | 2 +- .../logger/entity/SendingCommonLog.java | 2 +- .../kernel/logger/entity/SendingTCLog.java | 2 +- .../kernel/logger/entity/SendingTraceLog.java | 2 +- .../kernel/logger/sql/log/SqlHolder.java | 2 +- .../roses/kernel/logger/util/LogUtil.java | 8 ++-- .../roses/kernel/logger/util/TraceUtil.java | 2 +- .../model/api/base/AbstractBaseRequest.java | 2 +- .../model/auth/context/LoginUserHolder.java | 10 ++--- .../exception/enums/CoreExceptionEnum.java | 2 +- .../roses/kernel/model/tree/Tree.java | 2 +- .../roses/kernel/model/util/ValidateUtil.java | 10 ++--- .../model/validator/BaseValidatingParam.java | 4 +- .../roses/kernel/sign/config/SignConfig.java | 2 +- .../config/properties/SignProperties.java | 2 +- .../kernel/sign/service/SignService.java | 2 +- .../sign/service/impl/SimpleSignService.java | 10 ++--- .../roses/kernel/sign/util/SignFactory.java | 2 +- .../validator/aop/ParamValidateAop.java | 2 +- .../validator/stereotype/ParamValidator.java | 2 +- .../kernel/validator/util/CheckUtil.java | 2 +- 55 files changed, 166 insertions(+), 122 deletions(-) diff --git a/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java b/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java index 3e69878..b537627 100644 --- a/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java +++ b/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java @@ -24,7 +24,7 @@ import org.springframework.security.config.annotation.web.configuration.WebSecur * 默认actuator安全配置 * * @author stylefeng - * @Date 2018/6/26 21:31 + * @date 2018/6/26 21:31 */ @Configuration @ConditionalOnClass(WebSecurityConfigurerAdapter.class) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java index e1ced2b..6a91157 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java @@ -29,7 +29,7 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.REQUEST * 对控制器调用过程中,提供一种RequestData便捷调用的aop * * @author fengshuonan - * @date 2016年11月13日 下午10:15:42 + * @date 2016年11月13日 下午10:15:42 */ @Aspect @Order(REQUEST_DATA_AOP_SORT) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java index 2b469c6..a3b7998 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java @@ -37,7 +37,7 @@ import java.util.Objects; * 控制器基类,封装一些控制器常用的方法 * * @author fengshuonan - * @Date 2018/7/23 下午3:45 + * @date 2018/7/23 下午3:45 */ public class BaseController { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java index d47dabf..83a8251 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java @@ -25,7 +25,7 @@ import java.util.Map; * 控制器查询结果的包装类基类 * * @author fengshuonan - * @date 2017年2月13日 下午10:49:36 + * @date 2017年2月13日 下午10:49:36 */ public abstract class BaseControllerWrapper { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java index 063a553..399c9f7 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java @@ -39,7 +39,7 @@ import java.util.Date; * 默认web配置 * * @author fengshuonan - * @Date 2018/7/24 下午3:27 + * @date 2018/7/24 下午3:27 */ @Configuration @ConditionalOnBean(ServletContext.class) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java index 6c60fda..f9e9970 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java @@ -26,7 +26,7 @@ import java.nio.charset.Charset; * fastjson redis序列化器 * * @author fengshuonan - * @Date 2017/11/7 上午9:20 + * @date 2017/11/7 上午9:20 */ public class FastJson2JsonRedisSerializer implements RedisSerializer { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java index ecb6099..b27ec62 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java @@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletRequest; * 获取当前请求的请求号,没有请求号则生成空串 * * @author fengshuonan - * @date 2018-05-09-下午6:25 + * @date 2018-05-09-下午6:25 */ @Slf4j public class RequestNoContext { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java index e91924a..2043c42 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java @@ -40,7 +40,7 @@ import java.util.Set; * 请求数据统一转化为RequestData * * @author fengshuonan - * @Date 2018/2/21 20:57 + * @date 2018/2/21 20:57 */ @Slf4j public class RequestDataMessageConvert extends AbstractGenericHttpMessageConverter { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java index 665e9e2..e6df8c8 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java @@ -37,7 +37,7 @@ import static cn.stylefeng.roses.kernel.model.exception.enums.CoreExceptionEnum. * 数据库初始化,可初始化表,校验字段,校验表名是否存在等 * * @author fengshuonan - * @date 2018-07-29 22:05 + * @date 2018-07-29 22:05 */ @Slf4j @Getter @@ -61,7 +61,7 @@ public abstract class DbInitializer { * 初始化数据库 * * @author fengshuonan - * @Date 2018/7/30 上午10:30 + * @date 2018/7/30 上午10:30 */ public void dbInit() { @@ -80,7 +80,7 @@ public abstract class DbInitializer { * 初始化表结构 * * @author fengshuonan - * @Date 2018/7/30 上午10:24 + * @date 2018/7/30 上午10:24 */ private void initTable() { @@ -110,7 +110,7 @@ public abstract class DbInitializer { * 校验实体和对应表结构是否有不一致的 * * @author fengshuonan - * @Date 2018/7/30 上午10:24 + * @date 2018/7/30 上午10:24 */ private void fieldsValidate() { @@ -152,7 +152,7 @@ public abstract class DbInitializer { * 反射获取类的所有字段 * * @author fengshuonan - * @Date 2018/7/30 上午10:06 + * @date 2018/7/30 上午10:06 */ private List getClassFields() { Class entityClass = this.getEntityClass(); @@ -169,7 +169,7 @@ public abstract class DbInitializer { * 获取表的字段 * * @author stylefeng - * @Date 2018/7/29 22:49 + * @date 2018/7/29 22:49 */ private String showColumnsSql() { return "SHOW COLUMNS FROM " + this.getTableName(); @@ -179,7 +179,7 @@ public abstract class DbInitializer { * 获取表的初始化语句 * * @author stylefeng - * @Date 2018/7/29 22:10 + * @date 2018/7/29 22:10 */ protected abstract String getTableInitSql(); @@ -187,7 +187,7 @@ public abstract class DbInitializer { * 获取表的名称 * * @author stylefeng - * @Date 2018/7/29 22:10 + * @date 2018/7/29 22:10 */ protected abstract String getTableName(); @@ -195,7 +195,7 @@ public abstract class DbInitializer { * 获取表对应的实体 * * @author stylefeng - * @Date 2018/7/29 22:49 + * @since 2018/7/29 22:49 */ protected abstract Class getEntityClass(); } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java index bc1483b..983706d 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java @@ -27,7 +27,7 @@ import java.util.Map; * 初始化 创建字典表 * * @author wangzhongqiang - * @date 2018/4/23 9:57 + * @date 2018/4/23 9:57 */ @Slf4j public class InitTableListener implements ApplicationListener, Ordered { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java index c6e9dea..dc3daa1 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java @@ -35,7 +35,7 @@ import java.lang.reflect.InvocationTargetException; * roses自己的feign错误解码器(为了feign接收到错误的返回,转化成roses可识别的ServiceException) * * @author stylefeng - * @Date 2018/4/20 23:14 + * @date 2018/4/20 23:14 */ @Slf4j public class RosesFeignErrorDecoder implements ErrorDecoder { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java index 70f3a41..51cd50b 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java @@ -27,7 +27,7 @@ import java.util.Enumeration; * feign远程调用添加header的过滤器 * * @author fengshuonan - * @date 2018-05-07-下午7:25 + * @date 2018-05-07-下午7:25 */ @Slf4j public class RosesFeignHeaderProcessInterceptor implements RequestInterceptor { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java index e413bd4..d63dbdb 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java @@ -18,7 +18,7 @@ import java.lang.reflect.Method; * 多数据源切换的aop * * @author fengshuonan - * @date 2017年3月5日 上午10:22:16 + * @date 2017年3月5日 上午10:22:16 */ @Aspect public class MultiSourceExAop implements Ordered { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java index a6deda5..57cbb04 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java @@ -30,7 +30,7 @@ import javax.servlet.http.HttpServletRequest; * 默认分页参数构建 * * @author fengshuonan - * @date 2017年11月15日13:52:16 + * @date 2017年11月15日13:52:16 */ public class PageFactory { @@ -63,7 +63,7 @@ public class PageFactory { * 默认规则的分页 * * @author fengshuonan - * @Date 2018/7/23 下午4:11 + * @date 2018/7/23 下午4:11 */ public static Page defaultPage() { @@ -114,7 +114,7 @@ public class PageFactory { * 自定义参数的分页 * * @author fengshuonan - * @Date 2018/7/23 下午4:11 + * @date 2018/7/23 下午4:11 */ public static Page createPage(PageQuery pageQuery) { @@ -149,7 +149,7 @@ public class PageFactory { * 获取参数值,通过param或从requestBody中取 * * @author fengshuonan - * @Date 2018/7/25 下午1:12 + * @date 2018/7/25 下午1:12 */ private static String getFieldValue(HttpServletRequest request, String fieldName) { String parameter = request.getParameter(fieldName); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java index a273363..b246052 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestData.java @@ -30,7 +30,7 @@ import java.util.*; * 响应结果封装 * * @author fengshuonan - * @Date 2018/2/11 23:04 + * @since 2018/2/11 23:04 */ @Data public class RequestData extends AbstractBaseRequest implements Serializable { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java index 1f1e83a..61e44b3 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java @@ -1,4 +1,4 @@ -/** +/* * Copyright 2018-2020 stylefeng & fengshuonan (sn93@qq.com) *

* Licensed under the Apache License, Version 2.0 (the "License"); @@ -22,10 +22,10 @@ import lombok.Data; * 请求失败的返回 * * @author stylefeng - * @Date 2018/1/4 22:39 + * @date 2018/1/4 22:39 */ @Data -public class ErrorResponseData extends ResponseData { +public class ErrorResponseData extends ResponseData { /** * 异常的具体类名称 @@ -40,7 +40,7 @@ public class ErrorResponseData extends ResponseData { super(false, code, message, null); } - public ErrorResponseData(Integer code, String message, Object object) { - super(false, code, message, object); + public ErrorResponseData(Integer code, String message, T t) { + super(false, code, message, t); } } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java index 2b11ab2..def3a47 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java @@ -22,7 +22,7 @@ import lombok.Data; * 返回给前台的通用包装 * * @author stylefeng - * @Date 2018/1/4 22:37 + * @date 2018/1/4 22:37 */ @Data public class ResponseData { @@ -65,27 +65,27 @@ public class ResponseData { this.data = data; } - public static SuccessResponseData success() { - return new SuccessResponseData(); + public static ResponseData success() { + return new SuccessResponseData(); } - public static SuccessResponseData success(Object object) { - return new SuccessResponseData(object); + public static ResponseData success(T t) { + return new SuccessResponseData(t); } - public static SuccessResponseData success(Integer code, String message, Object object) { - return new SuccessResponseData(code, message, object); + public static ResponseData success(Integer code, String message, T t) { + return new SuccessResponseData(code, message, t); } - public static ErrorResponseData error(String message) { + public static ResponseData error(String message) { return new ErrorResponseData(message); } - public static ErrorResponseData error(Integer code, String message) { - return new ErrorResponseData(code, message); + public static ResponseData error(Integer code, String message) { + return new ErrorResponseData(code, message); } - public static ErrorResponseData error(Integer code, String message, Object object) { - return new ErrorResponseData(code, message, object); + public static ResponseData error(Integer code, String message, T t) { + return new ErrorResponseData(code, message, t); } } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java index 149c450..60ef838 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java @@ -21,17 +21,17 @@ package cn.stylefeng.roses.core.reqres.response; * @author stylefeng * @Date 2018/1/4 22:38 */ -public class SuccessResponseData extends ResponseData { +public class SuccessResponseData extends ResponseData { public SuccessResponseData() { super(true, DEFAULT_SUCCESS_CODE, DEFAULT_SUCCESS_MESSAGE, null); } - public SuccessResponseData(Object object) { - super(true, DEFAULT_SUCCESS_CODE, DEFAULT_SUCCESS_MESSAGE, object); + public SuccessResponseData(T t) { + super(true, DEFAULT_SUCCESS_CODE, DEFAULT_SUCCESS_MESSAGE, t); } - public SuccessResponseData(Integer code, String message, Object object) { - super(true, code, message, object); + public SuccessResponseData(Integer code, String message, T t) { + super(true, code, message, t); } } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java index d18c929..1bbf121 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java @@ -26,7 +26,7 @@ import java.util.List; * 默认递归工具类,用于遍历有父子关系的节点,例如菜单树,字典树等等 * * @author fengshuonan - * @Date 2018/7/25 下午5:59 + * @date 2018/7/25 下午5:59 */ @Data public class DefaultTreeBuildFactory extends AbstractTreeBuildFactory { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java index 7501886..99459a8 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java @@ -21,7 +21,7 @@ import java.util.List; * 树构建的抽象类,定义构建tree的基本步骤 * * @author fengshuonan - * @Date 2018/7/25 下午5:59 + * @date 2018/7/25 下午5:59 */ public abstract class AbstractTreeBuildFactory { @@ -29,7 +29,7 @@ public abstract class AbstractTreeBuildFactory { * 树节点构建整体过程 * * @author fengshuonan - * @Date 2018/7/26 上午9:45 + * @date 2018/7/26 上午9:45 */ public List doTreeBuild(List nodes) { @@ -47,7 +47,7 @@ public abstract class AbstractTreeBuildFactory { * 构建之前的处理工作 * * @author fengshuonan - * @Date 2018/7/26 上午10:10 + * @date 2018/7/26 上午10:10 */ protected abstract List beforeBuild(List nodes); @@ -55,7 +55,7 @@ public abstract class AbstractTreeBuildFactory { * 具体的构建过程 * * @author fengshuonan - * @Date 2018/7/26 上午10:11 + * @date 2018/7/26 上午10:11 */ protected abstract List executeBuilding(List nodes); @@ -63,7 +63,7 @@ public abstract class AbstractTreeBuildFactory { * 构建之后的处理工作 * * @author fengshuonan - * @Date 2018/7/26 上午10:11 + * @date 2018/7/26 上午10:11 */ protected abstract List afterBuild(List nodes); } \ No newline at end of file diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java index 2a52568..4702fd8 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java @@ -18,6 +18,7 @@ package cn.stylefeng.roses.core.util; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; +import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Enumeration; @@ -98,4 +99,47 @@ public class HttpContext { return values; } + public static Cookie getCookie(String name) { + HttpServletRequest request = getRequest(); + Cookie[] cookies = request.getCookies(); + if (null != cookies) { + for (Cookie cookie : cookies) { + if (cookie.getName().equals(name)) { + return cookie; + } + } + } + return null; + } + + /* + * 先判断header中是否有Authorization字段, + * 如果header中没有这个字段,则检查请求参数中是否带token, + * 如果任意一个地方有这个值,则返回这个值 + * 两个地方都没有token,则抛出没有登录用户异常 + */ + public static String getRequestToken() { + HttpServletRequest request = getRequest(); + if (request == null) { + return null; + } + + //如果请求是在http环境下,则有request对象 + String authorization = request.getHeader("Authorization"); + if (ToolUtil.isNotEmpty(authorization)) { + return authorization; + } else { + String token = request.getParameter("token"); + if (ToolUtil.isNotEmpty(token)) { + return token; + } else { + Cookie cookie = getCookie("token"); + if (cookie != null) { + return cookie.getValue(); + } + return null; + } + } + } + } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java index f938b3d..62b7a29 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java @@ -7,7 +7,7 @@ import java.security.NoSuchAlgorithmException; * MD5加密类(封装jdk自带的md5加密方法) * * @author fengshuonan - * @date 2016年12月2日 下午4:14:22 + * @date 2016年12月2日 下午4:14:22 */ public class MD5Util { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java index c76dc12..53bb904 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java @@ -31,7 +31,7 @@ import java.util.List; * 统一请求转化器默认配置 * * @author fengshuonan - * @Date 2018/2/24 14:39 + * @date 2018/2/24 14:39 */ public class MvcAdapter { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java index 68e3cfc..f512e14 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java @@ -42,7 +42,7 @@ import java.util.Random; * 高频方法集合 * * @author fengshuonan - * @Date 2018/3/18 21:55 + * @date 2018/3/18 21:55 */ public class ToolUtil extends ValidateUtil { @@ -55,7 +55,7 @@ public class ToolUtil extends ValidateUtil { * 获取随机字符,自定义长度 * * @author fengshuonan - * @Date 2018/3/18 21:55 + * @date 2018/3/18 21:55 */ public static String getRandomString(int length) { String base = "abcdefghijklmnopqrstuvwxyz0123456789"; @@ -72,7 +72,7 @@ public class ToolUtil extends ValidateUtil { * md5加密(加盐) * * @author fengshuonan - * @Date 2018/3/18 21:56 + * @date 2018/3/18 21:56 */ public static String md5Hex(String password, String salt) { return md5Hex(password + salt); @@ -82,7 +82,7 @@ public class ToolUtil extends ValidateUtil { * md5加密(不加盐) * * @author fengshuonan - * @Date 2018/3/18 21:56 + * @date 2018/3/18 21:56 */ public static String md5Hex(String str) { try { @@ -105,7 +105,7 @@ public class ToolUtil extends ValidateUtil { * 过滤掉掉字符串中的空白 * * @author fengshuonan - * @Date 2018/3/22 15:16 + * @date 2018/3/22 15:16 */ public static String removeWhiteSpace(String value) { if (isEmpty(value)) { @@ -119,7 +119,7 @@ public class ToolUtil extends ValidateUtil { * 获取某个时间间隔以前的时间 时间格式:yyyy-MM-dd HH:mm:ss * * @author stylefeng - * @Date 2018/5/8 22:05 + * @date 2018/5/8 22:05 */ public static String getCreateTimeBefore(int seconds) { long currentTimeInMillis = Calendar.getInstance().getTimeInMillis(); @@ -132,7 +132,7 @@ public class ToolUtil extends ValidateUtil { * 获取异常的具体信息 * * @author fengshuonan - * @Date 2017/3/30 9:21 + * @date 2017/3/30 9:21 * @version 2.0 */ public static String getExceptionMsg(Throwable e) { @@ -153,7 +153,7 @@ public class ToolUtil extends ValidateUtil { * 获取应用名称 * * @author fengshuonan - * @Date 2018/5/12 上午10:24 + * @date 2018/5/12 上午10:24 */ public static String getApplicationName() { try { @@ -175,7 +175,7 @@ public class ToolUtil extends ValidateUtil { * 获取ip地址 * * @author fengshuonan - * @Date 2018/5/15 下午6:36 + * @date 2018/5/15 下午6:36 */ public static String getIP() { try { @@ -207,7 +207,7 @@ public class ToolUtil extends ValidateUtil { * 拷贝属性,为null的不拷贝 * * @author fengshuonan - * @Date 2018/7/25 下午4:41 + * @date 2018/7/25 下午4:41 */ public static void copyProperties(Object source, Object target) { BeanUtil.copyProperties(source, target, CopyOptions.create().setIgnoreNullValue(true)); @@ -217,7 +217,7 @@ public class ToolUtil extends ValidateUtil { * 判断是否是windows操作系统 * * @author stylefeng - * @Date 2017/5/24 22:34 + * @date 2017/5/24 22:34 */ public static Boolean isWinOs() { String os = System.getProperty("os.name"); @@ -232,7 +232,7 @@ public class ToolUtil extends ValidateUtil { * 获取临时目录 * * @author stylefeng - * @Date 2017/5/24 22:35 + * @date 2017/5/24 22:35 */ public static String getTempPath() { return System.getProperty("java.io.tmpdir"); @@ -242,7 +242,7 @@ public class ToolUtil extends ValidateUtil { * 把一个数转化为int * * @author fengshuonan - * @Date 2017/11/15 下午11:10 + * @date 2017/11/15 下午11:10 */ public static Integer toInt(Object val) { if (val instanceof Double) { @@ -258,7 +258,7 @@ public class ToolUtil extends ValidateUtil { * 是否为数字 * * @author fengshuonan - * @Date 2017/11/15 下午11:10 + * @date 2017/11/15 下午11:10 */ public static boolean isNum(Object obj) { try { @@ -273,7 +273,7 @@ public class ToolUtil extends ValidateUtil { * 获取项目路径 * * @author fengshuonan - * @Date 2017/11/15 下午11:10 + * @date 2017/11/15 下午11:10 */ public static String getWebRootPath(String filePath) { try { @@ -295,7 +295,7 @@ public class ToolUtil extends ValidateUtil { * 获取文件后缀名 不包含点 * * @author fengshuonan - * @Date 2017/11/15 下午11:10 + * @date 2017/11/15 下午11:10 */ public static String getFileSuffix(String fileWholeName) { if (ToolUtil.isEmpty(fileWholeName)) { @@ -309,7 +309,7 @@ public class ToolUtil extends ValidateUtil { * 判断一个对象是否是时间类型 * * @author stylefeng - * @Date 2017/4/18 12:55 + * @date 2017/4/18 12:55 */ public static String dateType(Object o) { if (o instanceof Date) { @@ -323,7 +323,7 @@ public class ToolUtil extends ValidateUtil { * 当前时间 * * @author stylefeng - * @Date 2017/5/7 21:56 + * @date 2017/5/7 21:56 */ public static String currentTime() { return DateUtil.formatDateTime(new Date()); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java index 0f01459..5e6d171 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java @@ -21,7 +21,7 @@ import java.util.regex.Pattern; * Web防火墙工具类 *

* @author hubin - * @Date 2014-5-8 + * @date 2014-5-8 */ public class WafKit { diff --git a/kernel-generator/src/main/java/cn/stylefeng/roses/kernel/generator/GenerateParams.java b/kernel-generator/src/main/java/cn/stylefeng/roses/kernel/generator/GenerateParams.java index 78acb8f..bfcd261 100644 --- a/kernel-generator/src/main/java/cn/stylefeng/roses/kernel/generator/GenerateParams.java +++ b/kernel-generator/src/main/java/cn/stylefeng/roses/kernel/generator/GenerateParams.java @@ -21,7 +21,7 @@ import lombok.Data; * 代码生成所需要传递的参数 * * @author fengshuonan - * @date 2018-07-20-下午1:09 + * @date 2018-07-20-下午1:09 */ @Data public class GenerateParams { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java index bb1734d..7985bcb 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnConsumerAop.java @@ -40,7 +40,7 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.CHAIN_O * 基于调用链的服务治理系统的设计(feign远程调用层的aop处理) * * @author fengshuonan - * @date 2018年05月15日14:58:44 + * @date 2018年05月15日14:58:44 */ @Aspect @Order(CHAIN_ON_CONSUMMER_SORT) @@ -131,7 +131,7 @@ public class ChainOnConsumerAop { * 设置被拦截方法的参数内部的spanId和RequestNo的值 * * @author fengshuonan - * @Date 2018/8/7 下午1:04 + * @date 2018/8/7 下午1:04 */ private void setRequestParam(ProceedingJoinPoint point) { Object[] params = point.getArgs(); diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java index a6a428b..137ddec 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnControllerAop.java @@ -44,7 +44,7 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.CHAIN_O * 基于调用链的服务治理系统的设计(控制器层的aop处理) * * @author fengshuonan - * @date 2018年05月15日14:58:44 + * @date 2018年05月15日14:58:44 */ @Aspect @Order(CHAIN_ON_CONTROLLER_SORT) diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java index 25ca798..a254710 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/aop/ChainOnProviderAop.java @@ -45,7 +45,7 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.CHAIN_O * 基于调用链的服务治理系统的设计(服务提供者的aop处理) * * @author fengshuonan - * @date 2018年05月15日14:58:44 + * @date 2018年05月15日14:58:44 */ @Aspect @Order(CHAIN_ON_PROVIDER_SORT) diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/ParentSpanIdHolder.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/ParentSpanIdHolder.java index e841032..75ce2f3 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/ParentSpanIdHolder.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/ParentSpanIdHolder.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.kernel.logger.chain.context; * 基于调用链的服务治理系统的设计(requestNo以及当前节点的spanId和parentSpanId的临时存储器) * * @author fengshuonan - * @date 2017年3月5日 上午9:10:58 + * @date 2017年3月5日 上午9:10:58 */ public class ParentSpanIdHolder { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdContext.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdContext.java index b2a1187..083f60b 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdContext.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdContext.java @@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletRequest; * header中的spanId的上下文,获取上个请求的spanId,和holder的区别是,holder放的是本应用的spanId * * @author fengshuonan - * @date 2018-05-09-下午6:25 + * @date 2018-05-09-下午6:25 */ @Slf4j public class SpanIdContext { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdHolder.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdHolder.java index 1c3987e..4158b00 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdHolder.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/SpanIdHolder.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.kernel.logger.chain.context; * 基于调用链的服务治理系统的设计(requestNo以及当前节点的spanId和parentSpanId的临时存储器) * * @author fengshuonan - * @date 2017年3月5日 上午9:10:58 + * @date 2017年3月5日 上午9:10:58 */ public class SpanIdHolder { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/TraceIdHolder.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/TraceIdHolder.java index a4bf74e..03dbc45 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/TraceIdHolder.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/context/TraceIdHolder.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.kernel.logger.chain.context; * 基于调用链的服务治理系统的设计(requestNo以及当前节点的spanId和parentSpanId的临时存储器) * * @author fengshuonan - * @date 2017年3月5日 上午9:10:58 + * @date 2017年3月5日 上午9:10:58 */ public class TraceIdHolder { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/enums/RpcPhaseEnum.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/enums/RpcPhaseEnum.java index c50c765..f4c2cea 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/enums/RpcPhaseEnum.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/chain/enums/RpcPhaseEnum.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.kernel.logger.chain.enums; * 远程调用阶段类型枚举 * * @author fengshuonan - * @date 2018-05-15-下午3:51 + * @date 2018-05-15-下午3:51 */ public enum RpcPhaseEnum { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/config/LoggerAutoConfiguration.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/config/LoggerAutoConfiguration.java index 37c3f65..6b2ef17 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/config/LoggerAutoConfiguration.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/config/LoggerAutoConfiguration.java @@ -29,7 +29,7 @@ import static cn.stylefeng.roses.kernel.model.constants.ConfigPrefixConstants.LO * 默认kafka消息队列日志 * * @author fengshuonan - * @date 2016年11月12日 下午4:48:10 + * @date 2016年11月12日 下午4:48:10 */ @Configuration public class LoggerAutoConfiguration { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingCommonLog.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingCommonLog.java index f77099f..7e3283c 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingCommonLog.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingCommonLog.java @@ -21,7 +21,7 @@ import lombok.Data; * 日志实体类 * * @author fengshuonan - * @date 2018-04-24 13:45 + * @date 2018-04-24 13:45 */ @Data public class SendingCommonLog { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTCLog.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTCLog.java index f7c49af..f7b58b3 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTCLog.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTCLog.java @@ -23,7 +23,7 @@ import java.util.Date; * 请求时间记录日志 * * @author fengshuonan - * @Date 2018/7/16 下午5:13 + * @date 2018/7/16 下午5:13 */ @Data public class SendingTCLog { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTraceLog.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTraceLog.java index ac3969f..fc3dcd0 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTraceLog.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/entity/SendingTraceLog.java @@ -21,7 +21,7 @@ import lombok.Data; * 日志链实体类 * * @author fengshuonan - * @date 2018-05-16 09:40 + * @date 2018-05-16 09:40 */ @Data public class SendingTraceLog { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/sql/log/SqlHolder.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/sql/log/SqlHolder.java index e0b4c68..9b9006c 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/sql/log/SqlHolder.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/sql/log/SqlHolder.java @@ -22,7 +22,7 @@ import java.util.List; * 执行过程sql存放器 * * @author fengshuonan - * @Date 2018/7/3 下午1:23 + * @date 2018/7/3 下午1:23 */ public class SqlHolder { diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/LogUtil.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/LogUtil.java index 49cafbf..a4a9fdf 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/LogUtil.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/LogUtil.java @@ -36,7 +36,7 @@ import java.io.StringWriter; * 日志记录工具 * * @author fengshuonan - * @date 2018-01-16 15:00 + * @date 2018-01-16 15:00 */ public class LogUtil { @@ -80,7 +80,7 @@ public class LogUtil { * 记录日志(不需要传递请求号) * * @author fengshuonan - * @Date 2018/1/16 15:02 + * @date 2018/1/16 15:02 */ private static void doLog(LogLevel level, RequestData requestData, String message, Throwable exception) { doLog(TraceIdHolder.get(), level, requestData, message, exception); @@ -90,7 +90,7 @@ public class LogUtil { * 记录日志(需要传递请求号,目前用在网关) * * @author fengshuonan - * @Date 2018/1/16 15:02 + * @date 2018/1/16 15:02 */ private static void doLog(String requestNo, LogLevel level, RequestData requestData, String message, Throwable exception) { @@ -179,7 +179,7 @@ public class LogUtil { * 堆栈异常信息转化为字符串形式 * * @author fengshuonan - * @date 2018-05-02 16:23 + * @date 2018-05-02 16:23 */ private static String getErrorInfoFromException(Throwable e) { StringWriter sw = new StringWriter(); diff --git a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/TraceUtil.java b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/TraceUtil.java index d02a615..f7f362d 100644 --- a/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/TraceUtil.java +++ b/kernel-logger/src/main/java/cn/stylefeng/roses/kernel/logger/util/TraceUtil.java @@ -33,7 +33,7 @@ import java.util.Date; * 日志记录工具 * * @author fengshuonan - * @date 2018-01-16 15:00 + * @date 2018-01-16 15:00 */ public class TraceUtil { diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java index 5f1fd82..bf2c503 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/api/base/AbstractBaseRequest.java @@ -23,7 +23,7 @@ import lombok.Data; * 远程服务的参数的基类 * * @author fengshuonan - * @date 2018-08-06-下午4:22 + * @date 2018-08-06-下午4:22 */ @Data public abstract class AbstractBaseRequest implements BaseValidatingParam { diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/auth/context/LoginUserHolder.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/auth/context/LoginUserHolder.java index ae9b098..383dd73 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/auth/context/LoginUserHolder.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/auth/context/LoginUserHolder.java @@ -26,7 +26,7 @@ import cn.stylefeng.roses.kernel.model.auth.AbstractLoginUser; * * * @author fengshuonan - * @Date 2018/7/3 下午5:29 + * @date 2018/7/3 下午5:29 */ public class LoginUserHolder { @@ -37,7 +37,7 @@ public class LoginUserHolder { * 初始化 * * @author fengshuonan - * @Date 2018/7/4 下午12:31 + * @date 2018/7/4 下午12:31 */ public static void init() { OPEN_UP_FLAG.set(true); @@ -47,7 +47,7 @@ public class LoginUserHolder { * 这个方法如果OPEN_UP_FLAG标识没开启,则会set失效 * * @author fengshuonan - * @Date 2018/7/4 上午11:09 + * @date 2018/7/4 上午11:09 */ public static void set(AbstractLoginUser abstractLoginUser) { Boolean openUpFlag = OPEN_UP_FLAG.get(); @@ -62,7 +62,7 @@ public class LoginUserHolder { * 这个方法如果OPEN_UP_FLAG标识没开启,则会get值为null * * @author fengshuonan - * @Date 2018/7/4 上午11:09 + * @date 2018/7/4 上午11:09 */ public static AbstractLoginUser get() { Boolean openUpFlag = OPEN_UP_FLAG.get(); @@ -77,7 +77,7 @@ public class LoginUserHolder { * 删除保存的用户 * * @author fengshuonan - * @Date 2018/7/24 下午3:28 + * @date 2018/7/24 下午3:28 */ public static void remove() { OPEN_UP_FLAG.remove(); diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/exception/enums/CoreExceptionEnum.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/exception/enums/CoreExceptionEnum.java index 96119ed..18bbffa 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/exception/enums/CoreExceptionEnum.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/exception/enums/CoreExceptionEnum.java @@ -22,7 +22,7 @@ import cn.stylefeng.roses.kernel.model.exception.AbstractBaseExceptionEnum; * core模块的异常集合 * * @author stylefeng - * @Date 2018/1/4 22:40 + * @date 2018/1/4 22:40 */ public enum CoreExceptionEnum implements AbstractBaseExceptionEnum { diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/tree/Tree.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/tree/Tree.java index 658763f..f12e9c1 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/tree/Tree.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/tree/Tree.java @@ -21,7 +21,7 @@ import java.util.List; * 构造树节点的接口规范 * * @author fengshuonan - * @date 2018-07-25-下午5:59 + * @date 2018-07-25-下午5:59 */ public interface Tree { diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/util/ValidateUtil.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/util/ValidateUtil.java index 2247ff0..fe916a6 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/util/ValidateUtil.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/util/ValidateUtil.java @@ -23,7 +23,7 @@ import java.util.Set; * 空参数校验工具类 * * @author fengshuonan - * @date 2018-08-08-下午3:15 + * @date 2018-08-08-下午3:15 */ public class ValidateUtil { @@ -31,7 +31,7 @@ public class ValidateUtil { * 对象是否不为空(新增) * * @author fengshuonan - * @Date 2018/3/18 21:57 + * @date 2018/3/18 21:57 */ public static boolean isNotEmpty(Object o) { return !isEmpty(o); @@ -41,7 +41,7 @@ public class ValidateUtil { * 对象是否为空 * * @author fengshuonan - * @Date 2018/3/18 21:57 + * @date 2018/3/18 21:57 */ public static boolean isEmpty(Object o) { if (o == null) { @@ -83,7 +83,7 @@ public class ValidateUtil { * 对象组中是否存在空对象 * * @author fengshuonan - * @Date 2018/3/18 21:59 + * @date 2018/3/18 21:59 */ public static boolean isOneEmpty(Object... os) { for (Object o : os) { @@ -98,7 +98,7 @@ public class ValidateUtil { * 对象组中是否全是空对象 * * @author fengshuonan - * @Date 2018/3/18 21:59 + * @date 2018/3/18 21:59 */ public static boolean isAllEmpty(Object... os) { for (Object o : os) { diff --git a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java index a9a40bb..c1362b0 100644 --- a/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java +++ b/kernel-model/src/main/java/cn/stylefeng/roses/kernel/model/validator/BaseValidatingParam.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.kernel.model.validator; * 用于参数校验的接口 * * @author fengshuonan - * @date 2018-08-07-上午10:13 + * @date 2018-08-07-上午10:13 */ public interface BaseValidatingParam { @@ -28,7 +28,7 @@ public interface BaseValidatingParam { * * @return String 如果返回null代表没有为空的参数,校验通过,如果不为空,则代表有空的字段,并且返回的内容是为空的提示信息 * @author fengshuonan - * @Date 2018/8/6 下午4:28 + * @date 2018/8/6 下午4:28 */ default String checkParam() { return null; diff --git a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/SignConfig.java b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/SignConfig.java index 4dc5f4c..b818196 100644 --- a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/SignConfig.java +++ b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/SignConfig.java @@ -21,7 +21,7 @@ import org.springframework.context.annotation.Configuration; * 签名的自动配置 * * @author fengshuonan - * @date 2018-07-23-下午5:55 + * @date 2018-07-23-下午5:55 */ @Configuration public class SignConfig { diff --git a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/properties/SignProperties.java b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/properties/SignProperties.java index 4d74f37..c9a843c 100644 --- a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/properties/SignProperties.java +++ b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/config/properties/SignProperties.java @@ -21,7 +21,7 @@ import lombok.Data; * 签名校验需要的配置 * * @author fengshuonan - * @Date 2018/5/8 下午2:24 + * @date 2018/5/8 下午2:24 */ @Data public class SignProperties { diff --git a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/SignService.java b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/SignService.java index 555d90a..2d26892 100644 --- a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/SignService.java +++ b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/SignService.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.kernel.sign.service; * 签名接口,指定规范 * * @author fengshuonan - * @date 2018-07-23-下午5:56 + * @date 2018-07-23-下午5:56 */ public interface SignService { diff --git a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/impl/SimpleSignService.java b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/impl/SimpleSignService.java index deebc61..5d5448f 100644 --- a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/impl/SimpleSignService.java +++ b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/impl/SimpleSignService.java @@ -28,7 +28,7 @@ import java.util.Date; * 签名方法默认实现,通过md5加密方式 * * @author fengshuonan - * @date 2018-07-24-下午4:35 + * @date 2018-07-24-下午4:35 */ @Slf4j public class SimpleSignService implements SignService { @@ -39,7 +39,7 @@ public class SimpleSignService implements SignService { * 获取配置文件中的签名失效时间 * * @author fengshuonan - * @date 2018-05-08 14:02 + * @date 2018-05-08 14:02 */ private static long getExpiredTime() { SignProperties signProperties = null; @@ -59,7 +59,7 @@ public class SimpleSignService implements SignService { * 生成签名 * * @author fengshuonan - * @date 2018-05-08 14:02 + * @date 2018-05-08 14:02 */ public static String generateSign(String appId, String secret, String timestamp, String data) { if (ToolUtil.isOneEmpty(appId, secret, timestamp, data)) { @@ -78,7 +78,7 @@ public class SimpleSignService implements SignService { * 校验签名是否有效 * * @author fengshuonan - * @date 2018-05-08 14:02 + * @date 2018-05-08 14:02 */ public static boolean validateSign(String appId, String secret, String timestamp, String data, String sign) { return validateSign(appId, secret, timestamp, data, sign, getExpiredTime()); @@ -88,7 +88,7 @@ public class SimpleSignService implements SignService { * 校验签名是否有效 * * @author fengshuonan - * @date 2018-05-08 14:02 + * @date 2018-05-08 14:02 */ public static boolean validateSign(String appId, String secret, String timestamp, String data, String sign, long expiredSeconds) { if (ToolUtil.isOneEmpty(appId, secret, timestamp, data, sign)) { diff --git a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/util/SignFactory.java b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/util/SignFactory.java index 98648c9..c117538 100644 --- a/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/util/SignFactory.java +++ b/kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/util/SignFactory.java @@ -21,7 +21,7 @@ import lombok.extern.slf4j.Slf4j; * 签名工厂类,以静态工厂方法模式调用签名 * * @author fengshuonan - * @date 2018-05-08 09:50 + * @date 2018-05-08 09:50 */ @Slf4j public class SignFactory { diff --git a/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/aop/ParamValidateAop.java b/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/aop/ParamValidateAop.java index affe44a..a39a6f7 100644 --- a/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/aop/ParamValidateAop.java +++ b/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/aop/ParamValidateAop.java @@ -27,7 +27,7 @@ import org.springframework.core.annotation.Order; * 参数校验的aop * * @author fngshuonan - * @date 2018-08-07-上午9:53 + * @date 2018-08-07-上午9:53 */ @Aspect @Order(AopSortConstants.PARAM_VALIDATE_AOP_SORT) diff --git a/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/stereotype/ParamValidator.java b/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/stereotype/ParamValidator.java index 5474a42..e95ad2a 100644 --- a/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/stereotype/ParamValidator.java +++ b/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/stereotype/ParamValidator.java @@ -21,7 +21,7 @@ import java.lang.annotation.*; * 参数校验的标识,如果方法上加了这个注解,则会校验本参数 * * @author fengshuonan - * @Date 2018/8/7 上午10:00 + * @date 2018/8/7 上午10:00 */ @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) diff --git a/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/util/CheckUtil.java b/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/util/CheckUtil.java index 7c156f4..e06afba 100644 --- a/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/util/CheckUtil.java +++ b/kernel-validator/src/main/java/cn/stylefeng/roses/kernel/validator/util/CheckUtil.java @@ -23,7 +23,7 @@ import cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam; * 校验参数中的参数是否符合规则 * * @author fengshuonan - * @date 2018-08-07-上午10:34 + * @date 2018-08-07-上午10:34 */ public class CheckUtil { -- Gitee From 4a13dafcd56d57c7bfbfbe0efc5e088bfdceab17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=85=B4=E5=8D=8E?= Date: Tue, 11 Jun 2019 17:17:31 +0800 Subject: [PATCH 16/39] =?UTF-8?q?=E6=A3=80=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../NoneSecurityAutoConfiguration.java | 2 +- .../roses/core/aop/RequestDataAop.java | 2 +- .../core/base/controller/BaseController.java | 6 +-- .../core/base/controller/GlobalErrorView.java | 2 +- .../base/warpper/BaseControllerWrapper.java | 2 +- .../core/config/AopAutoConfiguration.java | 2 +- .../DbInitializerAutoConfiguration.java | 2 +- .../config/FastjsonAutoConfiguration.java | 2 +- .../MybatisDataSourceAutoConfiguration.java | 2 +- .../MybatisPluginAutoConfiguration.java | 2 +- .../config/PropertiesAutoConfiguration.java | 2 +- .../core/config/RedisAutoConfiguration.java | 2 +- .../core/config/UtilAutoConfiguration.java | 2 +- .../core/config/WebAutoConfiguration.java | 2 +- .../cache/FastJson2JsonRedisSerializer.java | 2 +- .../config/properties/AppNameProperties.java | 2 +- .../config/properties/DruidProperties.java | 2 +- .../roses/core/context/RequestDataHolder.java | 2 +- .../roses/core/context/RequestNoContext.java | 2 +- .../converter/RequestDataMessageConvert.java | 2 +- .../RequestDataTypeMethodProcessor.java | 2 +- .../roses/core/datascope/DataScope.java | 2 +- .../core/datascope/DataScopeInterceptor.java | 2 +- .../roses/core/db/DbInitializer.java | 16 +++---- .../core/db/listener/InitTableListener.java | 2 +- .../cn/stylefeng/roses/core/dbid/DBID.java | 2 +- .../core/dbid/GunsDatabaseIdProvider.java | 2 +- .../exception/DefaultExceptionHandler.java | 2 +- .../core/feign/RosesFeignErrorDecoder.java | 2 +- .../RosesFeignHeaderProcessInterceptor.java | 2 +- .../metadata/CustomMetaObjectHandler.java | 2 +- .../DataSourceContextHolder.java | 10 ++-- .../mutidatasource/DynamicDataSource.java | 2 +- .../mutidatasource/annotion/DataSource.java | 2 +- .../mutidatasource/aop/MultiSourceExAop.java | 2 +- .../mybatis/OptionalSqlSessionTemplate.java | 4 +- .../roses/core/page/PageFactory.java | 8 ++-- .../stylefeng/roses/core/page/PageQuery.java | 2 +- .../stylefeng/roses/core/page/PageResult.java | 2 +- .../core/reqres/request/RequestQuery.java | 2 + .../reqres/response/ErrorResponseData.java | 2 +- .../core/reqres/response/ResponseData.java | 2 +- .../reqres/response/SuccessResponseData.java | 2 +- .../treebuild/DefaultTreeBuildFactory.java | 2 +- .../abst/AbstractTreeBuildFactory.java | 10 ++-- .../stylefeng/roses/core/util/FileUtil.java | 2 +- .../roses/core/util/HttpContext.java | 10 ++-- .../roses/core/util/HttpSessionContext.java | 2 +- .../cn/stylefeng/roses/core/util/MD5Util.java | 5 +- .../stylefeng/roses/core/util/MvcAdapter.java | 2 +- .../cn/stylefeng/roses/core/util/NumUtil.java | 2 +- .../stylefeng/roses/core/util/RenderUtil.java | 2 +- .../roses/core/util/SpringContextHolder.java | 2 +- .../cn/stylefeng/roses/core/util/SqlUtil.java | 2 +- .../stylefeng/roses/core/util/ToolUtil.java | 47 ++++++++++--------- .../cn/stylefeng/roses/core/xss/WafKit.java | 28 ++++++----- .../roses/core/xss/WafRequestWrapper.java | 2 +- .../stylefeng/roses/core/xss/XssFilter.java | 3 ++ .../xss/XssHttpServletRequestWrapper.java | 6 ++- .../kernel/generator/GenerateParams.java | 2 +- .../kernel/generator/SimpleGenerator.java | 2 +- .../jwt/config/JwtAutoConfiguration.java | 2 +- .../kernel/jwt/properties/JwtProperties.java | 2 +- .../roses/kernel/jwt/utils/JwtTokenUtil.java | 2 +- .../logger/chain/aop/ChainOnConsumerAop.java | 4 +- .../chain/aop/ChainOnControllerAop.java | 2 +- .../logger/chain/aop/ChainOnProviderAop.java | 2 +- .../chain/context/ParentSpanIdHolder.java | 2 +- .../logger/chain/context/SpanIdContext.java | 2 +- .../logger/chain/context/SpanIdHolder.java | 10 ++-- .../logger/chain/context/TraceIdHolder.java | 2 +- .../logger/chain/enums/RpcPhaseEnum.java | 2 +- .../config/LoggerAutoConfiguration.java | 2 +- .../config/properties/LogProperties.java | 2 +- .../logger/constants/KafkaConstants.java | 2 +- .../logger/entity/SendingCommonLog.java | 2 +- .../kernel/logger/entity/SendingTCLog.java | 2 +- .../kernel/logger/entity/SendingTraceLog.java | 2 +- .../serizlizer/FastjsonKafkaSerializer.java | 2 +- .../logger/service/LogProducerService.java | 8 ++-- .../service/impl/LogProducerServiceImpl.java | 13 +++-- .../kernel/logger/sql/log/SqlHolder.java | 2 +- .../roses/kernel/logger/util/LogUtil.java | 8 ++-- .../roses/kernel/logger/util/TraceUtil.java | 2 +- .../roses/kernel/model/api/AuthService.java | 10 ++-- .../kernel/model/api/ResourceService.java | 2 +- .../model/api/base/AbstractBaseRequest.java | 2 +- .../kernel/model/auth/AbstractLoginUser.java | 12 ++--- .../auth/context/AbstractLoginContext.java | 2 +- .../model/auth/context/LoginUserHolder.java | 10 ++-- .../model/constants/AopSortConstants.java | 2 +- .../constants/ConfigPrefixConstants.java | 2 +- .../model/constants/RosesConstants.java | 2 +- .../kernel/model/enums/DeleteFlagEnum.java | 2 +- .../roses/kernel/model/enums/StatusEnum.java | 2 +- .../kernel/model/enums/YesOrNotEnum.java | 2 +- .../exception/AbstractBaseExceptionEnum.java | 2 +- .../model/exception/ApiServiceException.java | 2 +- .../exception/RequestEmptyException.java | 4 +- .../model/exception/ServiceException.java | 2 +- .../exception/enums/CoreExceptionEnum.java | 2 +- .../roses/kernel/model/node/TreeNode.java | 2 +- .../model/resource/ResourceDefinition.java | 2 +- .../roses/kernel/model/tree/Tree.java | 2 +- .../roses/kernel/model/util/ValidateUtil.java | 12 ++--- .../model/validator/BaseValidatingParam.java | 4 +- .../config/ScannerAutoConfiguration.java | 2 +- .../config/properties/ScannerProperties.java | 2 +- .../scanner/modular/ApiResourceScaner.java | 2 +- .../modular/annotation/GetResource.java | 2 +- .../modular/annotation/PostResource.java | 2 +- .../modular/factory/ApiResourceFactory.java | 2 +- .../factory/DefaultApiResourceFactory.java | 2 +- .../listener/ResourceReportListener.java | 2 +- .../modular/model/ResourceTreeNode.java | 2 +- .../service/ResourceCollectService.java | 6 +-- .../modular/stereotype/ApiResource.java | 2 +- .../scanner/modular/util/AopTargetUtils.java | 2 +- .../roses/kernel/sign/config/SignConfig.java | 2 +- .../config/properties/SignProperties.java | 2 +- .../kernel/sign/service/SignService.java | 2 +- ...ervice.java => SimpleSignServiceImpl.java} | 12 ++--- .../roses/kernel/sign/util/SignFactory.java | 2 +- .../validator/aop/ParamValidateAop.java | 2 +- .../config/ValidatorAutoConfiguration.java | 2 +- .../validator/stereotype/ParamValidator.java | 2 +- .../kernel/validator/util/CheckUtil.java | 2 +- 127 files changed, 245 insertions(+), 225 deletions(-) rename kernel-sign/src/main/java/cn/stylefeng/roses/kernel/sign/service/impl/{SimpleSignService.java => SimpleSignServiceImpl.java} (94%) diff --git a/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java b/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java index b537627..2b16f54 100644 --- a/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java +++ b/kernel-actuator/src/main/java/cn/stylefeng/roses/kernel/actuator/NoneSecurityAutoConfiguration.java @@ -24,7 +24,7 @@ import org.springframework.security.config.annotation.web.configuration.WebSecur * 默认actuator安全配置 * * @author stylefeng - * @date 2018/6/26 21:31 + * @since 2018/6/26 21:31 */ @Configuration @ConditionalOnClass(WebSecurityConfigurerAdapter.class) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java index 6a91157..8f6653c 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/aop/RequestDataAop.java @@ -29,7 +29,7 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.REQUEST * 对控制器调用过程中,提供一种RequestData便捷调用的aop * * @author fengshuonan - * @date 2016年11月13日 下午10:15:42 + * @since 2016年11月13日 下午10:15:42 */ @Aspect @Order(REQUEST_DATA_AOP_SORT) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java index a3b7998..b803b0c 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/BaseController.java @@ -37,7 +37,7 @@ import java.util.Objects; * 控制器基类,封装一些控制器常用的方法 * * @author fengshuonan - * @date 2018/7/23 下午3:45 + * @since 2018/7/23 下午3:45 */ public class BaseController { @@ -107,7 +107,7 @@ public class BaseController { * 返回前台文件流 * * @author fengshuonan - * @date 2017年2月28日 下午2:53:19 + * @since 2017年2月28日 下午2:53:19 */ protected ResponseEntity renderFile(String fileName, String filePath) { try { @@ -122,7 +122,7 @@ public class BaseController { * 返回前台文件流 * * @author fengshuonan - * @date 2017年2月28日 下午2:53:19 + * @since 2017年2月28日 下午2:53:19 */ protected ResponseEntity renderFile(String fileName, byte[] fileBytes) { return renderFile(fileName, new ByteArrayInputStream(fileBytes)); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/GlobalErrorView.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/GlobalErrorView.java index f03b003..e5b5e82 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/GlobalErrorView.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/controller/GlobalErrorView.java @@ -28,7 +28,7 @@ import java.util.Map; * 错误页面的默认跳转(例如请求404的时候,默认走这个视图解析器) * * @author fengshuonan - * @date 2017-05-21 11:34 + * @since 2017-05-21 11:34 */ public class GlobalErrorView implements View { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java index 83a8251..da86877 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/base/warpper/BaseControllerWrapper.java @@ -25,7 +25,7 @@ import java.util.Map; * 控制器查询结果的包装类基类 * * @author fengshuonan - * @date 2017年2月13日 下午10:49:36 + * @since 2017年2月13日 下午10:49:36 */ public abstract class BaseControllerWrapper { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/AopAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/AopAutoConfiguration.java index c34daa6..18162df 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/AopAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/AopAutoConfiguration.java @@ -24,7 +24,7 @@ import org.springframework.context.annotation.EnableAspectJAutoProxy; * 保留类,如果控制器需要些aop在这里写 * * @author fengshuonan - * @date 2016年11月12日 下午4:48:10 + * @since 2016年11月12日 下午4:48:10 */ @Configuration @EnableAspectJAutoProxy(proxyTargetClass = true) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/DbInitializerAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/DbInitializerAutoConfiguration.java index b65c17b..84aeb93 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/DbInitializerAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/DbInitializerAutoConfiguration.java @@ -23,7 +23,7 @@ import org.springframework.context.annotation.Configuration; * 数据库初始化默认配置 * * @author fengshuonan - * @Date 2018/7/30 下午12:22 + * @since 2018/7/30 下午12:22 */ @Configuration public class DbInitializerAutoConfiguration { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/FastjsonAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/FastjsonAutoConfiguration.java index b00f2de..98e4ef0 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/FastjsonAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/FastjsonAutoConfiguration.java @@ -35,7 +35,7 @@ import java.util.List; * fastjson配置类 * * @author fengshuonan - * @date 2017-05-23 22:56 + * @since 2017-05-23 22:56 */ @Configuration("defaultFastjsonConfig") @ConditionalOnClass(com.alibaba.fastjson.JSON.class) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java index 3ddcd62..7cc0b23 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.java @@ -27,7 +27,7 @@ import org.springframework.context.annotation.Configuration; * MybatisPlus配置 * * @author stylefeng - * @Date 2017/5/20 21:58 + * @since 2017/5/20 21:58 */ @Configuration @MapperScan(basePackages = {"**.mapper"}) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java index 36e46e7..72f9268 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/MybatisPluginAutoConfiguration.java @@ -35,7 +35,7 @@ import org.springframework.context.annotation.Configuration; * MybatisPlus配置 * * @author stylefeng - * @Date 2017/5/20 21:58 + * @since 2017/5/20 21:58 */ @Configuration @ConditionalOnProperty(prefix = "spring.datasource", name = "url") diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/PropertiesAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/PropertiesAutoConfiguration.java index 036c299..45a5e67 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/PropertiesAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/PropertiesAutoConfiguration.java @@ -25,7 +25,7 @@ import org.springframework.context.annotation.PropertySource; * 默认的配置 * * @author fengshuonan - * @date 2018-01-07 12:33 + * @since 2018-01-07 12:33 */ @Configuration @PropertySource("classpath:/default-config.properties") diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/RedisAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/RedisAutoConfiguration.java index c72e127..f2bbaa9 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/RedisAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/RedisAutoConfiguration.java @@ -28,7 +28,7 @@ import org.springframework.data.redis.serializer.StringRedisSerializer; * redis配置 * * @author fengshuonan - * @date 2017-05-20 23:11 + * @since 2017-05-20 23:11 */ @Configuration @ConditionalOnClass(RedisTemplate.class) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/UtilAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/UtilAutoConfiguration.java index b7e9756..86f7c48 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/UtilAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/UtilAutoConfiguration.java @@ -23,7 +23,7 @@ import org.springframework.context.annotation.Configuration; * 默认的工具类 * * @author fengshuonan - * @date 2018-01-07 12:33 + * @since 2018-01-07 12:33 */ @Configuration public class UtilAutoConfiguration { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java index 399c9f7..60f0032 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/WebAutoConfiguration.java @@ -39,7 +39,7 @@ import java.util.Date; * 默认web配置 * * @author fengshuonan - * @date 2018/7/24 下午3:27 + * @since 2018/7/24 下午3:27 */ @Configuration @ConditionalOnBean(ServletContext.class) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java index f9e9970..28907d6 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/cache/FastJson2JsonRedisSerializer.java @@ -26,7 +26,7 @@ import java.nio.charset.Charset; * fastjson redis序列化器 * * @author fengshuonan - * @date 2017/11/7 上午9:20 + * @since 2017/11/7 上午9:20 */ public class FastJson2JsonRedisSerializer implements RedisSerializer { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/AppNameProperties.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/AppNameProperties.java index 071ce53..bc6c1b4 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/AppNameProperties.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/AppNameProperties.java @@ -21,7 +21,7 @@ import lombok.Data; * 应用名称属性spring.application.name * * @author fengshuonan - * @Date 2018/5/8 下午2:24 + * @since 2018/5/8 下午2:24 */ @Data public class AppNameProperties { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/DruidProperties.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/DruidProperties.java index c783b2b..eef75ec 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/DruidProperties.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/config/properties/DruidProperties.java @@ -26,7 +26,7 @@ import java.util.Properties; *

说明:类中属性包含默认值的不要在这里修改,应该在"application.yml"中配置

* * @author fengshuonan - * @date 2017-05-21 11:18 + * @since 2017-05-21 11:18 */ @Data public class DruidProperties { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestDataHolder.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestDataHolder.java index 76586ec..25c1dd1 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestDataHolder.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestDataHolder.java @@ -22,7 +22,7 @@ import cn.stylefeng.roses.core.reqres.request.RequestData; * 请求数据的临时容器 * * @author fengshuonan - * @date 2018-05-04 11:33 + * @since 2018-05-04 11:33 */ public class RequestDataHolder { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java index b27ec62..3231c66 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/context/RequestNoContext.java @@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletRequest; * 获取当前请求的请求号,没有请求号则生成空串 * * @author fengshuonan - * @date 2018-05-09-下午6:25 + * @since 2018-05-09-下午6:25 */ @Slf4j public class RequestNoContext { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java index 2043c42..5ff75e9 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataMessageConvert.java @@ -40,7 +40,7 @@ import java.util.Set; * 请求数据统一转化为RequestData * * @author fengshuonan - * @date 2018/2/21 20:57 + * @since 2018/2/21 20:57 */ @Slf4j public class RequestDataMessageConvert extends AbstractGenericHttpMessageConverter { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataTypeMethodProcessor.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataTypeMethodProcessor.java index 7959ced..34f8d4c 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataTypeMethodProcessor.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/converter/RequestDataTypeMethodProcessor.java @@ -26,7 +26,7 @@ import java.util.List; * 请求转化处理器 * * @author stylefeng - * @Date 2018/5/15 22:02 + * @since 2018/5/15 22:02 */ public class RequestDataTypeMethodProcessor extends RequestResponseBodyMethodProcessor { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScope.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScope.java index 48fe571..00f0c88 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScope.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScope.java @@ -6,7 +6,7 @@ import java.util.List; * 数据范围 * * @author fengshuonan - * @date 2017-07-23 22:19 + * @since 2017-07-23 22:19 */ public class DataScope { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScopeInterceptor.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScopeInterceptor.java index 51a4c0a..a8a9f9b 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScopeInterceptor.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/datascope/DataScopeInterceptor.java @@ -20,7 +20,7 @@ import java.util.Properties; * 数据范围的拦截器 * * @author fengshuonan - * @date 2017-07-23 21:26 + * @since 2017-07-23 21:26 */ @Intercepts({@Signature(type = StatementHandler.class, method = "prepare", args = {Connection.class, Integer.class})}) public class DataScopeInterceptor implements Interceptor { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java index e6df8c8..56f0f0d 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/DbInitializer.java @@ -37,7 +37,7 @@ import static cn.stylefeng.roses.kernel.model.exception.enums.CoreExceptionEnum. * 数据库初始化,可初始化表,校验字段,校验表名是否存在等 * * @author fengshuonan - * @date 2018-07-29 22:05 + * @since 2018-07-29 22:05 */ @Slf4j @Getter @@ -61,7 +61,7 @@ public abstract class DbInitializer { * 初始化数据库 * * @author fengshuonan - * @date 2018/7/30 上午10:30 + * @since 2018/7/30 上午10:30 */ public void dbInit() { @@ -80,7 +80,7 @@ public abstract class DbInitializer { * 初始化表结构 * * @author fengshuonan - * @date 2018/7/30 上午10:24 + * @since 2018/7/30 上午10:24 */ private void initTable() { @@ -110,7 +110,7 @@ public abstract class DbInitializer { * 校验实体和对应表结构是否有不一致的 * * @author fengshuonan - * @date 2018/7/30 上午10:24 + * @since 2018/7/30 上午10:24 */ private void fieldsValidate() { @@ -152,7 +152,7 @@ public abstract class DbInitializer { * 反射获取类的所有字段 * * @author fengshuonan - * @date 2018/7/30 上午10:06 + * @since 2018/7/30 上午10:06 */ private List getClassFields() { Class entityClass = this.getEntityClass(); @@ -169,7 +169,7 @@ public abstract class DbInitializer { * 获取表的字段 * * @author stylefeng - * @date 2018/7/29 22:49 + * @since 2018/7/29 22:49 */ private String showColumnsSql() { return "SHOW COLUMNS FROM " + this.getTableName(); @@ -179,7 +179,7 @@ public abstract class DbInitializer { * 获取表的初始化语句 * * @author stylefeng - * @date 2018/7/29 22:10 + * @since 2018/7/29 22:10 */ protected abstract String getTableInitSql(); @@ -187,7 +187,7 @@ public abstract class DbInitializer { * 获取表的名称 * * @author stylefeng - * @date 2018/7/29 22:10 + * @since 2018/7/29 22:10 */ protected abstract String getTableName(); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java index 983706d..7c86129 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/db/listener/InitTableListener.java @@ -27,7 +27,7 @@ import java.util.Map; * 初始化 创建字典表 * * @author wangzhongqiang - * @date 2018/4/23 9:57 + * @since 2018/4/23 9:57 */ @Slf4j public class InitTableListener implements ApplicationListener, Ordered { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/DBID.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/DBID.java index 6d4339f..e5d70b5 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/DBID.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/DBID.java @@ -4,7 +4,7 @@ package cn.stylefeng.roses.core.dbid; * 用于标识mapping.xml中不同数据库的标识 * * @author fengshuonan - * @Date 2019/3/30 22:24 + * @since 2019/3/30 22:24 */ public class DBID { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/GunsDatabaseIdProvider.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/GunsDatabaseIdProvider.java index a74856a..8422357 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/GunsDatabaseIdProvider.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/dbid/GunsDatabaseIdProvider.java @@ -10,7 +10,7 @@ import java.util.Properties; * 数据库id选择器 * * @author fengshuonan - * @Date 2019/3/30 22:26 + * @since 2019/3/30 22:26 */ public class GunsDatabaseIdProvider implements DatabaseIdProvider { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/exception/DefaultExceptionHandler.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/exception/DefaultExceptionHandler.java index 48560de..eb0b7d7 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/exception/DefaultExceptionHandler.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/exception/DefaultExceptionHandler.java @@ -36,7 +36,7 @@ import static cn.stylefeng.roses.kernel.model.constants.AopSortConstants.DEFAULT * 全局的的异常拦截器(拦截所有的控制器)(带有@RequestMapping注解的方法上都会拦截) * * @author fengshuonan - * @date 2016年11月12日 下午3:19:56 + * @since 2016年11月12日 下午3:19:56 */ @ControllerAdvice @Order(DEFAULT_EXCEPTION_HANDLER_SORT) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java index dc3daa1..70f11a5 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignErrorDecoder.java @@ -35,7 +35,7 @@ import java.lang.reflect.InvocationTargetException; * roses自己的feign错误解码器(为了feign接收到错误的返回,转化成roses可识别的ServiceException) * * @author stylefeng - * @date 2018/4/20 23:14 + * @since 2018/4/20 23:14 */ @Slf4j public class RosesFeignErrorDecoder implements ErrorDecoder { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java index 51cd50b..fb2c508 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/feign/RosesFeignHeaderProcessInterceptor.java @@ -27,7 +27,7 @@ import java.util.Enumeration; * feign远程调用添加header的过滤器 * * @author fengshuonan - * @date 2018-05-07-下午7:25 + * @since 2018-05-07-下午7:25 */ @Slf4j public class RosesFeignHeaderProcessInterceptor implements RequestInterceptor { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java index f76c845..f6a0de1 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/metadata/CustomMetaObjectHandler.java @@ -28,7 +28,7 @@ import java.util.Date; * 注意默认获取的userId为空 * * @author fengshuonan - * @Date 2018/7/4 下午12:42 + * @since 2018/7/4 下午12:42 */ public class CustomMetaObjectHandler implements MetaObjectHandler { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DataSourceContextHolder.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DataSourceContextHolder.java index 2da0d1d..850217c 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DataSourceContextHolder.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DataSourceContextHolder.java @@ -4,11 +4,11 @@ package cn.stylefeng.roses.core.mutidatasource; * datasource的上下文 * * @author fengshuonan - * @date 2017年3月5日 上午9:10:58 + * @since 2017年3月5日 上午9:10:58 */ public class DataSourceContextHolder { - private static final ThreadLocal contextHolder = new ThreadLocal(); + private static final ThreadLocal CONTEXT_HOLDER = new ThreadLocal(); /** * 设置数据源类型 @@ -16,20 +16,20 @@ public class DataSourceContextHolder { * @param dataSourceType 数据库类型 */ public static void setDataSourceType(String dataSourceType) { - contextHolder.set(dataSourceType); + CONTEXT_HOLDER.set(dataSourceType); } /** * 获取数据源类型 */ public static String getDataSourceType() { - return contextHolder.get(); + return CONTEXT_HOLDER.get(); } /** * 清除数据源类型 */ public static void clearDataSourceType() { - contextHolder.remove(); + CONTEXT_HOLDER.remove(); } } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DynamicDataSource.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DynamicDataSource.java index cd1e541..05cb461 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DynamicDataSource.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/DynamicDataSource.java @@ -6,7 +6,7 @@ import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource; * 动态数据源 * * @author fengshuonan - * @date 2017年3月5日 上午9:11:49 + * @since 2017年3月5日 上午9:11:49 */ public class DynamicDataSource extends AbstractRoutingDataSource { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/annotion/DataSource.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/annotion/DataSource.java index df1cb35..2c30095 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/annotion/DataSource.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/annotion/DataSource.java @@ -7,7 +7,7 @@ import java.lang.annotation.*; * 多数据源标识 * * @author fengshuonan - * @date 2017年3月5日 上午9:44:24 + * @since 2017年3月5日 上午9:44:24 */ @Inherited @Retention(RetentionPolicy.RUNTIME) diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java index d63dbdb..93689e8 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/aop/MultiSourceExAop.java @@ -18,7 +18,7 @@ import java.lang.reflect.Method; * 多数据源切换的aop * * @author fengshuonan - * @date 2017年3月5日 上午10:22:16 + * @since 2017年3月5日 上午10:22:16 */ @Aspect public class MultiSourceExAop implements Ordered { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/mybatis/OptionalSqlSessionTemplate.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/mybatis/OptionalSqlSessionTemplate.java index 4e7cf9d..ce6fd1c 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/mybatis/OptionalSqlSessionTemplate.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/mutidatasource/mybatis/OptionalSqlSessionTemplate.java @@ -23,7 +23,7 @@ import static org.mybatis.spring.SqlSessionUtils.*; * 动态获取SqlSessionFactory,根据DataSourceContextHolder * * @author fengshuonan - * @Date 2019/3/16 6:31 PM + * @since 2019/3/16 6:31 PM */ public class OptionalSqlSessionTemplate extends SqlSessionTemplate { @@ -63,10 +63,12 @@ public class OptionalSqlSessionTemplate extends SqlSessionTemplate { } } + @Override public ExecutorType getExecutorType() { return this.executorType; } + @Override public PersistenceExceptionTranslator getPersistenceExceptionTranslator() { return this.exceptionTranslator; } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java index 57cbb04..0018ddb 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageFactory.java @@ -30,7 +30,7 @@ import javax.servlet.http.HttpServletRequest; * 默认分页参数构建 * * @author fengshuonan - * @date 2017年11月15日13:52:16 + * @since 2017年11月15日13:52:16 */ public class PageFactory { @@ -63,7 +63,7 @@ public class PageFactory { * 默认规则的分页 * * @author fengshuonan - * @date 2018/7/23 下午4:11 + * @since 2018/7/23 下午4:11 */ public static Page defaultPage() { @@ -114,7 +114,7 @@ public class PageFactory { * 自定义参数的分页 * * @author fengshuonan - * @date 2018/7/23 下午4:11 + * @since 2018/7/23 下午4:11 */ public static Page createPage(PageQuery pageQuery) { @@ -149,7 +149,7 @@ public class PageFactory { * 获取参数值,通过param或从requestBody中取 * * @author fengshuonan - * @date 2018/7/25 下午1:12 + * @since 2018/7/25 下午1:12 */ private static String getFieldValue(HttpServletRequest request, String fieldName) { String parameter = request.getParameter(fieldName); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java index bce25b4..f7b8c1d 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageQuery.java @@ -22,7 +22,7 @@ import lombok.Data; * 分页查询的请求参数封装 * * @author fengshuonan - * @date 2017-11-08-上午11:18 + * @since 2017-11-08-上午11:18 */ @Data public class PageQuery extends RequestQuery { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java index 63bd310..c3f171f 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/page/PageResult.java @@ -25,7 +25,7 @@ import java.util.List; * 封装分页结果集 * * @author stylefeng - * @Date 2018/7/22 23:00 + * @since 2018/7/22 23:00 */ @Data public class PageResult implements Serializable { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java index dff7fd5..0695526 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/request/RequestQuery.java @@ -65,6 +65,8 @@ public class RequestQuery extends RequestData { case "notin": queryWrapper.notIn(columnName, (Collection) val); break; + default: + break; } } } diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java index 61e44b3..d6ef50d 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ErrorResponseData.java @@ -22,7 +22,7 @@ import lombok.Data; * 请求失败的返回 * * @author stylefeng - * @date 2018/1/4 22:39 + * @since 2018/1/4 22:39 */ @Data public class ErrorResponseData extends ResponseData { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java index def3a47..7273fc9 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/ResponseData.java @@ -22,7 +22,7 @@ import lombok.Data; * 返回给前台的通用包装 * * @author stylefeng - * @date 2018/1/4 22:37 + * @since 2018/1/4 22:37 */ @Data public class ResponseData { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java index 60ef838..05c80ac 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/reqres/response/SuccessResponseData.java @@ -19,7 +19,7 @@ package cn.stylefeng.roses.core.reqres.response; * 请求成功的返回 * * @author stylefeng - * @Date 2018/1/4 22:38 + * @since 2018/1/4 22:38 */ public class SuccessResponseData extends ResponseData { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java index 1bbf121..fb05bfa 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/DefaultTreeBuildFactory.java @@ -26,7 +26,7 @@ import java.util.List; * 默认递归工具类,用于遍历有父子关系的节点,例如菜单树,字典树等等 * * @author fengshuonan - * @date 2018/7/25 下午5:59 + * @since 2018/7/25 下午5:59 */ @Data public class DefaultTreeBuildFactory extends AbstractTreeBuildFactory { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java index 99459a8..e2ca2b8 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/treebuild/abst/AbstractTreeBuildFactory.java @@ -21,7 +21,7 @@ import java.util.List; * 树构建的抽象类,定义构建tree的基本步骤 * * @author fengshuonan - * @date 2018/7/25 下午5:59 + * @since 2018/7/25 下午5:59 */ public abstract class AbstractTreeBuildFactory { @@ -29,7 +29,7 @@ public abstract class AbstractTreeBuildFactory { * 树节点构建整体过程 * * @author fengshuonan - * @date 2018/7/26 上午9:45 + * @since 2018/7/26 上午9:45 */ public List doTreeBuild(List nodes) { @@ -47,7 +47,7 @@ public abstract class AbstractTreeBuildFactory { * 构建之前的处理工作 * * @author fengshuonan - * @date 2018/7/26 上午10:10 + * @since 2018/7/26 上午10:10 */ protected abstract List beforeBuild(List nodes); @@ -55,7 +55,7 @@ public abstract class AbstractTreeBuildFactory { * 具体的构建过程 * * @author fengshuonan - * @date 2018/7/26 上午10:11 + * @since 2018/7/26 上午10:11 */ protected abstract List executeBuilding(List nodes); @@ -63,7 +63,7 @@ public abstract class AbstractTreeBuildFactory { * 构建之后的处理工作 * * @author fengshuonan - * @date 2018/7/26 上午10:11 + * @since 2018/7/26 上午10:11 */ protected abstract List afterBuild(List nodes); } \ No newline at end of file diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/FileUtil.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/FileUtil.java index 01dd0a4..ecaa2fa 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/FileUtil.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/FileUtil.java @@ -30,7 +30,7 @@ import java.nio.channels.FileChannel; * NIO方式读取文件 * * @author stylefeng - * @Date 2018/1/4 23:09 + * @since 2018/1/4 23:09 */ public class FileUtil { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java index 4702fd8..d8b2d7b 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpContext.java @@ -29,7 +29,7 @@ import java.util.Map; * 快捷获取HttpServletRequest,HttpServletResponse * * @author stylefeng - * @Date 2018/1/4 21:24 + * @since 2018/1/4 21:24 */ public class HttpContext { @@ -37,7 +37,7 @@ public class HttpContext { * 获取请求的ip地址 * * @author fengshuonan - * @Date 2018/7/23 下午3:44 + * @since 2018/7/23 下午3:44 */ public static String getIp() { HttpServletRequest request = HttpContext.getRequest(); @@ -52,7 +52,7 @@ public class HttpContext { * 获取当前请求的Request对象 * * @author fengshuonan - * @Date 2018/7/23 下午3:44 + * @since 2018/7/23 下午3:44 */ public static HttpServletRequest getRequest() { ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); @@ -67,7 +67,7 @@ public class HttpContext { * 获取当前请求的Response对象 * * @author fengshuonan - * @Date 2018/7/23 下午3:44 + * @since 2018/7/23 下午3:44 */ public static HttpServletResponse getResponse() { ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); @@ -82,7 +82,7 @@ public class HttpContext { * 获取所有请求的值 * * @author fengshuonan - * @Date 2018/7/23 下午3:44 + * @since 2018/7/23 下午3:44 */ public static Map getRequestParameters() { HashMap values = new HashMap<>(); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpSessionContext.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpSessionContext.java index e751df1..b50d293 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpSessionContext.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/HttpSessionContext.java @@ -21,7 +21,7 @@ import javax.servlet.http.HttpSession; * 非Controller中获取当前session的工具类 * * @author fengshuonan - * @date 2016年11月28日 上午10:24:31 + * @since 2016年11月28日 上午10:24:31 */ public class HttpSessionContext { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java index 62b7a29..c5efb7e 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MD5Util.java @@ -7,7 +7,7 @@ import java.security.NoSuchAlgorithmException; * MD5加密类(封装jdk自带的md5加密方法) * * @author fengshuonan - * @date 2016年12月2日 下午4:14:22 + * @since 2016年12月2日 下午4:14:22 */ public class MD5Util { @@ -26,8 +26,9 @@ public class MD5Util { private static String encodeHex(byte[] bytes) { StringBuffer buffer = new StringBuffer(bytes.length * 2); for (int i = 0; i < bytes.length; i++) { - if (((int) bytes[i] & 0xff) < 0x10) + if (((int) bytes[i] & 0xff) < 0x10) { buffer.append("0"); + } buffer.append(Long.toString((int) bytes[i] & 0xff, 16)); } return buffer.toString(); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java index 53bb904..707ae2d 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/MvcAdapter.java @@ -31,7 +31,7 @@ import java.util.List; * 统一请求转化器默认配置 * * @author fengshuonan - * @date 2018/2/24 14:39 + * @since 2018/2/24 14:39 */ public class MvcAdapter { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/NumUtil.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/NumUtil.java index 273a9cc..8857372 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/NumUtil.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/NumUtil.java @@ -9,7 +9,7 @@ import java.text.NumberFormat; * 数字格式化的类 * * @author fengshuonan - * @date 2016年11月30日 下午5:58:40 + * @since 2016年11月30日 下午5:58:40 */ public class NumUtil { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/RenderUtil.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/RenderUtil.java index c16fbad..98b30f9 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/RenderUtil.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/RenderUtil.java @@ -27,7 +27,7 @@ import java.io.PrintWriter; * 渲染工具类 * * @author fengshuonan - * @date 2017-08-25 14:13 + * @since 2017-08-25 14:13 */ public class RenderUtil { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SpringContextHolder.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SpringContextHolder.java index 73012e6..7167c66 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SpringContextHolder.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SpringContextHolder.java @@ -23,7 +23,7 @@ import org.springframework.context.ApplicationContextAware; * Spring的ApplicationContext的持有者,可以用静态方法的方式获取spring容器中的bean * * @author fengshuonan - * @date 2016年11月27日 下午3:32:11 + * @since 2016年11月27日 下午3:32:11 */ public class SpringContextHolder implements ApplicationContextAware { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SqlUtil.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SqlUtil.java index d3c831a..059a66e 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SqlUtil.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/SqlUtil.java @@ -22,7 +22,7 @@ import java.util.List; * sql语句工具类 * * @author fengshuonan - * @date 2016年12月6日 下午1:01:54 + * @since 2016年12月6日 下午1:01:54 */ public class SqlUtil { diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java index f512e14..fedd8d1 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/util/ToolUtil.java @@ -42,7 +42,7 @@ import java.util.Random; * 高频方法集合 * * @author fengshuonan - * @date 2018/3/18 21:55 + * @since 2018/3/18 21:55 */ public class ToolUtil extends ValidateUtil { @@ -55,7 +55,7 @@ public class ToolUtil extends ValidateUtil { * 获取随机字符,自定义长度 * * @author fengshuonan - * @date 2018/3/18 21:55 + * @since 2018/3/18 21:55 */ public static String getRandomString(int length) { String base = "abcdefghijklmnopqrstuvwxyz0123456789"; @@ -72,7 +72,7 @@ public class ToolUtil extends ValidateUtil { * md5加密(加盐) * * @author fengshuonan - * @date 2018/3/18 21:56 + * @since 2018/3/18 21:56 */ public static String md5Hex(String password, String salt) { return md5Hex(password + salt); @@ -82,7 +82,7 @@ public class ToolUtil extends ValidateUtil { * md5加密(不加盐) * * @author fengshuonan - * @date 2018/3/18 21:56 + * @since 2018/3/18 21:56 */ public static String md5Hex(String str) { try { @@ -90,10 +90,11 @@ public class ToolUtil extends ValidateUtil { byte[] bs = md5.digest(str.getBytes()); StringBuffer md5StrBuff = new StringBuffer(); for (int i = 0; i < bs.length; i++) { - if (Integer.toHexString(0xFF & bs[i]).length() == 1) + if (Integer.toHexString(0xFF & bs[i]).length() == 1) { md5StrBuff.append("0").append(Integer.toHexString(0xFF & bs[i])); - else + } else { md5StrBuff.append(Integer.toHexString(0xFF & bs[i])); + } } return md5StrBuff.toString(); } catch (Exception e) { @@ -105,7 +106,7 @@ public class ToolUtil extends ValidateUtil { * 过滤掉掉字符串中的空白 * * @author fengshuonan - * @date 2018/3/22 15:16 + * @since 2018/3/22 15:16 */ public static String removeWhiteSpace(String value) { if (isEmpty(value)) { @@ -119,7 +120,7 @@ public class ToolUtil extends ValidateUtil { * 获取某个时间间隔以前的时间 时间格式:yyyy-MM-dd HH:mm:ss * * @author stylefeng - * @date 2018/5/8 22:05 + * @since 2018/5/8 22:05 */ public static String getCreateTimeBefore(int seconds) { long currentTimeInMillis = Calendar.getInstance().getTimeInMillis(); @@ -132,7 +133,7 @@ public class ToolUtil extends ValidateUtil { * 获取异常的具体信息 * * @author fengshuonan - * @date 2017/3/30 9:21 + * @since 2017/3/30 9:21 * @version 2.0 */ public static String getExceptionMsg(Throwable e) { @@ -153,7 +154,7 @@ public class ToolUtil extends ValidateUtil { * 获取应用名称 * * @author fengshuonan - * @date 2018/5/12 上午10:24 + * @since 2018/5/12 上午10:24 */ public static String getApplicationName() { try { @@ -175,22 +176,22 @@ public class ToolUtil extends ValidateUtil { * 获取ip地址 * * @author fengshuonan - * @date 2018/5/15 下午6:36 + * @since 2018/5/15 下午6:36 */ public static String getIP() { try { - StringBuilder IFCONFIG = new StringBuilder(); + StringBuilder ifconfig = new StringBuilder(); for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) { NetworkInterface intf = en.nextElement(); for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress() && !inetAddress.isLinkLocalAddress() && inetAddress.isSiteLocalAddress()) { - IFCONFIG.append(inetAddress.getHostAddress().toString() + "\n"); + ifconfig.append(inetAddress.getHostAddress().toString() + "\n"); } } } - return IFCONFIG.toString(); + return ifconfig.toString(); } catch (SocketException ex) { ex.printStackTrace(); @@ -207,7 +208,7 @@ public class ToolUtil extends ValidateUtil { * 拷贝属性,为null的不拷贝 * * @author fengshuonan - * @date 2018/7/25 下午4:41 + * @since 2018/7/25 下午4:41 */ public static void copyProperties(Object source, Object target) { BeanUtil.copyProperties(source, target, CopyOptions.create().setIgnoreNullValue(true)); @@ -217,7 +218,7 @@ public class ToolUtil extends ValidateUtil { * 判断是否是windows操作系统 * * @author stylefeng - * @date 2017/5/24 22:34 + * @since 2017/5/24 22:34 */ public static Boolean isWinOs() { String os = System.getProperty("os.name"); @@ -232,7 +233,7 @@ public class ToolUtil extends ValidateUtil { * 获取临时目录 * * @author stylefeng - * @date 2017/5/24 22:35 + * @since 2017/5/24 22:35 */ public static String getTempPath() { return System.getProperty("java.io.tmpdir"); @@ -242,7 +243,7 @@ public class ToolUtil extends ValidateUtil { * 把一个数转化为int * * @author fengshuonan - * @date 2017/11/15 下午11:10 + * @since 2017/11/15 下午11:10 */ public static Integer toInt(Object val) { if (val instanceof Double) { @@ -258,7 +259,7 @@ public class ToolUtil extends ValidateUtil { * 是否为数字 * * @author fengshuonan - * @date 2017/11/15 下午11:10 + * @since 2017/11/15 下午11:10 */ public static boolean isNum(Object obj) { try { @@ -273,7 +274,7 @@ public class ToolUtil extends ValidateUtil { * 获取项目路径 * * @author fengshuonan - * @date 2017/11/15 下午11:10 + * @since 2017/11/15 下午11:10 */ public static String getWebRootPath(String filePath) { try { @@ -295,7 +296,7 @@ public class ToolUtil extends ValidateUtil { * 获取文件后缀名 不包含点 * * @author fengshuonan - * @date 2017/11/15 下午11:10 + * @since 2017/11/15 下午11:10 */ public static String getFileSuffix(String fileWholeName) { if (ToolUtil.isEmpty(fileWholeName)) { @@ -309,7 +310,7 @@ public class ToolUtil extends ValidateUtil { * 判断一个对象是否是时间类型 * * @author stylefeng - * @date 2017/4/18 12:55 + * @since 2017/4/18 12:55 */ public static String dateType(Object o) { if (o instanceof Date) { @@ -323,7 +324,7 @@ public class ToolUtil extends ValidateUtil { * 当前时间 * * @author stylefeng - * @date 2017/5/7 21:56 + * @since 2017/5/7 21:56 */ public static String currentTime() { return DateUtil.formatDateTime(new Date()); diff --git a/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java b/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java index 5e6d171..458bab0 100644 --- a/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java +++ b/kernel-core/src/main/java/cn/stylefeng/roses/core/xss/WafKit.java @@ -17,11 +17,13 @@ package cn.stylefeng.roses.core.xss; import java.util.regex.Pattern; +import static java.util.regex.Pattern.*; + /** * Web防火墙工具类 *

* @author hubin - * @date 2014-5-8 + * @since 2014-5-8 */ public class WafKit { @@ -43,7 +45,7 @@ public class WafKit { rlt = value.replaceAll("", ""); // Avoid anything between script tags - Pattern scriptPattern = Pattern.compile("", Pattern.CASE_INSENSITIVE); + Pattern scriptPattern = compile("", CASE_INSENSITIVE); rlt = scriptPattern.matcher(rlt).replaceAll(""); // Avoid anything in a src='...' type of expression @@ -56,35 +58,35 @@ public class WafKit { rlt = scriptPattern.matcher(rlt).replaceAll("");*/ // Remove any lonesome tag - scriptPattern = Pattern.compile("", Pattern.CASE_INSENSITIVE); + scriptPattern = compile("", CASE_INSENSITIVE); rlt = scriptPattern.matcher(rlt).replaceAll(""); // Remove any lonesome