diff --git a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/http/Controller.java b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/http/Controller.java new file mode 100644 index 0000000000000000000000000000000000000000..055f9b95b50f50e98ff7c94bcdf616ea4d99c82b --- /dev/null +++ b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/http/Controller.java @@ -0,0 +1,44 @@ +package cn.bugstack.xfg.frame.trigger.http; + +import cn.bugstack.types.common.Constants; +import cn.bugstack.types.model.Response; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Random; +import java.util.concurrent.ThreadPoolExecutor; + +@Slf4j +@RestController +public class Controller { + + @Resource + private ThreadPoolExecutor threadPoolExecutor; + + /** + * http://localhost:8090/success + */ + @RequestMapping("/success") + public Response success() { + log.info("测试调用"); + try { + // 随机休眠 + Thread.sleep(new Random().nextInt(1000)); + // 开启线程 + threadPoolExecutor.execute(() -> { + log.info("开启线程"); + }); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + if (new Random().nextInt(100) == 1) throw new RuntimeException("异常"); + return Response.builder() + .code(Constants.ResponseCode.SUCCESS.getCode()) + .info(Constants.ResponseCode.SUCCESS.getInfo()) + .data("查询用户信息,小傅哥") + .build(); + } + +} diff --git a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/http/package-info.java b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/http/package-info.java deleted file mode 100644 index 78923e014adfcafa9b810bf0c3e031e4d2564f70..0000000000000000000000000000000000000000 --- a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/http/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * HTTP 接口服务 - */ -package cn.bugstack.trigger.http; \ No newline at end of file diff --git a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/job/package-info.java b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/job/package-info.java deleted file mode 100644 index 1c1926cf3a8b910ecce664ff9228dbf608b017a6..0000000000000000000000000000000000000000 --- a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/job/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * 任务服务,可以选择使用 Spring 默认提供的 Schedule https://bugstack.cn/md/road-map/quartz.html - */ -package cn.bugstack.trigger.job; \ No newline at end of file diff --git a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/listener/package-info.java b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/listener/package-info.java deleted file mode 100644 index c561ee9475f05b43b318c663118117f23c37b210..0000000000000000000000000000000000000000 --- a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/listener/package-info.java +++ /dev/null @@ -1,5 +0,0 @@ -/** - * 监听服务;在单体服务中,解耦流程。类似MQ的使用,如Spring的Event,Guava的事件总线都可以。如果使用了 Redis 那么也可以有发布/订阅使用。 - * Guava:https://bugstack.cn/md/road-map/guava.html - */ -package cn.bugstack.trigger.listener; \ No newline at end of file diff --git a/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/package-info.java b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/package-info.java new file mode 100644 index 0000000000000000000000000000000000000000..801911fc49b3445994c399c46f3686b5d50baef7 --- /dev/null +++ b/xfg-frame-archetype-std-trigger/src/main/java/cn/bugstack/trigger/package-info.java @@ -0,0 +1,7 @@ +/** + * http 提供服务 + * job xxl-job 任务调度 + * listener RocketMQ 监听 + * rpc Dubbo 接口,实现RPC服务 + */ +package cn.bugstack.trigger; \ No newline at end of file diff --git a/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/common/Constants.java b/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/common/Constants.java index 3e21a0d11d286581ba84b5545c78411809a745e9..a15efbe2096f49fcc0c3ce294685366edcd3df2f 100644 --- a/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/common/Constants.java +++ b/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/common/Constants.java @@ -1,7 +1,26 @@ package cn.bugstack.types.common; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; + public class Constants { public final static String SPLIT = ","; + @AllArgsConstructor + @NoArgsConstructor + @Getter + public enum ResponseCode { + + SUCCESS("0000", "成功"), + UN_ERROR("0001", "未知失败"), + ILLEGAL_PARAMETER("0002", "非法参数"), + ; + + private String code; + private String info; + + } + } diff --git a/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/enums/ResponseCode.java b/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/enums/ResponseCode.java deleted file mode 100644 index 7460d4b0cfdc6c3c82e27089338ef10bf0c40ef1..0000000000000000000000000000000000000000 --- a/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/enums/ResponseCode.java +++ /dev/null @@ -1,20 +0,0 @@ -package cn.bugstack.types.enums; - -import lombok.AllArgsConstructor; -import lombok.Getter; -import lombok.NoArgsConstructor; - -@AllArgsConstructor -@NoArgsConstructor -@Getter -public enum ResponseCode { - - SUCCESS("0000", "成功"), - UN_ERROR("0001", "未知失败"), - ILLEGAL_PARAMETER("0002", "非法参数"), - ; - - private String code; - private String info; - -} diff --git a/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/model/Response.java b/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/model/Response.java new file mode 100644 index 0000000000000000000000000000000000000000..ab1dd73ef5b7fd567c2add75cf73b668b363ee90 --- /dev/null +++ b/xfg-frame-archetype-std-types/src/main/java/cn/bugstack/types/model/Response.java @@ -0,0 +1,22 @@ +package cn.bugstack.types.model; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class Response implements Serializable { + + private static final long serialVersionUID = 5130392244064623509L; + + private String code; + private String info; + private T data; + +} \ No newline at end of file