From c5e94f945e16abdb75c01a59564eae5858ba8df4 Mon Sep 17 00:00:00 2001 From: zer0Black <694429613@qq.com> Date: Tue, 5 Apr 2022 22:36:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/common/util/YouBianCodeUtil.java | 2 +- .../com/jero/config/WebMvcConfiguration.java | 10 ++- .../modules/base/mapper/BaseCommonMapper.java | 2 +- .../online/cgform/entity/OnlCgformButton.java | 2 +- .../cgform/entity/OnlCgformEnhanceJava.java | 2 +- .../cgform/entity/OnlCgformEnhanceJs.java | 2 +- .../cgform/entity/OnlCgformEnhanceSql.java | 2 +- .../online/cgform/entity/OnlCgformField.java | 2 +- .../online/cgform/entity/OnlCgformHead.java | 2 +- .../online/cgform/entity/OnlCgformIndex.java | 2 +- .../jero-boot-base-tools/pom.xml | 6 +- .../impl/SysGatewayRouteServiceImpl.java | 2 +- .../nacos/jero-dev.yaml | 3 - .../nacos/{jeecg.yaml => jero.yaml} | 0 .../handler/MySwaggerResourceProvider.java | 4 +- .../com/jero/loader/DynamicRouteLoader.java | 19 +++-- .../com/jero/loader/DynamicRouteService.java | 15 ++-- .../com/jero/loader/MyRouteDefinition.java | 22 ++++++ .../src/main/resources/application.yml | 34 ++++----- .../jero-cloud-nacos/Dockerfile | 15 ++++ .../jero-cloud-nacos/pom.xml | 75 +++++++++++++++++++ .../alibaba/nacos/JeecgNacosApplication.java | 37 +++++++++ .../src/main/resources/application.yml | 54 +++++++++++++ .../jero/modules/cloud/lock/DemoLockTest.java | 4 +- jero-boot/jero-cloud-module/pom.xml | 1 + jero-boot/pom.xml | 11 --- 26 files changed, 263 insertions(+), 67 deletions(-) rename jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/{jeecg.yaml => jero.yaml} (100%) create mode 100644 jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/MyRouteDefinition.java create mode 100644 jero-boot/jero-cloud-module/jero-cloud-nacos/Dockerfile create mode 100644 jero-boot/jero-cloud-module/jero-cloud-nacos/pom.xml create mode 100644 jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/java/com/alibaba/nacos/JeecgNacosApplication.java create mode 100644 jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/resources/application.yml diff --git a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/YouBianCodeUtil.java b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/YouBianCodeUtil.java index c6269402..e502af26 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/YouBianCodeUtil.java +++ b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/YouBianCodeUtil.java @@ -26,7 +26,7 @@ public class YouBianCodeUtil { */ public static synchronized String getNextYouBianCode(String code) { String newcode = ""; - if (code == null || code =="") { + if (oConvertUtils.isEmpty(code)) { String zimu = "A"; String num = getStrNum(1); newcode = zimu + num; diff --git a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/WebMvcConfiguration.java b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/WebMvcConfiguration.java index cefc78d7..cdf507d0 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/WebMvcConfiguration.java +++ b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/WebMvcConfiguration.java @@ -1,14 +1,18 @@ package com.jero.config; +import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.actuate.trace.http.InMemoryHttpTraceRepository; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Conditional; import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; @@ -72,9 +76,9 @@ public class WebMvcConfiguration implements WebMvcConfigurer { } /** - * 添加Long转json精度丢失的配置 - * @Return: void - */ + * 添加Long转json精度丢失的配置 + * @Return: void + */ @Override public void configureMessageConverters(List> converters) { MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter(); diff --git a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/modules/base/mapper/BaseCommonMapper.java b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/modules/base/mapper/BaseCommonMapper.java index 00f6d28a..120574a5 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/modules/base/mapper/BaseCommonMapper.java +++ b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/modules/base/mapper/BaseCommonMapper.java @@ -10,7 +10,7 @@ public interface BaseCommonMapper { * 保存日志 * @param dto */ - @InterceptorIgnore + @InterceptorIgnore(illegalSql = "true", tenantLine = "true") void saveLog(@Param("dto")LogDTO dto); } diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformButton.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformButton.java index 69ae0b02..37c6e8ac 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformButton.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformButton.java @@ -10,7 +10,7 @@ import java.io.Serializable; public class OnlCgformButton implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String cgformHeadId; diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJava.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJava.java index 59bc7500..f60279ad 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJava.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJava.java @@ -10,7 +10,7 @@ import java.io.Serializable; public class OnlCgformEnhanceJava implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String cgformHeadId; diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJs.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJs.java index 74ea86de..7971e744 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJs.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceJs.java @@ -10,7 +10,7 @@ import java.io.Serializable; public class OnlCgformEnhanceJs implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String cgformHeadId; diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceSql.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceSql.java index 9f3fa38d..45367d2d 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceSql.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformEnhanceSql.java @@ -10,7 +10,7 @@ import java.io.Serializable; public class OnlCgformEnhanceSql implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String cgformHeadId; diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformField.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformField.java index c8e5effc..77bd24c7 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformField.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformField.java @@ -13,7 +13,7 @@ import org.springframework.format.annotation.DateTimeFormat; public class OnlCgformField implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String cgformHeadId; diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformHead.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformHead.java index 328fb59d..1c3ec4fc 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformHead.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformHead.java @@ -13,7 +13,7 @@ import org.springframework.format.annotation.DateTimeFormat; public class OnlCgformHead implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String tableName; diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformIndex.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformIndex.java index bb8a4e61..5cd1ca9f 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformIndex.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgform/entity/OnlCgformIndex.java @@ -13,7 +13,7 @@ import org.springframework.format.annotation.DateTimeFormat; public class OnlCgformIndex implements Serializable { private static final long serialVersionUID = 1L; @TableId( - type = IdType.UUID + type = IdType.ASSIGN_UUID ) private String id; private String cgformHeadId; diff --git a/jero-boot/jero-boot-base/jero-boot-base-tools/pom.xml b/jero-boot/jero-boot-base/jero-boot-base-tools/pom.xml index 18ab484d..b41a8ef4 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-tools/pom.xml +++ b/jero-boot/jero-boot-base/jero-boot-base-tools/pom.xml @@ -29,11 +29,7 @@ cn.hutool - hutool-core - - - cn.hutool - hutool-crypto + hutool-all diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysGatewayRouteServiceImpl.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysGatewayRouteServiceImpl.java index a436d3a2..a93031f3 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysGatewayRouteServiceImpl.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysGatewayRouteServiceImpl.java @@ -37,7 +37,7 @@ public class SysGatewayRouteServiceImpl extends ServiceImpl ls = this.list(new LambdaQueryWrapper().eq(SysGatewayRoute::getStatus, 1)); + List ls = this.list(new LambdaQueryWrapper()); redisTemplate.opsForValue().set(key, JSON.toJSONString(ls)); } diff --git a/jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jero-dev.yaml b/jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jero-dev.yaml index 47852fd3..cddfef04 100644 --- a/jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jero-dev.yaml +++ b/jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jero-dev.yaml @@ -77,9 +77,6 @@ spring: #是否支持重试 retry: enabled: true -#minidao -minidao : - base-package: com.jero.modules.jmreport.* #jero专用配置 jero : # 本地:local\Minio:minio\阿里云:alioss diff --git a/jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jeecg.yaml b/jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jero.yaml similarity index 100% rename from jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jeecg.yaml rename to jero-boot/jero-boot-starter/jero-boot-starter-cloud/nacos/jero.yaml diff --git a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/handler/MySwaggerResourceProvider.java b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/handler/MySwaggerResourceProvider.java index 09e98995..aa63e369 100644 --- a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/handler/MySwaggerResourceProvider.java +++ b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/handler/MySwaggerResourceProvider.java @@ -3,6 +3,7 @@ package com.jero.handler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.cloud.gateway.route.RouteLocator; +import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Component; import springfox.documentation.swagger.web.SwaggerResource; import springfox.documentation.swagger.web.SwaggerResourcesProvider; @@ -13,6 +14,7 @@ import java.util.*; * 聚合各个服务的swagger接口 */ @Component +@Primary public class MySwaggerResourceProvider implements SwaggerResourcesProvider { /** * swagger2默认的url后缀 @@ -44,7 +46,7 @@ public class MySwaggerResourceProvider implements SwaggerResourcesProvider { .filter(route -> !self.equals(route.getUri().getHost())) .subscribe(route -> routeHosts.add(route.getUri().getHost())); - // 记录已经添加过的server,存在同一个应用注册了多个服务在eureka上 + // 记录已经添加过的server,存在同一个应用注册了多个服务在nacos上 Set dealed = new HashSet<>(); routeHosts.forEach(instance -> { // 拼接url diff --git a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteLoader.java b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteLoader.java index c4fb61d1..478c55e4 100644 --- a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteLoader.java +++ b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteLoader.java @@ -128,7 +128,7 @@ public class DynamicRouteLoader implements ApplicationEventPublisherAware { * @return */ private void loadRoutesByRedis() { - List routes = Lists.newArrayList(); + List routes = Lists.newArrayList(); configService = createConfigService(); if (configService == null) { log.warn("initConfigService fail"); @@ -143,9 +143,14 @@ public class DynamicRouteLoader implements ApplicationEventPublisherAware { e.printStackTrace(); } } - for (RouteDefinition definition : routes) { + for (MyRouteDefinition definition : routes) { log.info("update route : {}", definition.toString()); - dynamicRouteService.add(definition); + Integer status=definition.getStatus(); + if(status.equals(0)){ + dynamicRouteService.delete(definition.getId()); + }else{ + dynamicRouteService.add(definition); + } } this.publisher.publishEvent(new RefreshRoutesEvent(this)); } @@ -160,13 +165,13 @@ public class DynamicRouteLoader implements ApplicationEventPublisherAware { * @param array * @return */ - - public static List getRoutesByJson(JSONArray array) throws URISyntaxException { - List ls = new ArrayList<>(); + public static List getRoutesByJson(JSONArray array) throws URISyntaxException { + List ls = new ArrayList<>(); for (int i = 0; i < array.size(); i++) { JSONObject obj = array.getJSONObject(i); - RouteDefinition route = new RouteDefinition(); + MyRouteDefinition route = new MyRouteDefinition(); route.setId(obj.getString("routerId")); + route.setStatus(obj.getInteger("status")); Object uri = obj.get("uri"); if (uri == null) { route.setUri(new URI("lb://" + obj.getString("name"))); diff --git a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteService.java b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteService.java index 315e7ec3..886d58b8 100644 --- a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteService.java +++ b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/DynamicRouteService.java @@ -47,14 +47,13 @@ public class DynamicRouteService implements ApplicationEventPublisherAware { * @param id * @return */ - public synchronized Mono> delete(String id) { - return this.repository.delete(Mono.just(id)).then(Mono.defer(() -> { - return Mono.just(ResponseEntity.ok().build()); - })).onErrorResume((t) -> { - return t instanceof NotFoundException; - }, (t) -> { - return Mono.just(ResponseEntity.notFound().build()); - }); + public synchronized void delete(String id) { + try { + repository.delete(Mono.just(id)).subscribe(); + this.publisher.publishEvent(new RefreshRoutesEvent(this)); + }catch (Exception e){ + e.printStackTrace(); + } } /** diff --git a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/MyRouteDefinition.java b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/MyRouteDefinition.java new file mode 100644 index 00000000..ccf1b74c --- /dev/null +++ b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/java/com/jero/loader/MyRouteDefinition.java @@ -0,0 +1,22 @@ +package com.jero.loader; + +import org.springframework.cloud.gateway.route.RouteDefinition; + +/** + * 自定义RouteDefinition + * @author zyf + */ +public class MyRouteDefinition extends RouteDefinition { + /** + * 路由状态 + */ + private Integer status; + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } +} diff --git a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/resources/application.yml b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/resources/application.yml index d698bacd..ee406f66 100644 --- a/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/resources/application.yml +++ b/jero-boot/jero-cloud-module/jero-cloud-gateway/src/main/resources/application.yml @@ -16,23 +16,23 @@ spring: allowedMethods: "*" allowedHeaders: "*" #如果启用nacos或者数据库配置请删除一下配置 - routes: - - id: jero-demo - uri: lb://jero-demo - predicates: - - Path=/mock/**,/test/**,/bigscreen/template1/**,/bigscreen/template2/** - - id: jero-system - uri: lb://jero-system - predicates: - - Path=/sys/**,/eoa/**,/v1/**,/joa/**,/online/**,/bigscreen/**,/jmreport/**,/desform/**,/act/**,/plug-in/**,/generic/** - - id: jero-system-websocket - uri: lb:ws://jero-system - predicates: - - Path=/websocket/**,/eoaSocket/**,/newsWebsocket/** - - id: jero-demo-websocket - uri: lb:ws://jero-demo - predicates: - - Path=/vxeSocket/** +# routes: +# - id: jero-demo +# uri: lb://jero-demo +# predicates: +# - Path=/mock/**,/test/**,/bigscreen/template1/**,/bigscreen/template2/** +# - id: jero-system +# uri: lb://jero-system +# predicates: +# - Path=/sys/**,/eoa/**,/v1/**,/joa/**,/online/**,/bigscreen/**,/jmreport/**,/desform/**,/act/**,/plug-in/**,/generic/** +# - id: jero-system-websocket +# uri: lb:ws://jero-system +# predicates: +# - Path=/websocket/**,/eoaSocket/**,/newsWebsocket/** +# - id: jero-demo-websocket +# uri: lb:ws://jero-demo +# predicates: +# - Path=/vxeSocket/** # 全局熔断降级配置 default-filters: - name: Hystrix diff --git a/jero-boot/jero-cloud-module/jero-cloud-nacos/Dockerfile b/jero-boot/jero-cloud-module/jero-cloud-nacos/Dockerfile new file mode 100644 index 00000000..e8c89a24 --- /dev/null +++ b/jero-boot/jero-cloud-module/jero-cloud-nacos/Dockerfile @@ -0,0 +1,15 @@ +FROM anapsix/alpine-java:8_server-jre_unlimited + +MAINTAINER jeroos@163.com + +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +RUN mkdir -p /jeecg-cloud-nacos + +WORKDIR /jeecg-cloud-nacos + +EXPOSE 8848 + +ADD ./target/jeecg-cloud-nacos-2.4.6.jar ./ + +CMD sleep 5;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jero-cloud-nacos-2.4.6.jar \ No newline at end of file diff --git a/jero-boot/jero-cloud-module/jero-cloud-nacos/pom.xml b/jero-boot/jero-cloud-module/jero-cloud-nacos/pom.xml new file mode 100644 index 00000000..13cfb51b --- /dev/null +++ b/jero-boot/jero-cloud-module/jero-cloud-nacos/pom.xml @@ -0,0 +1,75 @@ + + + 4.0.0 + + jero-cloud-module + com.jero.boot + 2.4.6 + + + jero-cloud-nacos + jero-cloud-nacos + nacos启动模块 + + + + aliyun + aliyun Repository + https://maven.aliyun.com/repository/public + + false + + + + jeecg + jeecg Repository + https://maven.jeecg.org/nexus/content/repositories/jeecg + + false + + + + + + + org.apache.tomcat.embed + tomcat-embed-jasper + + + org.springframework.boot + spring-boot-starter-security + + + org.jeecgframework.nacos + nacos-naming + 1.4.1 + + + org.jeecgframework.nacos + nacos-istio + 1.4.1 + + + org.jeecgframework.nacos + nacos-config + 1.4.1 + + + org.jeecgframework.nacos + nacos-console + 1.4.1 + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + \ No newline at end of file diff --git a/jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/java/com/alibaba/nacos/JeecgNacosApplication.java b/jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/java/com/alibaba/nacos/JeecgNacosApplication.java new file mode 100644 index 00000000..1b6a46d7 --- /dev/null +++ b/jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/java/com/alibaba/nacos/JeecgNacosApplication.java @@ -0,0 +1,37 @@ +package com.alibaba.nacos; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.web.servlet.ServletComponentScan; +import org.springframework.scheduling.annotation.EnableScheduling; + +/** + * Nacos 启动类 + * 引用的nacos console 源码运行,简化开发 + * 生产建议从官网下载最新版配置运行 + * @author zyf + */ +@SpringBootApplication(scanBasePackages = "com.alibaba.nacos") +@ServletComponentScan +@EnableScheduling +public class JeecgNacosApplication { + + /** + * 是否单机模式启动 + */ + private static String standalone = "true"; + + /** + * 是否开启鉴权 + */ + private static String enabled = "false"; + + public static void main(String[] args) { + System.setProperty("nacos.standalone", standalone); + System.setProperty("nacos.core.auth.enabled", enabled); + System.setProperty("server.tomcat.basedir","logs"); + //自定义启动端口号 + System.setProperty("server.port","8848"); + SpringApplication.run(JeecgNacosApplication.class, args); + } +} diff --git a/jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/resources/application.yml b/jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/resources/application.yml new file mode 100644 index 00000000..658c1f71 --- /dev/null +++ b/jero-boot/jero-cloud-module/jero-cloud-nacos/src/main/resources/application.yml @@ -0,0 +1,54 @@ +server: + servlet: + contextPath: /nacos + tomcat: + accesslog: + enabled: true + pattern: '%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i' + basedir: '' +spring: + datasource: + platform: mysql +db: + num: 1 + password: + '0': ${MYSQL-PWD:root} + url: + '0': jdbc:mysql://${MYSQL-HOST:jero-boot-mysql}:${MYSQL-PORT:3306}/${MYSQL-DB:nacos}?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true + user: + '0': ${MYSQL-USER:root} +management: + metrics: + export: + elastic: + enabled: false + influx: + enabled: false +nacos: + core: + auth: + caching: + enabled: true + default: + token: + expire: + seconds: 18000 + secret: + key: SecretKey012345678901234567890123456789012345678901234567890123456789 + enabled: false + system: + type: nacos + istio: + mcp: + server: + enabled: false + naming: + empty-service: + auto-clean: true + clean: + initial-delay-ms: 50000 + period-time-ms: 30000 + security: + ignore: + urls: /,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-ui/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/** + standalone: true \ No newline at end of file diff --git a/jero-boot/jero-cloud-module/jero-cloud-system-start/src/main/java/com/jero/modules/cloud/lock/DemoLockTest.java b/jero-boot/jero-cloud-module/jero-cloud-system-start/src/main/java/com/jero/modules/cloud/lock/DemoLockTest.java index 92875c69..2fe1498e 100644 --- a/jero-boot/jero-cloud-module/jero-cloud-system-start/src/main/java/com/jero/modules/cloud/lock/DemoLockTest.java +++ b/jero-boot/jero-cloud-module/jero-cloud-system-start/src/main/java/com/jero/modules/cloud/lock/DemoLockTest.java @@ -1,7 +1,7 @@ package com.jero.modules.cloud.lock; +import com.jero.boot.starter.lock.annotation.JLock; import lombok.extern.slf4j.Slf4j; -import com.jero.boot.starter.lock.annotation.DistributedLock; import com.jero.boot.starter.lock.client.RedissonLockClient; import com.jero.boot.starter.rabbitmq.client.RabbitMqClient; import com.jero.common.base.BaseMap; @@ -28,7 +28,7 @@ public class DemoLockTest { * 测试分布式锁【注解方式】 */ @Scheduled(cron = "0/5 * * * * ?") - @DistributedLock(lockKey = CloudConstant.REDISSON_DEMO_LOCK_KEY1) + @JLock(lockKey = CloudConstant.REDISSON_DEMO_LOCK_KEY1) public void execute() throws InterruptedException { log.info("执行execute任务开始,休眠三秒"); Thread.sleep(3000); diff --git a/jero-boot/jero-cloud-module/pom.xml b/jero-boot/jero-cloud-module/pom.xml index 370c0ffe..d9d040ca 100644 --- a/jero-boot/jero-cloud-module/pom.xml +++ b/jero-boot/jero-cloud-module/pom.xml @@ -17,6 +17,7 @@ jero-cloud-monitor jero-cloud-xxljob jero-cloud-sentinel + jero-cloud-nacos \ No newline at end of file diff --git a/jero-boot/pom.xml b/jero-boot/pom.xml index 57c611a6..2b801f15 100644 --- a/jero-boot/pom.xml +++ b/jero-boot/pom.xml @@ -238,17 +238,6 @@ hutool-all ${hutool.version} - - cn.hutool - hutool-core - ${hutool.version} - - - cn.hutool - hutool-crypto - ${hutool.version} - - commons-beanutils