SpringCloud2
第四章 SpringCloud-Hello案例开发-电影服务
4.1 电影服务
(jar工程,提供查询电影功能)cloud-provider-movie

改一下:
1.两个pom有很多没用的东西,首先我们不打jar包所以两个build删掉
2.两个properties一样,给他复制到父工程pom文件里
3.还有dependencyManagement
移过去之后,两个子工程对应的就可以删了,只留正儿八经要依赖的jar包就行了
注意
完成之后Hello里面打包方式就不能是jar了,要改成pom
这是Hello的pom的变化1——》


接着把Hello的jav粘到子工程里,movie改变前

movie的pom改动后

接着改动server的pom

改完之后 Hello的pom就可以统一管理两个工程的版本了

接下来为了后边的熔断器,改动一下版本(因为版本太高,图标可能加载不出来)
上图是改之前

看看为什么movie要导入web

因为eureka.server自带web,movie是注册中心的客户端,不带web需要自己导
4.1.1 引入eureka-Discovery、web模块
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
创建工程已经引入过了
4.1.2 创建Movie实体类,增加id,movieName属性
不能建到movie里,太笨了因为牵扯远程调用,后边user也要用,所以新建个maven
这个maven要不要父工程都不影响

接下来java下写类



4.1.3 创建MovieDao
因为没连数据库,所以硬写就拉倒了哈

dao
package com.wsk.movie.dao;
import com.wsk.bean.Movie;
import org.springframework.stereotype.Repository;
service
package com.wsk.movie.service;
import com.wsk.bean.Movie;
import com.wsk.movie.dao.MovieDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
controller
package com.wsk.movie.controller;
import com.wsk.bean.Movie;
import com.wsk.movie.service.MovieService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
然后
4.1.4 编写application.yml
spring

测试的话要加入注解movie入口处,加不加都行,默认开启

启动顺序,先有注册中心再启动服务

让导入测试包的话,删了会自动导入 ,俩工程测试都重新导一下因为改版本了
4.1 电影服务接着

多增加几个movie Zone不用改,方便看结果

接着

刷新浏览器,62/63也都能访问

只不过有红字很恶心是吧?
红字其实就是eureka的自我保护机制,一会儿写
4.1 现在看看movie服务好使不好使

第五章 SpringCloud-Hello案例开发-用户服务
5.1 用户服务
(jar工程,提供查询用户,买电影票功能)cloud-consumer-user
5.1.1 引入eureka-Discovery、web模块
新建一个普通的maven工程,父工程为 SpringCloud-Hello,因为用到的都跟movie一样所以把movie的dependencies粘过来就好了 ——》也是继承了common-bean

5.1.2 创建User实体类,增加id,userName属性
在common-bean里新建User实体类

UserController
UserService
UserDao
User
public class User {
private int id;
private String userName;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
application.yml
spring:
application:
name: cloud-consumer-user
server:
port: 9000
eureka:
client:
service-url:
defaultZone: http://localhost:8761/eureka/
instance:
prefer-ip-address: true #注册中心保存我的ip
看效果:负载均衡准备工作完成



浙公网安备 33010602011771号