1.创建父工程Project
第一步:通过maven创建
第二步:填写信息
创建出来的项目如下:
第三步:删除src
4.修改父项目pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http:///POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http:///POM/4.0.0 http:///xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.xql</groupId>
<artifactId>PayUtilsMode</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<junit.version>4.12</junit.version>
<log4j.version>1.2.17</log4j.version>
<lombok.version>1.18.8</lombok.version>
<api.version>1.0-SNAPSHOT</api.version>
<utils.version>1.0-SNAPSHOT</utils.version>
<springloaded.version>1.2.8.RELEASE</springloaded.version>
<fastjson.version>1.2.78</fastjson.version>
</properties>
<!-- 通过它元素来管理jar包的版本,让子项目中引用一个依赖而不用显示的列出版本号。
Maven会沿着父子层次向上走,直到找到一个拥有dependencyManagement元素的项目,
然后它就会使用在这个dependencyManagement元素中指定的版本号。 -->
<dependencyManagement>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.0.6.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.12</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<finalName>PayUtilsMode</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>
<delimit>$</delimit>
</delimiters>
</configuration>
</plugin>
</plugins>
</build>
</project>
Eureka包含两个组件:Eureka Server和Eureka Client
Eureka Server提供服务注册服务
各个节点启动后,会在EurekaServer中进行注册,这样EurekaServer中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到
EurekaClient是一个Java客户端,用于简化Eureka Server的交互,客户端同时也具备一个内置的、使用轮询(round-robin)负载算法的负载均衡器。在应用启动后,将会向Eureka Server发送心跳(默认周期为30秒)。如果Eureka Server在多个心跳周期内没有接收到某个节点的心跳,EurekaServer将会从服务注册表中把这个服务节点移除(默认90秒)
2.创建子工程Eureka
第一步:new----》Module
第二步:点击next
第三步:填写相关信息
第四步:查看父项目POM出现modules:
第五步:修改子工程Eureka的pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http:///POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http:///POM/4.0.0 http:///xsd/maven-4.0.0.xsd">
<parent>
<artifactId>PayUtilsMode</artifactId>
<groupId>com.xql</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>eureka</artifactId>
<dependencies>
<!--eureka-server服务端 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- 修改后立即生效,热部署 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>${springloaded.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>
</project>
第六步:创建启动类EurekaApplication
package com.xql.eureka;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
/**
* @author 许清磊
* @version 1.0
* @ClassName EurekaApplication
* @description: TODO
* @date 2021/12/7 20:44
*/
@SpringBootApplication
@EnableEurekaServer//EurekaServer服务器端启动类,接受其它微服务注册进来
public class EurekaApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaApplication.class, args);
}
}
第七步:创建编写配置文件application.properties
#改端口号
server.port= 7001
#改项目名
#server.servlet.context-path= /eureka
#eureka服务端的实例名称
eureka.instance.hostname= localhost
#false表示不向注册中心注册自己。
eureka.client.register-with-eureka= false
#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
eureka.client.fetch-registry=false
#设置与Eureka Server交互的地址查询服务和注册服务都需要依赖这个地址。
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
第八步启动项目 访问http://localhost:7001
3.创建公用实体类pay-api
第一步:
点击NEXT
第二步:查看父项目pom的modules
第三步:修改pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http:///POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http:///POM/4.0.0 http:///xsd/maven-4.0.0.xsd">
<parent>
<artifactId>PayUtilsMode</artifactId>
<groupId>com.xql</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>pay-api</artifactId>
<dependencies><!-- 当前Module需要用到的jar包,按自己需求添加,如果父类已经包含了,可以不用写版本号 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
</project>
第三步:创建实体类
创建表sql
create table PU_ORDER
(
order_id varchar(66) not null,
order_program_id varchar(36) null,
order_total decimal(10,2) null,
order_discount decimal(10,2) null,
order_subject varchar(360) null,
order_code varchar(100) null,
order_buyer_Id varchar(100) null,
order_seller_Id varchar(100) null,
order_timeExpire decimal(8) null,
timeout_express decimal(8) null,
dis_countable_amount decimal(10,2) null,
undis_countable_amount decimal(10,2) null,
order_status varchar(66) null,
return_url varchar(360) null,
registered_date_time datetime null,
registered_user varchar(100) null,
update_date_time datetime null,
update_user varchar(100) null,
constraint PK_PU_ORDER primary key clustered (order_id)
);
实体类:
package com.xql.api.entity;
import java.math.BigDecimal;
import java.util.Date;
/**
* 数据库表名为: PU_ORDER
*/
public class Orders {
private String orderId;
private String orderProgramId;
private BigDecimal orderTotal;
private BigDecimal orderDiscount;
private String orderSubject;
private String orderCode;
private String orderBuyerId;
private String orderSellerId;
private Integer orderTimeexpire;
private Integer timeoutExpress;
private BigDecimal disCountableAmount;
private BigDecimal undisCountableAmount;
private String orderStatus;
private String returnUrl;
private Date registeredDateTime;
private String registeredUser;
private Date updateDateTime;
private String updateUser;
/**
* get method
*
* @return PU_ORDER.order_id:
*/
public String getOrderId() {
return orderId;
}
/**
* set method
*
* @param orderId
*/
public void setOrderId(String orderId) {
this.orderId = orderId == null ? null : orderId.trim();
}
/**
* get method
*
* @return PU_ORDER.order_program_id:
*/
public String getOrderProgramId() {
return orderProgramId;
}
/**
* set method
*
* @param orderProgramId
*/
public void setOrderProgramId(String orderProgramId) {
this.orderProgramId = orderProgramId == null ? null : orderProgramId.trim();
}
/**
* get method
*
* @return PU_ORDER.order_total:
*/
public BigDecimal getOrderTotal() {
return orderTotal;
}
/**
* set method
*
* @param orderTotal
*/
public void setOrderTotal(BigDecimal orderTotal) {
this.orderTotal = orderTotal;
}
/**
* get method
*
* @return PU_ORDER.order_discount:
*/
public BigDecimal getOrderDiscount() {
return orderDiscount;
}
/**
* set method
*
* @param orderDiscount
*/
public void setOrderDiscount(BigDecimal orderDiscount) {
this.orderDiscount = orderDiscount;
}
/**
* get method
*
* @return PU_ORDER.order_subject:
*/
public String getOrderSubject() {
return orderSubject;
}
/**
* set method
*
* @param orderSubject
*/
public void setOrderSubject(String orderSubject) {
this.orderSubject = orderSubject == null ? null : orderSubject.trim();
}
/**
* get method
*
* @return PU_ORDER.order_code:
*/
public String getOrderCode() {
return orderCode;
}
/**
* set method
*
* @param orderCode
*/
public void setOrderCode(String orderCode) {
this.orderCode = orderCode == null ? null : orderCode.trim();
}
/**
* get method
*
* @return PU_ORDER.order_buyer_Id:
*/
public String getOrderBuyerId() {
return orderBuyerId;
}
/**
* set method
*
* @param orderBuyerId
*/
public void setOrderBuyerId(String orderBuyerId) {
this.orderBuyerId = orderBuyerId == null ? null : orderBuyerId.trim();
}
/**
* get method
*
* @return PU_ORDER.order_seller_Id:
*/
public String getOrderSellerId() {
return orderSellerId;
}
/**
* set method
*
* @param orderSellerId
*/
public void setOrderSellerId(String orderSellerId) {
this.orderSellerId = orderSellerId == null ? null : orderSellerId.trim();
}
/**
* get method
*
* @return PU_ORDER.order_timeExpire:
*/
public Integer getOrderTimeexpire() {
return orderTimeexpire;
}
/**
* set method
*
* @param orderTimeexpire
*/
public void setOrderTimeexpire(Integer orderTimeexpire) {
this.orderTimeexpire = orderTimeexpire;
}
/**
* get method
*
* @return PU_ORDER.timeout_express:
*/
public Integer getTimeoutExpress() {
return timeoutExpress;
}
/**
* set method
*
* @param timeoutExpress
*/
public void setTimeoutExpress(Integer timeoutExpress) {
this.timeoutExpress = timeoutExpress;
}
/**
* get method
*
* @return PU_ORDER.dis_countable_amount:
*/
public BigDecimal getDisCountableAmount() {
return disCountableAmount;
}
/**
* set method
*
* @param disCountableAmount
*/
public void setDisCountableAmount(BigDecimal disCountableAmount) {
this.disCountableAmount = disCountableAmount;
}
/**
* get method
*
* @return PU_ORDER.undis_countable_amount:
*/
public BigDecimal getUndisCountableAmount() {
return undisCountableAmount;
}
/**
* set method
*
* @param undisCountableAmount
*/
public void setUndisCountableAmount(BigDecimal undisCountableAmount) {
this.undisCountableAmount = undisCountableAmount;
}
/**
* get method
*
* @return PU_ORDER.order_status:
*/
public String getOrderStatus() {
return orderStatus;
}
/**
* set method
*
* @param orderStatus
*/
public void setOrderStatus(String orderStatus) {
this.orderStatus = orderStatus == null ? null : orderStatus.trim();
}
/**
* get method
*
* @return PU_ORDER.return_url:
*/
public String getReturnUrl() {
return returnUrl;
}
/**
* set method
*
* @param returnUrl
*/
public void setReturnUrl(String returnUrl) {
this.returnUrl = returnUrl == null ? null : returnUrl.trim();
}
/**
* get method
*
* @return PU_ORDER.registered_date_time:
*/
public Date getRegisteredDateTime() {
return registeredDateTime;
}
/**
* set method
*
* @param registeredDateTime
*/
public void setRegisteredDateTime(Date registeredDateTime) {
this.registeredDateTime = registeredDateTime;
}
/**
* get method
*
* @return PU_ORDER.registered_user:
*/
public String getRegisteredUser() {
return registeredUser;
}
/**
* set method
*
* @param registeredUser
*/
public void setRegisteredUser(String registeredUser) {
this.registeredUser = registeredUser == null ? null : registeredUser.trim();
}
/**
* get method
*
* @return PU_ORDER.update_date_time:
*/
public Date getUpdateDateTime() {
return updateDateTime;
}
/**
* set method
*
* @param updateDateTime
*/
public void setUpdateDateTime(Date updateDateTime) {
this.updateDateTime = updateDateTime;
}
/**
* get method
*
* @return PU_ORDER.update_user:
*/
public String getUpdateUser() {
return updateUser;
}
/**
* set method
*
* @param updateUser
*/
public void setUpdateUser(String updateUser) {
this.updateUser = updateUser == null ? null : updateUser.trim();
}
}
依次执行clean----package----install
4.创建子工程服务提供者(如果有多个 用不同端口号重复步骤4即本步骤即可)
第一步:New —》Module
点击NEXT
第二步:填写项目名称
第三步:查看父项目pom的modules
第四步:修改服务提供者provider-pay的pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http:///POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http:///POM/4.0.0 http:///xsd/maven-4.0.0.xsd">
<parent>
<artifactId>PayUtilsMode</artifactId>
<groupId>com.xql</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>provider-pay</artifactId>
<description>支付微服务提供者</description>
<dependencies>
<dependency><!-- 引入自己定义的api通用包,可以使用Entity -->
<groupId>com.xql</groupId>
<artifactId>pay-api</artifactId>
<version>${api.version}</version>
</dependency>
<!-- 将微服务provider侧注册进eureka -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<!-- 修改后立即生效,热部署 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>${springloaded.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>com.xql</groupId>
<artifactId>utils</artifactId>
<version>${utils.version}</version>
</dependency>
</dependencies>
</project>
第五步:创建ProviderPayApplication 注意查看创建文件位置
第六步:书写代码 controller service 和mapper
Controller
package com.xql.provider.controller;
/**
* @author 许清磊
* @version 1.0
* @ClassName PayController
* @description: TODO
* @date 2021/12/7 8:59
*/
import com.xql.api.model.DTO.TestDto;
import com.xql.api.model.Orders;
import com.xql.model.Vo.PageVO;
import com.xql.model.Vo.ResultVO;
import com.xql.provider.service.OrdersService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
public class PayController
{
@Autowired
private OrdersService ordersService;
@RequestMapping(value="/pay/add",method= RequestMethod.POST)
public boolean add(@RequestBody Orders orders)
{
return ordersService.add(orders);
}
@RequestMapping(value="/pay/get/{id}",method= RequestMethod.GET)
public Orders get(@PathVariable("id") String id)
{
return ordersService.get(id);
}
@RequestMapping(value="/pay/list",method= RequestMethod.GET)
public ResultVO<PageVO<Orders>> list(TestDto testDto)
{
return ordersService.list(testDto);
}
}
我这里就粘贴Cotroller了 如果需要源码可以私信我 我把gitee地址给你 自己拉一下。 或者自己实现一下
第七步:创建编写application.properties 注意替换数据库ip 不需要的配置可以删掉
#改端口号
server.port= 8001
#改项目名
#server.servlet.context-path= /provider-pay
spring.application.name=provider-pay
#配置热部署
server.servlet.jsp.init-parameters.development= true
#mysql数据源
spring.datasource.type= com.alibaba.druid.pool.DruidDataSource
spring.datasource.url= jdbc:mysql://xxxxxxx:3306/PayUtil?useUnicode=true&characterEncoding=utf8
spring.datasource.username=xxx
spring.datasource.password= xxx
eureka.client.service-url.defaultZone=http://localhost:7001/eureka
eureka.instance.instance-id=provider-pay8001
eureka.instance.prefer-ip-address=true
=provider-pay8001
=http:baidu.com
info.build.artifactId= ${project.artifactId}
info.build.version= ${project.version}
#fdfs 不用可以删掉
fdfs.soTimeout=1500
fdfs.connectTimeout=600
fdfs.thumbImage.width=150
fdfs.thumbImage.height=150
fdfs.trackerList[0]=xxxip
fdfs.web-server-url=xxxxip
#扫描mybatis-config.xml 分页拦截器配置
mybatis.config-location=classpath:mybatis/mybatis-config.xml
#起别名
mybatis.type-aliases-package= com.xql.provider.entity
#配置mapper实现类
mybatis.mapper-locations= classpath:com/xql/provider/mapper/*Mapper.xml
#配置视图解析器
spring.mvc.view.prefix= /
spring.mvc.view.suffix= .jsp
##配置json日期出入格式
#spring.mvc.date-format= yyyy-MM-dd HH:mm:ss
#spring.jackson.date-format= yyyy-MM-dd HH:mm:ss
#spring.jackson.time-zone= GMT+8
#配置上传文件大小
spring.servlet.multipart.max-request-size= 10000MB
spring.servlet.multipart.max-file-size= 1000MB
#配置Slf4j
#设置父日志级别
logging.level.root= error
#设置指定包的日志级别
logging.level.com.xql.provider.mapper= debug
logging.level.com.xql.provider.service=info
logging.level.com.xql.provider.dao=info
logging.level.com.xql.provider.controller=info
#文件名|路径 建议使用 / 代表项目所在磁盘的根目录 此配置使logging.path失效
logging.file=D:/rizhi/provider.log
第八步 启动本项目:访问http://localhost:7001
点击
跳转到了
配置如图:
5.创建子工程服务消费者
第一步:new----Module
第二部:点击NEXT填写相关信息
第三步填写信息
第四步:查看父项目pom的modules如图(我们发现没创建一个 这里都多了一个)
第五步 修改pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http:///POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http:///POM/4.0.0 http:///xsd/maven-4.0.0.xsd">
<parent>
<artifactId>PayUtilsMode</artifactId>
<groupId>com.xql</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>consumer-pay</artifactId>
<description>支付微服务消费者</description>
<dependencies>
<dependency><!-- 引入自己定义的api通用包,可以使用Entity -->
<groupId>com.xql</groupId>
<artifactId>pay-api</artifactId>
<version>${api.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 修改后立即生效,热部署 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>${springloaded.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
</dependencies>
</project>
第六步:编写代码
package com.xql.consumer.configBean;
/**
* @author 许清磊
* @version 1.0
* @ClassName ConfigBean
* @description: TODO
* @date 2021/12/7 9:59
*/
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;
@Configuration
public class ConfigBean
{
@Bean
public RestTemplate getRestTemplate()
{
return new RestTemplate();
}
}
package com.xql.consumer.controller;
import com.alibaba.fastjson.JSONObject;
import com.xql.api.model.Orders;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
/**
* @author 许清磊
* @version 1.0
* @ClassName ConsumerPayController
* @description: TODO
* @date 2021/12/7 10:03
*/
@RestController
public class ConsumerPayController
{
private static final String REST_URL_PREFIX = "http://localhost:8001";
@Autowired
private RestTemplate restTemplate;
@RequestMapping(value="/consumer/pay/add")
public boolean add(Orders orders)
{
return restTemplate.postForObject(REST_URL_PREFIX+"/pay/add", orders, Boolean.class);
}
@RequestMapping(value="/consumer/pay/get/{id}")
public Orders get(@PathVariable("id") String id)
{
return restTemplate.getForObject(REST_URL_PREFIX+"/pay/get/"+id, Orders.class);
}
@SuppressWarnings("unchecked")
@RequestMapping(value="/consumer/pay/list")
public JSONObject list()
{
return restTemplate.getForObject(REST_URL_PREFIX+"/pay/list", JSONObject.class);
}
}
第七步:创建编写ConsumerPayApplication
package com.xql.consumer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
/**
* @author 许清磊
* @version 1.0
* @ClassName ConsumerPayApplication
* @description: TODO
* @date 2021/12/7 10:06
*/
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class ConsumerPayApplication {
public static void main(String[] args) {
SpringApplication.run(ConsumerPayApplication.class, args);
}
}
第八步:创建application.properties
#改端口号
server.port= 8002
#配置json日期出入格式
spring.mvc.date-format= yyyy-MM-dd HH:mm:ss
spring.jackson.date-format= yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone= GMT+8
目录结构
第九步 启动项目 访问测试