MicroService Provider:https://files.cnblogs.com/files/xiandedanteng/empCloud190824.rar
MicroService Consumer:https://files.cnblogs.com/files/xiandedanteng/empCloudConsumer190824.rar
After started comsumer. If I type "http://localhost:8000/emp/2" in browser, I will get:
Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sat Aug 24 14:54:38 CST 2019 There was an unexpected error (type=Internal Server Error, status=500). I/O error on GET request for "http://localhost:8080/emp/2": Connection refused: connect; nested exception is java.net.ConnectException: Connection refused: connect
And then started provider, try "http://localhost:8000/emp/2" again, I can get:
<Emp> <id>2</id> <name>刘德华</name> <age>42</age> </Emp>
Oberviously, comsumer at port 8000 got the information given by provider at port 8088.
the essential code in consumer is:
package com.hy.empcloud; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.client.RestTemplate; @RestController public class EmpControl { @Autowired EmpService service; @Autowired RestTemplate restTemplate; @GetMapping("/test") public String test() { return "Hello"; } @GetMapping("/emp/{id}") public Emp get(@PathVariable Long id) throws Exception{ return this.restTemplate.getForObject("http://localhost:8080/emp/"+id, Emp.class); } @GetMapping("/all") public List<Emp> get() { return this.service.getAll(); } }
the key code of provider is:
package com.hy.empcloud; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.client.RestTemplate; @RestController public class EmpControl { @Autowired EmpService service; @Autowired RestTemplate restTemplate; @GetMapping("/test") public String test() { return "Hello"; } @GetMapping("/emp/{id}") public Emp get(@PathVariable Long id) throws Exception{ return this.service.find(id); } @GetMapping("/all") public List<Emp> get() { return this.service.getAll(); } }
--END--
2019年8月24日15点02分