O artigo acima já escreveu como construir um centro de registro. Está longe de ser suficiente ter um centro de registro, por isso precisamos nos registrar no Centro de Registro e fornecer serviços. Isso é chamado de provedor de serviços de registro.
premissa
Leia o acima e construa com sucesso um centro de registro sem alterar o ambiente
Construção do projeto
Aqui precisamos criar um novo projeto Maven. O nome do projeto não foi levantado antes. Deixe -me referir -me aqui. O meu é SpringcloudDemo, não se importa com esses detalhes!
Para modificar o arquivo POM, consulte o seguinte:
NOTA: Veja os números da versão desses pacotes JAR. No final do artigo, publicarei os caminhos do Github das duas demos simples que construí antes.
<? xml versão = "1.0" coding = "utf-8"?> <Projeto xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.ww3.org/2001/xmlschaMance xsi: schemalocation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.clsd"> <lodelversion> 4.0.0 </modelVersion> <vroupId> com.hellxz <groups> <Versão> 0.0.1-SNAPSHOT </Version> <batyaging> jar </acheging> <name> springclouddemo </name> <cription> Projeto de demonstração para boot de primavera </cription> <aroger> <puriDid> org.springframework.boot </groupid> <stifactId> spring-boot-starter-Parent </artef <!-- lookup parent from repository --> </parent> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Camden.SR3</version> <type>pom</type> <scope>import</scope> </dependency> </dependency> </dependency> </dependencyManagement> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <PuerpId> org.springframework.boot </frugiD> <TRATIFACTID> Spring-boot-Starter-Web </ArtifactId> </Dependency> <pendency> <puerpid> org.springframework.boot </groupid> <stifactId> spring-boot-starter-test </ArtiftIctid> project and provide status information in the project --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <!--junit test--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.8.2</version> </dependency> <Depencency> <PuerpId> org.springframework.cloud </frupiid> <stifactId> Spring-cloud-starter-eureka </stutifactId> </dependency> <pendence> </Groupid> org.springframework.cloud </groupid> <TifactId> Spring --Config-SERVERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERSERVERBROW.CLOUD <FUBRIDO> <lugins> <flugin> <puperid> org.springframework.boot </frugiD> <ArtifactId> Spring-boot-maven-plugin </stutifactId> </flugin> <tlugin> <purtId> orgache.maven.Pluguns </GroupId> <stiftId> skorn> snavenpache.maven.Plugum </GroupId> <stiftIm> senhorid> snaven-seng.apache. <OrceM> 1.8 </sourder> <voget> 1.8 </voget> </frifiguration> </plugin> </plugins> </fruct> </project>
Embora o número da versão seja diferente do projeto Eurekaserver Registration Center, ele pode ser usado normalmente através da prática. Por favor, tenha certeza
Crie uma nova aula de inicialização (em todo projeto de troca)
pacote com.hellxz.springcloudhelloworld; importar org.springframework.boot.springApplication; importar org.springframework.boot.autoconfigure.springBoTApplication; importação org.springframework.cloud.client.discOlation.enenenEnkiskiskiscymymymymymymymymymymymymymymymymyl; Eurekaclient * @Date: 2018/4/13 16:57 */@HabilediscoveClient@SpringboOTApplicationPublic Classe SpringCloudDemoApplication {public static void main (string [] args) {springapplication.run (springcloudDemoApplication.cllass, args); }} Crie uma nova classe de controlador e deixe -a para testes posteriores
pacote com.hellxz.springcloudhelloworld; importar org.apache.log4j.logger; importar org.springframework.beans.factory.annotation.autowired; importig.springframework.cloud.clientImectince; org.springframework.web.bind.annotation.requestmapping; importar org.springframework.web.bind.annotation.requestmethod; importar org.springframework.web.bind.annotation.restcriversrcritrirrlroller;/*** @Athorthor: 11:36 */ @RestControllerPublic Classe SpringBootController {@AUTOWIRed Private Discoveryclient Client; // Injetar o cliente Discovery Private Final Logger = Logger.getLogger (Springbootcontroller.class); @RequestMapping (value = "/hello", método = requestMethod.get) public string hello () {// obtenha a instância de serviço, e a função é exibir o efeito do serviço de serviço de serviçoInstanceInstance = client.getLocalServiceInstance (); logger.info ("/hello host:"+serviceInstance.gethost ()+"service_id:"+serviceInstance.getServiceId ()); retornar "Olá"; }}Crie Application.yml na pasta SRC/Recursos. Desta vez, use YAML para configuração. Se você deseja experimentar o método do arquivo de propriedades, consulte o acima. Consulte a configuração do Centro de Registro para o endereço de serviço configurado aqui.
Servidor: Porta: 8080Spring: Aplicação: Nome: Hello-ServiceEureka: Cliente: ServiceUrl: DefaultZone: http: // localhost: 1111/eureka/
OK, executaremos este projeto na porta 8080 e podemos ir ao Centro de Registro para se registrar para serviços.
Inicie o projeto no Centro de Registro primeiro e, após o início, inicie o projeto.
teste
Digite o URL do Centro de Registro para visualizar: Localhost: 1111
Acesse o caminho do controlador que você acabou de configurar: http: // localhost: 8080/hello
Como mostrado na figura à direita, o registro é bem -sucedido.
Neste momento, podemos usar este projeto para fornecer serviços
Exemplo de demonstração:
https://github.com/hellxz/eurekaserver
https://github.com/hellxz/eurekaclient
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.