springCloud-alibaba简单工程的建立以及一些相关类的使用教程
父工程pom依赖
<!-- 配置 Springboot 依赖-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
</parent>
<!--依赖版本的设置-->
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-cloud.version>Greenwich.RELEASE</spring-cloud.version>
<spring-cloud-alibaba.version>2.1.0.RELEASE</spring-cloud-alibaba.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cioud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
子工程依赖-shop user
<dependencies>
<!-- spring mvc 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- mybatis plus 依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
<!-- mysql 依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>
</dependency>
<!-- lombok 依赖 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
</dependency>
</dependencies>
子工程shop user 配置文件内容 application.properties
#port
server.port=8071
#server-name
#服务名称--调用的时候根据名称来调用该服务的方法
spring.application.name=shop-user
#mysql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mydb?characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=123456
微服务项目中一些类的介绍
@Autowired
DiscoveryClient discoveryClient;
主要是通过这个类DiscoveryClient它主要的功能就是发现我们的客户端也就是服务注册中心中有的都可以发现
List<ServiceInstance> instances = discoveryClient.getInstances(name);
然后通过调用他的一个方法 getInstances(name); 然后又获取相对应 name的服务集合
再通过ServiceInstance 这个类进行服务的操作
serviceInstance.getHost()
serviceInstance.getPort()
通过他的方法来获取他的接口地址然后通过拼接来得到一个完整的接口地址
String url = "http://"+serviceInstance.getHost()+":"+serviceInstance.getPort()+"/getMember";
然后获取到地址之后 再通过模板类RestTemplate
@Autowired
private RestTemplate resttemplate;
来获取他的接口中的json信息 可以根据内容 返回一个实体类Object,然后再写他的一些业务操作即可。
String s = resttemplate.getForObject(url,String.class);