IDEA 2021 Spring Cloud 项目搭建 步骤演示 图文解说 (基础版)(二)

简介: IDEA 2021 Spring Cloud 项目搭建 步骤演示 图文解说 (基础版)

此时我们的第一个微服务工程就建立完成了,接下来就是配置啦。我们首先配置POM.xml文件。


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <!--  在这里配置继承的父项目的poM -->
    <parent>
        <groupId>com.libin</groupId>
        <artifactId>mcroservice</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <artifactId>cloud_api_commons</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>cloud_api_commons</name>
    <description>Demo project for Spring Boot</description>
    <dependencies>
        <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>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.1.0</version>
        </dependency>
    </dependencies>
</project>


注意:这里我们引入了Hutool这个jar包,它是一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类更多相信信息可参考:

一个超神级框架——Hutool工具类应有尽有!


这是我们就可以在该服务中写的pojo类,我们这里以支付为例,所以我们先在数据中建议一张支付的表。sql语句如下


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;
我们为该表添加数据,sql语句如下:
```powershell
insert  into `payment`(`id`,`serial`) values (1,'百度'),(2,'alibaba'),(3,'京东'),(4,'小米');


IDEA 逆向工程生成实体类策略可参考:

IDEA 2021 配置Data Sources

建表和添加数据完成了,我们就新建对应的实体类。下图为项目结构图:


67.png


注意:payment表对应的实体类。这里使用了lombok

Payment实体类源码:



package com.libin.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
 * (Payment)实体类
 *网络通信 一定要实现序列化
 * 使用lombok  没有配置的朋友要去百度查一下  jar我们导入了  需要在idea装一个插件就可以了
 * @author libin
 * @since 2021-06-20 13:51:22
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class Payment implements Serializable {
  private static final long serialVersionUID = 613241275635502144L;
  /**
   * ID
   */
  private Long id;
  /**
   *      微服务 一个服务对应一个数据库,同一个信息可能存在不同的数据库
   */
  private String serial;
}


为了数据传输的方便,也为了前后端分离项目,我们将返回的数据进行封装,封装成一个实体类。


package com.libin.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
/**
 * @author libin
 * @date 2021年06月20日 13:56
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class CommonResult<T> {
  /**
   *
   * @author libin
   * @date 2021/6/20 13:57
   *
   *返回状态码
   */
  private Integer code;
  /**
   *
   * @author libin
   * @date 2021/6/20 13:57
   * @返回是否调用成功
   *
   */
  private String message;
  /**
   *
   * @author libin
   * @date 2021/6/20 13:57
   *  返回的数据
   */
  private T data;
  public CommonResult(Integer code, String message) {
    this(code, message, null);
  }
}


我们实体类的服务主要存放实体类,也不写业务逻辑,我们也可以将src文件夹删除掉。此时我们就将总工程和提供实体类的微服务工程搭建成功了。因为实体类的服务工程需要其他的各个服务工程调用,所以要将实体类的服务进行打包放到公用的本地库中。


我们首先将该工程clean,确保当前工程的maven的配置是否成功。


68.png


出现如下界面说明当前工程的maven配置环境没有问题


image.png


那接下来我们就开始install打包放到本地库中。如下为成功界面:


70.png


D:\Java\jdk_11_windows_x64\bin\java.exe -Dmaven.multiModuleProjectDirectory=D:\project\SpringCloud\mcroservice -Xms256m -Xmx512m -Dfile.encoding=UTF-8 -DarchetypeCatalog=local -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.home=D:\Java\apache_maven_3_8_1 -Dclassworlds.conf=D:\Java\apache_maven_3_8_1\bin\m2.conf "-Dmaven.ext.class.path=D:\Java\IntelliJ_IDEA\IntelliJ IDEA 2021.1.2\plugins\maven\lib\maven-event-listener.jar" "-javaagent:D:\Java\IntelliJ_IDEA\IntelliJ IDEA 2021.1.2\lib\idea_rt.jar=3762:D:\Java\IntelliJ_IDEA\IntelliJ IDEA 2021.1.2\bin" -classpath D:\Java\apache_maven_3_8_1\boot\plexus-classworlds-2.6.0.jar;D:\Java\apache_maven_3_8_1\boot\plexus-classworlds.license org.codehaus.classworlds.Launcher -Didea.version=2021.1.2 -s D:\Java\apache_maven_3_8_1\conf\settings.xml -Dmaven.repo.local=D:\Java\MavenRepository install
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------< com.libin:cloud_api_commons >---------------------
[INFO] Building cloud_api_commons 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ cloud_api_commons ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 0 resource
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ cloud_api_commons ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 2 source files to D:\project\SpringCloud\mcroservice\cloud_api_commons\target\classes
[INFO] 
[INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ cloud_api_commons ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory D:\project\SpringCloud\mcroservice\cloud_api_commons\src\test\resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ cloud_api_commons ---
[INFO] Changes detected - recompiling the module!
[INFO] 
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ cloud_api_commons ---
[INFO] 
[INFO] --- maven-jar-plugin:3.1.2:jar (default-jar) @ cloud_api_commons ---
[INFO] Building jar: D:\project\SpringCloud\mcroservice\cloud_api_commons\target\cloud_api_commons-0.0.1-SNAPSHOT.jar
[INFO] 
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ cloud_api_commons ---
[INFO] Installing D:\project\SpringCloud\mcroservice\cloud_api_commons\target\cloud_api_commons-0.0.1-SNAPSHOT.jar to D:\Java\MavenRepository\com\libin\cloud_api_commons\0.0.1-SNAPSHOT\cloud_api_commons-0.0.1-SNAPSHOT.jar
[INFO] Installing D:\project\SpringCloud\mcroservice\cloud_api_commons\pom.xml to D:\Java\MavenRepository\com\libin\cloud_api_commons\0.0.1-SNAPSHOT\cloud_api_commons-0.0.1-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  6.171 s
[INFO] Finished at: 2021-06-20T14:17:06+08:00
[INFO] ------------------------------------------------------------------------
Process finished with exit code 0


这一篇就写到这里咯~

71.jpg

我们下一篇文章将要搭建生产者和消费者的微服务工程啦。


72.jpg


如果大家觉得还不错,点赞,收藏,分享,一键三连支持我一下~

目录
相关文章
|
IDE Java 开发工具
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
IntelliJ IDEA创建Java项目的图文详细步骤,手把手带你创建Java项目
2227 10
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
|
缓存 Java Spring
IDEA中配置HTML和Thymeleaf热部署的步骤
以上就是在IntelliJ IDEA中配置HTML和Thymeleaf热部署的步骤。这样的配置可以大大提高你的开发效率,让你更专注于代码的编写,而不是等待应用的重启。希望这个指南对你有所帮助!
1139 21
|
人工智能 IDE 编译器
idea如何使用AI编程提升效率-在IntelliJ IDEA 中安装 GitHub Copilot 插件的步骤-卓伊凡
idea如何使用AI编程提升效率-在IntelliJ IDEA 中安装 GitHub Copilot 插件的步骤-卓伊凡
3402 15
idea如何使用AI编程提升效率-在IntelliJ IDEA 中安装 GitHub Copilot 插件的步骤-卓伊凡
|
Java API Spring
在 Spring 配置文件中配置 Filter 的步骤
【10月更文挑战第21天】在 Spring 配置文件中配置 Filter 是实现请求过滤的重要手段。通过合理的配置,可以灵活地对请求进行处理,满足各种应用需求。还可以根据具体的项目要求和实际情况,进一步深入研究和优化 Filter 的配置,以提高应用的性能和安全性。
|
XML Java 数据格式
使用idea中的Live Templates自定义自动生成Spring所需的XML配置文件格式
本文介绍了在使用Spring框架时,如何通过创建`applicationContext.xml`配置文件来管理对象。首先,在resources目录下新建XML配置文件,并通过IDEA自动生成部分配置。为完善配置,特别是添加AOP支持,可以通过IDEA的Live Templates功能自定义XML模板。具体步骤包括:连续按两次Shift搜索Live Templates,配置模板内容,输入特定前缀(如spring)并按Tab键即可快速生成完整的Spring配置文件。这样可以大大提高开发效率,减少重复工作。
1216 1
使用idea中的Live Templates自定义自动生成Spring所需的XML配置文件格式
|
Java Spring
【Spring配置】idea编码格式导致注解汉字无法保存
问题一:对于同一个项目,我们在使用idea的过程中,使用汉字注解完后,再打开该项目,汉字变成乱码问题二:本来a项目中,汉字注解调试好了,没有乱码了,但是创建出来的新的项目,写的注解又成乱码了。
|
前端开发 Java 开发者
这款免费 IDEA 插件让你开发 Spring 程序更简单
Feign-Helper 是一款支持 Spring 框架的 IDEA 免费插件,提供 URL 快速搜索、Spring Web Controller 路径一键复制及 Feign 与 Controller 接口互相导航等功能,极大提升了开发效率。
3745 1
|
消息中间件 监控 Java
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
449 6
|
Java 关系型数据库 MySQL
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
385 5

热门文章

最新文章