Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java @enableurekaclient有什么用途?_Java_Spring_Spring Boot - Fatal编程技术网

Java @enableurekaclient有什么用途?

Java @enableurekaclient有什么用途?,java,spring,spring-boot,Java,Spring,Spring Boot,我已经创建了两个Spring引导应用程序,一个是Eureka服务器,第二个是没有任何代码的普通Spring引导应用程序,在第二个应用程序中,我刚刚添加了maven依赖项,如下所示 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId

我已经创建了两个Spring引导应用程序,一个是Eureka服务器,第二个是没有任何代码的普通Spring引导应用程序,在第二个应用程序中,我刚刚添加了maven依赖项,如下所示

   <dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
   </dependency>

org.springframework.cloud
spring cloud starter netflix eureka客户端
我没有在第二个应用程序中使用任何类似@EnableEurekaClient的注释,也没有在application.properties中配置任何与eureka相关的属性


不过,我的第二个应用程序正在向Eureka注册。怎么用?如果它仅仅是由于maven依赖性而发生的,那么
@enableurekaclient
有什么用?

我假设您在客户端应用程序的引导类中使用了
SpringCloundApplication
注释。如下图所示:

@SpringCloudApplication
public class Application {
      public static void main(String[] args) {
          SpringApplication.run(Application.class);
      }
}
@SpringBootApplication,为我们提供相同的自动配置、组件扫描和属性 支持(除其他外)我们已经爱上的东西。此外,它还添加了@EnableDiscoveryClient 向Eureka和@EnableCircuitBreaker注册,以便在远程服务关闭时创建回退命令。以下是SpringCloudAnnotation包含的内容:

@SpringBootApplication
@EnableDiscoveryClient
@EnableCircuitBreaker
public @interface SpringCloudApplication {
}
有@enableurekaclient和@EnableDiscoveryClient注释可用。 DiscoveryClient是Spring Cloud Netflix放在EurekClient之上的抽象接口 生成未来服务注册表工具的事件。在这个时间点上,几乎没有 我们的代码不同,除了单个 注释@SpringCloudApplication,将我们的组件转变为微服务

结论: EurekaClient用于使用Eureka进行服务发现。 DiscoveryClient是一个接口,是服务发现工具的其他实现的标准

Eureka客户机示例

@Configuration
@ComponentScan
@EnableAutoConfiguration
@EnableEurekaClient
@RestController
public class Application {

    @RequestMapping("/")
    public String home() {
        return "Hello world";
    }

    public static void main(String[] args) {
        new SpringApplicationBuilder(Application.class).web(true).run(args);
    }

}

一个是Eureka服务器,它会将所有服务注册到自己,另一个是客户端,它会在Eureka服务器上注册自己。注释是注册所需操作列表的缩写。如果您正在注册,您可能编写了这样做的代码。最好了解:)的方式,以及您的代码是否执行注释涵盖的所有操作。