创建子模块的(铁打不动的)过程:
1 创建module;2修改pom文件;3 编写yml;4 编写主启动类;5编写业务代码;6测试;
1 创建module;
2修改pom文件;
<code>
<project> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactid>parentcloud/<artifactid>
<groupid>com.znrt.springcloud/<groupid>
<version>1.0-SNAPSHOT/<version>
/<parent>
<modelversion>4.0.0/<modelversion>
<artifactid>cloud-client01/<artifactid>
<dependencies>
<dependency>
<groupid>org.springframework.boot/<groupid>
<artifactid>spring-boot-starter-web/<artifactid>
/<dependency>
<dependency>
<groupid>org.springframework.boot/<groupid>
<artifactid>spring-boot-starter-actuator/<artifactid>
/<dependency>
<dependency>
<groupid>org.springframework.boot/<groupid>
<artifactid>spring-boot-devtools/<artifactid>
<scope>runtime/<scope>
<optional>true/<optional>
/<dependency>
<dependency>
<groupid>org.projectlombok/<groupid>
<artifactid>lombok/<artifactid>
<optional>true/<optional>
/<dependency>
<dependency>
<groupid>org.springframework.boot/<groupid>
<artifactid>spring-boot-starter-test/<artifactid>
<scope>test/<scope>
/<dependency>
/<dependencies>
/<project>/<code>
3 编写yml;
<code>server:
port: 80/<code>
4 编写主启动类;
包名建议和服务模块一致 com.znrt.springcloud
<code>@SpringBootApplication
public class CloudClient01 {
public static void main(String[] args) {
SpringApplication.run(CloudClient01.class,args);
}
}/<code>
5编写业务代码;
5.1复制pojo
5.2创建配置类 在加载boot模块的时候能初始化RestTemplate
<code>/**
* @Author s.wong
* @Create 2020-04-06-13:03
* @Description 客户端配置类
*/
@Configuration
public class ApplicationContextConfig {
@Bean
public RestTemplate getRestTemplate(){
return new RestTemplate();
}
}/<code>
5.3编写controller代码,由于客户端只是负责调用,所以没有servic和dao层
<code>/**
* @Author s.wong
* @Create 2020-04-06-12:50
* @Description 客户端模块 的controller类
*/
@RestController
@Slf4j
public class ClientController {
public static final String URL_PREFIX = "http://localhost:8001/";
@Resource
private RestTemplate restTemplate;
@GetMapping("/client/create")
public CommonResult create(Payment payment){
return restTemplate.postForObject(URL_PREFIX+"/payment/create/",payment,CommonResult.class);
}
@GetMapping("/client/get/{id}")
public CommonResult getPaymentById(@PathVariable("id") Long id){
return restTemplate.getForObject(URL_PREFIX+"/payment/get/"+id,CommonResult.class);
}
}/<code>
<code>//服务端controller 代码修改
@PostMapping("/payment/create")
public CommonResult create(@RequestBody Payment payment){
int i = paymentService.create(payment);
log.info("create 方法的执行结果是:"+i);
log.info("测试热部署");
log.info("测试热部署2222");
if(i>0){
return new CommonResult(200,"执行成功",i);
}else{
return new CommonResult(401,"添加方法执行失败");
}
}/<code>
6测试;
閱讀更多 Java漁夫 的文章