SpringCloud微服务(二)之Rest环境搭建

一、创建spring cloud项目

导入依赖:

  • spring cloud
  • spring boot
  • 数据库
  • 数据源
  • spring boot启动器
  • log4j
  • junit
  • lombok
  • logback

二、创建spring cloud - api 模块

  1. 导入依赖
  2. 创建db01数据库
    创建dept表,包括id、dname、db_source属性
    插入数据:
insert into dept (dname,db_source) value ('开发部',DATABASE());
insert into dept (dname,db_source) value ('财政部',DATABASE());
insert into dept (dname,db_source) value ('人事部',DATABASE());
  1. 编写Dept实体类

三、创建服务提供者模块

  1. 导入依赖
  2. 配置配置文件
    server端口、mybatis配置、spring配置
  3. 编mybatis配置文件 mybatis-config.xml
  4. 编写Dao层
  5. 编写mapper.xml
  6. 编写service层
  7. 编写controller层(提供Restful服务)
  8. 编写启动类

四、创建服务消费者模块

  1. 导入依赖
  2. 配置文件
  3. 编写配置类
    将RestTemplate注入到Bean中
  4. 编写controller
 // 理解:消费者,不应该有service层~
    // RestTemplate .... 供我们直接调用就可以了! 注册到Spring中
    // (url, 实体:Map ,Class<T> responseType)
    @Autowired
    private RestTemplate restTemplate; //提供多种便捷访问远程http服务的方法,简单的Restful服务模板~

    //private static final String REST_URL_PREFIX = "http://localhost:8001";
    private static final String REST_URL_PREFIX = "http://localhost:8001";

    @RequestMapping("/consumer/dept/add")
    public boolean add(Dept dept){
        return restTemplate.postForObject(REST_URL_PREFIX+"/dept/add",dept,Boolean.class);
    }

    @RequestMapping("/consumer/dept/get/{id}")
    public Dept get(@PathVariable("id") Long id){
        return restTemplate.getForObject(REST_URL_PREFIX+"/dept/get/"+id,Dept.class);
    }


    @RequestMapping("/consumer/dept/list")
    public List<Dept> list(){
        return restTemplate.getForObject(REST_URL_PREFIX+"/dept/list",List.class);
    }

注意:add请求在提供者端没办法测试,在消费者端可以测试,因为必须是post请求,而提供者端是个体请求才可以测试,消费者端可以用post请求测试。
5. 编写启动类

原创文章 4 获赞 1 访问量 133

猜你喜欢

转载自blog.csdn.net/qq_41864303/article/details/106174958