From 36d0754f32ad7c1f85b14fc3e4e6ae976ae877f3 Mon Sep 17 00:00:00 2001 From: zhangdaiscott <zhangdaiscott@163.com> Date: Sun, 17 Apr 2022 17:59:26 +0800 Subject: [PATCH] 【3.2.0 版本发布】微服务测试示例调整 --- jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoController.java | 69 --------------------------------------------------------------------- jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoFeignController.java | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoProviderController.java | 33 +++++++++++++++++++++++++++++++++ jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/provider/JcloudDemoProvider.java | 28 ---------------------------- jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/JcloudDemoService.java | 2 +- jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/impl/JcloudDemoServiceImpl.java | 5 +++-- jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/xxljob/TestJobHandler.java | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/xxljob/TestJobHandler.java | 74 -------------------------------------------------------------------------- 8 files changed, 179 insertions(+), 174 deletions(-) delete mode 100644 jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoController.java create mode 100644 jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoFeignController.java create mode 100644 jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoProviderController.java delete mode 100644 jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/provider/JcloudDemoProvider.java create mode 100644 jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/xxljob/TestJobHandler.java delete mode 100644 jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/xxljob/TestJobHandler.java diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoController.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoController.java deleted file mode 100644 index 8bc06b4..0000000 --- a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoController.java +++ /dev/null @@ -1,69 +0,0 @@ -//package org.jeecg.modules.demo.cloud.controller; -// -//import com.alibaba.csp.sentinel.annotation.SentinelResource; -//import io.swagger.annotations.Api; -//import io.swagger.annotations.ApiOperation; -//import lombok.extern.slf4j.Slf4j; -//import org.jeecg.common.api.vo.Result; -//import org.jeecg.common.system.api.ISysBaseAPI; -//import org.jeecg.common.system.vo.DictModel; -//import org.springframework.beans.factory.annotation.Autowired; -//import org.springframework.web.bind.annotation.GetMapping; -//import org.springframework.web.bind.annotation.RequestMapping; -//import org.springframework.web.bind.annotation.RestController; -//import javax.annotation.Resource; -//import java.util.List; -// -///** -// * -// */ -//@Slf4j -//@Api(tags = "Cloud示例") -//@RestController -//@RequestMapping("/test") -//public class JcloudDemoController { -// @Resource -// private ISysBaseAPI sysBaseApi; -//// @Autowired -//// private ErpHelloApi erpHelloApi; -// -// /** -// * 测试 -// * -// * @return -// */ -// @GetMapping("/remote") -// @SentinelResource(value = "remoteDict",fallback = "getDefaultHandler") -// @ApiOperation(value = "测试feign", notes = "测试feign") -// public Result remoteDict() { -// List<DictModel> list = sysBaseApi.queryAllDict(); -// return Result.OK(list); -// } -// -// -//// /** -//// * 测试调用 erp 微服务接口 -//// * 【如何测试:通过archetype生成微服务模块,快速集成测试】 -//// * http://doc.jeecg.com/2194069 -//// * @return -//// */ -//// @GetMapping("/remoteErp") -//// @ApiOperation(value = "测试feign erp", notes = "测试feign erp") -//// public Result remoteCrm() { -//// log.info("call erp 服务"); -//// String res = erpHelloApi.callHello(); -//// return Result.OK(res); -//// } -// -// /** -// * 熔断,默认回调函数 -// * -// * @return -// */ -// public Result<Object> getDefaultHandler() { -// log.info("测试JcloudDemoController-remoteDict 熔断降级"); -// return Result.OK("测试JcloudDemoController-remoteDict 熔断降级"); -// } -// -// -//} diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoFeignController.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoFeignController.java new file mode 100644 index 0000000..76a8266 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoFeignController.java @@ -0,0 +1,68 @@ +//package org.jeecg.modules.demo.cloud.controller; +// +//import com.alibaba.csp.sentinel.annotation.SentinelResource; +//import io.swagger.annotations.Api; +//import io.swagger.annotations.ApiOperation; +//import lombok.extern.slf4j.Slf4j; +//import org.jeecg.common.api.vo.Result; +//import org.jeecg.common.system.api.ISysBaseAPI; +//import org.jeecg.common.system.vo.DictModel; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.web.bind.annotation.GetMapping; +//import org.springframework.web.bind.annotation.RequestMapping; +//import org.springframework.web.bind.annotation.RestController; +//import javax.annotation.Resource; +//import java.util.List; +// +///** +// * +// */ +//@Slf4j +//@Api(tags = "【微服务】单元测试") +//@RestController +//@RequestMapping("/test") +//public class JcloudDemoFeignController { +// @Resource +// private ISysBaseAPI sysBaseApi; +//// @Autowired +//// private ErpHelloApi erpHelloApi; +// +// /** +// * 测试 +// * +// * @return +// */ +// @GetMapping("/callSystem") +// //@SentinelResource(value = "remoteDict",fallback = "getDefaultHandler") +// @ApiOperation(value = "通过feign调用system服务", notes = "测试jeecg-demo服务,是否通过fegin调用system服务接口") +// public Result getRemoteDict() { +// List<DictModel> list = sysBaseApi.queryAllDict(); +// return Result.OK(list); +// } +// +// +//// /** +//// * 测试调用 erp 微服务接口 +//// * 【如何测试:通过archetype生成微服务模块,快速集成测试】 +//// * http://doc.jeecg.com/2194069 +//// * @return +//// */ +//// @GetMapping("/callErp") +//// @ApiOperation(value = "测试feign erp", notes = "测试feign erp") +//// public Result callErp() { +//// log.info("call erp 服务"); +//// String res = erpHelloApi.callHello(); +//// return Result.OK(res); +//// } +// +// /** +// * 熔断,默认回调函数 +// * +// * @return +// */ +// public Result<Object> getDefaultHandler() { +// log.info("测试JcloudDemoController-remoteDict 熔断降级"); +// return Result.error("测试JcloudDemoController-remoteDict 熔断降级"); +// } +// +//} diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoProviderController.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoProviderController.java new file mode 100644 index 0000000..4688694 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/controller/JcloudDemoProviderController.java @@ -0,0 +1,33 @@ +package org.jeecg.modules.demo.cloud.controller; + +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.demo.cloud.service.JcloudDemoService; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * 服务端提供方——feign接口 + * 【提供给system-start调用测试,看feign是否畅通】 + * @author: jeecg-boot + */ +@Slf4j +@RestController +@RequestMapping("/test") +public class JcloudDemoProviderController { + + @Resource + private JcloudDemoService jcloudDemoService; + + @GetMapping("/getMessage") + public String getMessage(@RequestParam String name) { + String msg = jcloudDemoService.getMessage(name); + log.info(" 微服务被调用:{} ",msg); + return msg; + } + +} diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/provider/JcloudDemoProvider.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/provider/JcloudDemoProvider.java deleted file mode 100644 index ec008d0..0000000 --- a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/provider/JcloudDemoProvider.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.jeecg.modules.demo.cloud.provider; - -import org.jeecg.common.api.vo.Result; -import org.jeecg.modules.demo.cloud.service.JcloudDemoService; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; - -/** - * feign服务端接口 - * @author: jeecg-boot - */ -@RestController -@RequestMapping("/test") -public class JcloudDemoProvider { - - @Resource - private JcloudDemoService jcloudDemoService; - - @GetMapping("/getMessage") - public Result<String> getMessage(@RequestParam String name) { - return jcloudDemoService.getMessage(name); - } - -} diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/JcloudDemoService.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/JcloudDemoService.java index 28415c9..ba731eb 100644 --- a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/JcloudDemoService.java +++ b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/JcloudDemoService.java @@ -13,5 +13,5 @@ public interface JcloudDemoService { * @param name 姓名 * @return "Hello," + name */ - Result<String> getMessage(String name); + String getMessage(String name); } diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/impl/JcloudDemoServiceImpl.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/impl/JcloudDemoServiceImpl.java index 3a5b857..8d66d4f 100644 --- a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/impl/JcloudDemoServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/service/impl/JcloudDemoServiceImpl.java @@ -11,7 +11,8 @@ import org.springframework.stereotype.Service; @Service public class JcloudDemoServiceImpl implements JcloudDemoService { @Override - public Result<String> getMessage(String name) { - return Result.OK("Hello," + name); + public String getMessage(String name) { + String resMsg = "Hello,我是jeecg-demo服务节点,收到你的消息:【 "+ name +" 】"; + return resMsg; } } diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/xxljob/TestJobHandler.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/xxljob/TestJobHandler.java new file mode 100644 index 0000000..a3bd805 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/cloud/xxljob/TestJobHandler.java @@ -0,0 +1,74 @@ +// +//package org.jeecg.modules.demo.cloud.xxljob; +// +//import com.xxl.job.core.biz.model.ReturnT; +//import com.xxl.job.core.handler.annotation.XxlJob; +//import lombok.extern.slf4j.Slf4j; +//import org.jeecg.common.config.mqtoken.UserTokenContext; +//import org.jeecg.common.constant.CommonConstant; +//import org.jeecg.common.system.api.ISysBaseAPI; +//import org.jeecg.common.system.util.JwtUtil; +//import org.jeecg.common.util.RedisUtil; +//import org.jeecg.common.util.SpringContextUtils; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.stereotype.Component; +// +// +///** +// * xxl-job定时任务测试 +// */ +//@Slf4j +//@Component +//public class TestJobHandler { +// @Autowired +// ISysBaseAPI sysBaseApi; +// +// /** +// * 简单任务 +// * +// * 测试:无token调用feign接口 +// * +// * @param params +// * @return +// */ +// +// @XxlJob(value = "testJob") +// public ReturnT<String> demoJobHandler(String params) { +// //1.生成临时令牌Token到线程中 +// UserTokenContext.setToken(getTemporaryToken()); +// +// log.info("我是 jeecg-demo 服务里的定时任务 testJob , 我执行了..............................."); +// log.info("我调用 jeecg-system 服务的字典接口:{}",sysBaseApi.queryAllDict()); +// //。。。此处可以写多个feign接口调用 +// +// //2.使用完,删除临时令牌Token +// UserTokenContext.remove(); +// return ReturnT.SUCCESS; +// } +// +// public void init() { +// log.info("init"); +// } +// +// public void destroy() { +// log.info("destory"); +// } +// +// /** +// * 获取临时令牌 +// * +// * 模拟登陆接口,获取模拟 Token +// * @return +// */ +// public static String getTemporaryToken() { +// RedisUtil redisUtil = SpringContextUtils.getBean(RedisUtil.class); +// // 模拟登录生成Token +// String token = JwtUtil.sign("??", "??"); +// // 设置Token缓存有效时间为 5 分钟 +// redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); +// redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, 5 * 60 * 1000); +// return token; +// } +// +//} +// diff --git a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/xxljob/TestJobHandler.java b/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/xxljob/TestJobHandler.java deleted file mode 100644 index d273c9d..0000000 --- a/jeecg-boot/jeecg-boot-module-demo/src/main/java/org/jeecg/modules/demo/xxljob/TestJobHandler.java +++ /dev/null @@ -1,74 +0,0 @@ -// -//package org.jeecg.modules.demo.xxljob; -// -//import com.xxl.job.core.biz.model.ReturnT; -//import com.xxl.job.core.handler.annotation.XxlJob; -//import lombok.extern.slf4j.Slf4j; -//import org.jeecg.common.config.mqtoken.UserTokenContext; -//import org.jeecg.common.constant.CommonConstant; -//import org.jeecg.common.system.api.ISysBaseAPI; -//import org.jeecg.common.system.util.JwtUtil; -//import org.jeecg.common.util.RedisUtil; -//import org.jeecg.common.util.SpringContextUtils; -//import org.springframework.beans.factory.annotation.Autowired; -//import org.springframework.stereotype.Component; -// -// -///** -// * xxl-job定时任务测试 -// */ -//@Component -//@Slf4j -//public class TestJobHandler { -// @Autowired -// ISysBaseAPI sysBaseApi; -// -// /** -// * 简单任务 -// * -// * 测试:无token调用feign接口 -// * -// * @param params -// * @return -// */ -// -// @XxlJob(value = "testJob") -// public ReturnT<String> demoJobHandler(String params) { -// //1.生成临时令牌Token到线程中 -// UserTokenContext.setToken(getTemporaryToken()); -// -// log.info("我是 jeecg-demo 服务里的定时任务 testJob , 我执行了..............................."); -// log.info("我调用 jeecg-system 服务的字典接口:{}",sysBaseApi.queryAllDict()); -// //。。。此处可以写多个feign接口调用 -// -// //2.使用完,删除临时令牌Token -// UserTokenContext.remove(); -// return ReturnT.SUCCESS; -// } -// -// public void init() { -// log.info("init"); -// } -// -// public void destroy() { -// log.info("destory"); -// } -// -// /** -// * 获取临时令牌 -// * -// * 模拟登陆接口,获取模拟 Token -// * @return -// */ -// public static String getTemporaryToken() { -// RedisUtil redisUtil = SpringContextUtils.getBean(RedisUtil.class); -// // 模拟登录生成Token -// String token = JwtUtil.sign("??", "??"); -// // 设置Token缓存有效时间为 5 分钟 -// redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); -// redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, 5 * 60 * 1000); -// return token; -// } -// -//} -// -- libgit2 0.22.2