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


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

目录
相关文章
|
6月前
|
前端开发 Java 数据库连接
Spring核心原理剖析与解说
每个部分都是将一种巨大并且复杂的技术理念传达为更易于使用的接口,而这就是Spring的价值所在,它能让你专注于开发你的应用,而不必从头开始设计每一部分。
208 32
|
Java API Spring
在 Spring 配置文件中配置 Filter 的步骤
【10月更文挑战第21天】在 Spring 配置文件中配置 Filter 是实现请求过滤的重要手段。通过合理的配置,可以灵活地对请求进行处理,满足各种应用需求。还可以根据具体的项目要求和实际情况,进一步深入研究和优化 Filter 的配置,以提高应用的性能和安全性。
|
11月前
|
Java Spring
【Spring配置】idea编码格式导致注解汉字无法保存
问题一:对于同一个项目,我们在使用idea的过程中,使用汉字注解完后,再打开该项目,汉字变成乱码问题二:本来a项目中,汉字注解调试好了,没有乱码了,但是创建出来的新的项目,写的注解又成乱码了。
|
11月前
|
前端开发 Java 开发者
这款免费 IDEA 插件让你开发 Spring 程序更简单
Feign-Helper 是一款支持 Spring 框架的 IDEA 免费插件,提供 URL 快速搜索、Spring Web Controller 路径一键复制及 Feign 与 Controller 接口互相导航等功能,极大提升了开发效率。
1393 1
|
11月前
|
消息中间件 监控 Java
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
261 6
|
11月前
|
Java 关系型数据库 MySQL
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
193 5
|
11月前
|
缓存 监控 Java
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
229 5
|
Java 应用服务中间件 Maven
idea+maven+tomcat+spring 创建一个jsp项目
这篇文章介绍了如何在IntelliJ IDEA中使用Maven和Tomcat创建一个JSP项目,包括配置Maven依赖、设置Tomcat服务器、编写JSP页面、创建控制器和配置文件,以及项目的运行结果。
782 0
idea+maven+tomcat+spring 创建一个jsp项目
|
Java 关系型数据库 开发工具
idea创建不了spring2.X版本,无法使用JDK8,最低支持JDK17 , 如何用idea创建spring2.X版本,使用JDK8解决方案
本文提供了解决方案,如何在IDEA中创建Spring 2.X版本的项目并使用JDK8,尽管Spring 2.X已停止维护且IDEA不再直接支持,通过修改pom.xml或使用阿里云的国内源来创建项目。
1475 0
idea创建不了spring2.X版本,无法使用JDK8,最低支持JDK17 , 如何用idea创建spring2.X版本,使用JDK8解决方案