springCloud eureka版本(nacos后面再记录)
网上有很多的教程,可以搜索【方志鹏】,他的教程很容易看懂,我写的目的只是为了记录 首先创建一个maven父工程,然后在父工程中创建一个springboot项目
4.0.0
com
eureka-server
0.0.1-SNAPSHOT
eureka-server
Demo project for Spring Boot org.springframework.boot spring-boot-starter-parent 2.0.3.RELEASE
org.springframework.cloud spring-cloud-starter-netflix-eureka-server 2.0.3.RELEASE
org.springframework.boot spring-boot-maven-plugin 2.0.3.RELEASE
复制代码 pom.xml文件,然后在启动类上加上 @EnableEurekaServer注解
接下来就是修改配置文件 我用的是yml结尾的 server: port: 8761
eureka: client: registerWithEureka: false fetchRegistry: false serviceUrl: defaultZone: http://localhost:8761/eureka/ spring: application: name: erueka-server
然后启动项目,启动成功之后再浏览器上访问 localhost:8761即可
接下来再创建一个springboot项目,取名叫eureka-client pom.xml文件如下
4.0.0
com
eureka-client
0.0.1-SNAPSHOT
eureka-client
Demo project for Spring Boot org.springframework.boot spring-boot-starter-parent 2.0.3.RELEASE
1.8
org.springframework.cloud spring-cloud-starter-netflix-eureka-client 2.0.3.RELEASE org.springframework.boot spring-boot-starter-web
org.springframework.boot spring-boot-maven-plugin
复制代码 在启动类上加上注解 @EnableEurekaClient
然后修改配置文件
server: port: 8762 spring: application: name: eureka-client eureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/
然后启动项目 接着在浏览器上访问localhost:8761 发现eureka-client已经注册了
然后eureka-client项目中新建一个接口 @RestController public class HelloController {
@GetMapping(value = "/hello")
public String hello(@RequestParam String name){return "你好啊,"+name;
}
复制代码 }
然后再创建一个新的boot项目,pom.xml和eureka-client是一样的, 然后再启动类上加上注解 @EnableEurekaClient 我们使用RestTemplate来进行远程调用 在启动类中
@Bean @LoadBalanced private RestTemplate getRestTemplate(){ return new RestTemplate(); }
修改配置文件 server: port: 8763 spring: application: name: eureka-client-test eureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/
然后新建一个controller
@RestController public class TestController {
@Autowired
private RestTemplate restTemplate;@RequestMapping(value = "/test",method = RequestMethod.GET)
public String test(@RequestParam String name){String value = restTemplate.getForObject("http://eureka-client/hello?name="+name, String.class);return value;
}
复制代码 } 将RestTemplate注入进来, 这里http://eureka-client/hello?name="+name name表示要传的参数,eureka-client就是你要调用的接口所在的服务名
将三个项目都启动,然后浏览器访问localhost:8763/test?name=张三 就可以了
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
