当前位置:网站首页>ss-2.子项目互相访问(order80 -> payment8001)
ss-2.子项目互相访问(order80 -> payment8001)
2022-08-03 05:09:00 【lhorse003】
order80
├─java
│ └─com
│ └─cmk
│ └─consumerOrder80
│ │ OrderMain80.java //jetbrains://idea/navigate/reference?project=zy2020&path=com/cmk/consumerOrder80/OrderMain80.java:12:1
│ │
│ ├─config
│ │ ApplicationContextConfig.java
│ │
│ ├─controller
│ │ OrderController.java
│ │
│ └─entities
│ CommonResult.java
│ Payment.java
│
└─resources
application.yml
OrderMain80.java
@SpringBootApplication
public class OrderMain80 {
public static void main(String[] args) {
SpringApplication.run(OrderMain80.class,args);
}
}
ApplicationContextConfig.java
@Configuration
public class ApplicationContextConfig {
@Bean
public RestTemplate getRestTemplate(){
return new RestTemplate();
}
}
OrderController.java
@RestController
@Slf4j
public class OrderController {
public static final String PAYMENT_URL = "http://localhost:8001";
@Resource
private RestTemplate restTemplate;
@GetMapping("/consumer/payment/create")
public CommonResult<Payment> create(Payment payment){
System.out.println(payment);
return restTemplate.postForObject(PAYMENT_URL+"/payment/create",payment,CommonResult.class);
}
@GetMapping("consumer/payment/get/{id}")
public CommonResult getPayment(@PathVariable("id") long id){
return restTemplate.getForObject(PAYMENT_URL+"/payment/get/"+id,CommonResult.class);
}
}
entities
CommonResult.java
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CommonResult<T> {
//404 not_cound
private Integer code;
private String message;
private T data;
public CommonResult(Integer code, String message) {
this(code,message,null);
}
}
Payment.java
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Payment implements Serializable {
private long id;
private String serial;
}
application.yml
server:
port: 80
payment8001
├─main
│ ├─java
│ │ └─com
│ │ └─cmk
│ │ └─springCloud
│ │ │ PaymentMain8001.java --jetbrains://idea/navigate/reference?project=zy2020&path=com/cmk/springCloud/PaymentMain8001.java:12:1
│ │ │
│ │ ├─controller
│ │ │ PaymentController.java
│ │ │
│ │ ├─dao
│ │ │ PaymentDao.java
│ │ │
│ │ ├─entities
│ │ │ CommonResult.java
│ │ │ Payment.java
│ │ │
│ │ └─service
│ │ │ PaymentService.java
│ │ │
│ │ └─impl
│ │ PaymentServiceImpl.java
│ │
│ └─resources
│ │ application.yml
│ │
│ └─mapper
│ PaymentMapper.xml
PaymentMain8001.java
@SpringBootApplication
public class PaymentMain8001 {
public static void main(String[] args) {
SpringApplication.run(PaymentMain8001.class,args);
}
}
PaymentController.java
@RestController
@Slf4j
public class PaymentController {
@Resource
private PaymentService paymentService;
@PostMapping("/payment/create")
public CommonResult create(@RequestBody Payment payment){
int result = paymentService.create(payment);
log.info("****插入结果"+result);
if (result>0){
return new CommonResult(200,"插入数据库成功",result);
}else{
return new CommonResult(400,"插入数据库失败",null);
}
}
@GetMapping("/payment/get/{id}")
public CommonResult getPaymentById(@PathVariable("id") long id){
Payment result = paymentService.getPaymentById(id);
log.info("****查询结果"+result+"456");
if (result !=null){
return new CommonResult(200,"查询数据库成功",result);
}else{
return new CommonResult(400,"查询数据库失败",null);
}
}
}
PaymentDao.java
@Mapper
public interface PaymentDao {
int create(Payment payment);
Payment getPaymentById(@Param("id") long id);
}
entities
CommonResult.java
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CommonResult<T> {
//404 not_cound
private Integer code;
private String message;
private T data;
public CommonResult(Integer code, String message) {
this(code,message,null);
}
}
Payment.java
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Payment implements Serializable {
private long id;
private String serial;
}
service
PaymentService.java
@Mapper
public interface PaymentService {
int create(Payment payment);
Payment getPaymentById(@Param("id") long id);
}
PaymentServiceImpl.java
@Service
public class PaymentServiceImpl implements PaymentService {
@Resource
private PaymentDao paymentDao;
public int create(Payment payment){
return paymentDao.create(payment);
}
public Payment getPaymentById(@Param("id") long id){
return paymentDao.getPaymentById(id);
}
}
application.yml
server:
port: 8001
spring:
application:
name: cloud-payment-service
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
username: root
password: 123456
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.cmk.springCloud.entities
PaymentMapper.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.cmk.springCloud.service.PaymentService">
<insert id="create" parameterType="com.cmk.springCloud.entities.Payment">
insert into payment(serial) values (#{serial});
</insert>
<select id="getPaymentById" parameterType="long" resultMap="BaseResultMap">
select * from payment where id=#{id}
</select>
<resultMap id="BaseResultMap" type="com.cmk.springCloud.entities.Payment">
<id column="id" property="id" jdbcType="BIGINT"/>
<id column="serial" property="serial" jdbcType="VARCHAR"/>
</resultMap>
</mapper>
边栏推荐
- rosbag工具plotjuggler无法打开rosbag的问题
- Interface test framework combat (1) | Requests and interface request construction
- 2022/08/02 学习笔记 (day22) 多线程
- 1095 解码PAT准考证 (25 分)(C语言)
- IO流及其操作
- [Developers must see] [push kit] Collection of typical problems of push service service 2
- tag单调栈-单调栈预备知识-lt.739. 每日温度
- minio下载文件乱码或者是一条横线
- Object类与常用API
- 荧光标记多肽FITC/AMC/FAM/Rhodamine/TAMRA/Cy3/Cy5/Cy7-Peptide
猜你喜欢
Exception (abnormal) and Error (error) difference analysis
Online password generator tool recommendation
Talking about GIS Data (6) - Projected Coordinate System
【Harmony OS】【ARK UI】ETS 上下文基本操作
typescript45-接口之间的兼容性
2022/08/02 Study Notes (day22) Multithreading
接口管理工具YApi怎么用?颜值高、易管理、超好用
Interface test practice | Detailed explanation of the difference between GET / POST requests
WinForm的控件二次开发
Kotlin-Flow常用封装类:StateFlow的使用
随机推荐
MOSN 反向通道详解
Lambda表达式案例
接口测试 Mock 实战(二) | 结合 jq 完成批量化的手工 Mock
typescript47-函数之间的类型兼容性
IO流及其操作
【HMS core】【Ads Kit】Huawei Advertising——Overseas applications are tested in China. Official advertisements cannot be displayed
1060 爱丁顿数 (25 分)
DFS's complement to pruning
接口测试框架实战(二)| 接口请求断言
typescript44-对象之间的类兼容器
【开发者必看】【push kit】推送服务服务典型问题合集2
1. 两数之和
MySql数据库
技术分享 | 接口自动化测试中如何对xml 格式做断言验证?
Interface testing framework of actual combat (2) | interface request assertion
VR全景展打造专属元宇宙观展空间
Common fluorescent dyes to modify a variety of groups and its excitation and emission wavelength data in the data
Interface Test Framework Practice (4) | Get Schema Assertion
Tag stack - stack monotonically preparatory knowledge - lt. 739. The daily temperature
Practical application of WebSocket