SpringCloud(1)创建服务提供者与消费者

相关依赖

提供者:

		<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.3</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.22</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>com.hht.cloud</groupId><artifactId>cloud-api-commons</artifactId><version>0.0.1-SNAPSHOT</version></dependency>

消费者:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency>

支付业务代码(提供者)

结构如下:
在这里插入图片描述
yml配置:

spring:application:name: cloud-payment-servicedatasource:driver-class-name: com.mysql.cj.jdbc.Driverusername: rootpassword: 123456url: jdbc:mysql://localhost:3306/cloutstudy#指定数据源为druidtype: com.alibaba.druid.pool.DruidDataSourcedevtools:restart:#增加热部署检测时间,防止出现404poll-interval: 3s
mybatis:mapper-locations: classpath:mapper/*.xml
server:port: 8011

主要业务服务代码:

创建和查询操作:

@Service
public class PaymentServiceImpl implements PaymentService {@ResourcePaymentMapper paymentMapper;@Overridepublic int create(Payment payment) {return paymentMapper.create(payment);}@Overridepublic Payment getPaymentById(Long id) {return paymentMapper.getPaymentById(id);}
}

订单业务代码(消费者)

结构如下:
在这里插入图片描述
目前还没有使用注册中心来注册服务,所以先使用restTemplate来进行远程调用提供者的业务服务

容器配置类:

@Configuration
public class ApplicationContextConfig {//注册restTemplate进容器@Beanpublic RestTemplate getRestTemplate(){return new RestTemplate();}
}

控制器如下:

@RestController
@Slf4j
@RequestMapping("/consumer/payment")
public class OrderController {public static final String PAYMENT_URL="http://localhost:8011";@Autowiredprivate RestTemplate restTemplate;@PostMapping("/create")public CommonResult<Payment> create(Payment payment){return restTemplate.postForObject(PAYMENT_URL+"/payment/create",payment,CommonResult.class);}@GetMapping("/get/{id}")public CommonResult<Payment> getPayment(@PathVariable Long id){return restTemplate.getForObject(PAYMENT_URL+"/payment/get/"+id,CommonResult.class);}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部