02 SpringCloud创建提供者子模块
口诀:
-
建payment模块,观察pom变化
Cloud-provider-payment8001
-
改pom
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <parent> <artifactId>cloud2020</artifactId> <groupId>com.aiguigu.springcloud</groupId> <version>1.0-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>cloud-provider-payment8001</artifactId> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> <!--mysql-connector-java--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</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> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> </project> -
写yml
server: port: 8001 spring: application: name: cloud-payment-service datasource: # 当前数据源操作类型 type: com.alibaba.druid.pool.DruidDataSource # mysql驱动类 driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/db2019?useUnicode=true&characterEncoding= UTF-8&useSSL=false&serverTimezone=GMT%2B8 username: root password: root mybatis: mapper-locations: classpath*:mapper/*.xml type-aliases-package: com.eiletxie.springcloud.entities 它一般对应我们的实体类所在的包,这个时候会自动取对应包中不包括包名的简单类名作为包括包名的别名。多个package之间可以用逗号或者分号等来进行分隔(value的值一定要是包的全) -
主启动
…
-
业务类
-
创sql表
CREATE DATABASE /*!32312 IF NOT EXISTS*/`cloud` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */; USE `cloud`; /*Table structure for table `payment` */ DROP TABLE IF EXISTS `payment`; CREATE TABLE `payment` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', `serial` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; /*Data for the table `payment` */ insert into `payment`(`id`,`serial`) values (1,'尚硅谷'),(2,'alibaba'),(3,'京东'),(4,'头条'); -
实体类
Payment类
package com.aiguigu.springcloud.entities; @Data @NoArgsConstructor @AllArgsConstructor public class Payment implements Serializable { private Long id; private String serial; }CommonResult类
package com.aiguigu.springcloud.entities; @Data @AllArgsConstructor @NoArgsConstructor public class CommonResult<T> { private Integer code; private String message; private T data; public CommonResult(Integer code,String message){ this(code,message,null); } } -
dao
dao
package com.aiguigu.springcloud.dao; @Mapper @Repository public interface PaymentDao { public Integer create(Payment payment); public Payment getPayMentById(Integer id); }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.aiguigu.springcloud.dao.PaymentDao"> <insert id="create" parameterType="com.aiguigu.springcloud.entities.Payment" useGeneratedKeys="true" keyProperty="id"> insert into payment('serial') values (#{serial}) </insert> <resultMap id="BaseResultMap" type="com.aiguigu.springcloud.entities.Payment"> <id column="id" property="id" jdbcType="BIGINT" /> <id column="serial" property="serial" jdbcType="VARCHAR"/> </resultMap> <select id="getPayMentById" parameterType="Long" resultMap="BaseResultMap"> select 'id','serial' from payment where id = "#{id}" </select> </mapper> -
service
service接口
serviceImpl接口
-
controller
-
热部署
1.Adding devtools to your project
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
2.Adding plugin to your pom.xml
下一段配置黏贴到父工程当中的pom里
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<addResources>true</addResources>
</configuration>
</plugin>
</plugins>
</build>
3.Enabling automatic build
ctrl+shift+alt+/
compiler.document.save.trigger.delay
compiler.automake.allow.when.app.running
4.Update the value of
Setting->cpmpiler->钩上ABCD
1773

被折叠的 条评论
为什么被折叠?



