SpringCloud~实验出真理,搭建微服务架构环境,使用RestFul实现垮微服务交流(1)

select * from user;

select * from user where id=#{id};

insert into user(name, pwd) values (#{name}, #{pwd});

delete from user where id=#{id};

  • 配置application.yml

server:

port: 8080

mybatis:

mapper-locations: classpath:mapper/*.xml

type-aliases-package: com.springcloud.pojo

spring:

datasource:

driver-class-name: com.mysql.cj.jdbc.Driver

url: jdbc:mysql://localhost:3306/java_11_21?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8

username: root

password: listen

  • 创建实现service

public interface UserService {

List selectAll();

User query(int id);

boolean add(User user);

boolean delete(int id);

}

@Service

public class UserServiceImpl implements UserService {

@Autowired

private UserDao userDao;

@Override

public List selectAll() {

return userDao.selectAll();

}

@Override

public User query(int id) {

return userDao.query(id);

}

@Override

public boolean add(User user) {

return userDao.add(user);

}

@Override

public boolean delete(int id) {

return userDao.delete(id);

}

}

  • 创建访问路径controller

@RestController

public class UserController {

@Autowired

private UserServiceImpl service;

@RequestMapping(“/select”)

public List select() {

return service.selectAll();

}

@RequestMapping(“/query/{id}”)

public User query(@PathVariable(“id”)int id) {

return service.query(id);

}

@RequestMapping(“/add”)

public boolean add(User user) {

System.out.println(“[DEBUG]” + user);

return service.add(user);

}

@RequestMapping(“/delete/{id}”)

public boolean delete(@PathVariable(“id”)int id) {

return service.delete(id);

}

}

真正的controller服务


  • 创建springBoot项目

  • 导入依赖, 注意还要导入pojo服务的依赖

org.example

20201121_pojo

1.0-SNAPSHOT

  • 最好把tomcat启动端口设置为80 方便测试

server:

port: 80

  • 将RestTemplate注册到IOC中

@Configuration

public class ConfigBean {

@Bean

public RestTemplate restTemplate() {

return new RestTemplate();

}

}

  • 实现controller

@RestController

public class UserController {

@Autowired

private RestTemplate template;

final String PATH = “http://localhost:8080/”;

@RequestMapping(“/all”)

public List all() {

String path = PATH + “select”;

System.out.println(“[DEBUG]” + path);

return template.getForObject(path, List.class);

}

@RequestMapping(“/one/{id}”)

public User one(@PathVariable(“id”)int id) {

String path = PATH + “query/” + id;

System.out.println(“[DEBUG]” + path);

return template.getForObject(path, User.class);

}

复习的面试资料

这些面试全部出自大厂面试真题和面试合集当中,小编已经为大家整理完毕(PDF版)

  • 第一部分:Java基础-中级-高级

image

  • 第二部分:开源框架(SSM:Spring+SpringMVC+MyBatis)

image

  • 第三部分:性能调优(JVM+MySQL+Tomcat)

image

  • 第四部分:分布式(限流:ZK+Nginx;缓存:Redis+MongoDB+Memcached;通讯:MQ+kafka)

image

  • 第五部分:微服务(SpringBoot+SpringCloud+Dubbo)

image

  • 第六部分:其他:并发编程+设计模式+数据结构与算法+网络

image

进阶学习笔记pdf

  • Java架构进阶之架构筑基篇(Java基础+并发编程+JVM+MySQL+Tomcat+网络+数据结构与算法

image

  • Java架构进阶之开源框架篇(设计模式+Spring+SpringMVC+MyBatis

image

image

image

  • Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka)

image

image

image

  • Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)

image

image

转存中…(img-C3OGeJbb-1714468058882)]

  • Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka)

[外链图片转存中…(img-JRfFLjbb-1714468058882)]

[外链图片转存中…(img-Pa6z1w2h-1714468058883)]

[外链图片转存中…(img-JLATluaf-1714468058883)]

  • Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)

[外链图片转存中…(img-qvf2eWS8-1714468058883)]

[外链图片转存中…(img-9ahFKIF9-1714468058884)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 29
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值