从0到1创建spring cloud项目并集成nacos等中间件
创建cloud项目,cloud集成naocos、mysql、redis、mybatis、mybatisplus等
从0到1创建spring cloud项目并集成nacos等中间件(不定时更新)
一、创建父项目
1.1 当在idea打开项目内部创建时,File->new->Project…
当在打开idea页面创建项目时,直接点解new Project即可
注意:因使用idea版本为2023目前不支持java8,需要java8的把Server
URL改成阿里的即可(点击设置改为:https://start.aliyun.com)
然后点击Next
然后点击Create 就创建好自己的父项目了,创建完成之后是这样的
创建父项目就到此结束了
二、父项目springboot集成springcloud
2.1修改父工程springBoot版本
2.2查询springBoot和springcloud相对应版本
SpringCloud版本 | SpringBoot版本 |
---|---|
2021.0.1-SNAPSHOT | Spring Boot >=2.6.4-SNAPSHOT and <2.7.0-M1 |
2021.0.0 | Spring Boot >=2.6.1 and <2.6.4-SNAPSHOT |
2021.0.0-RC1 | Spring Boot >=2.6.0-RC1 and <2.6.1 |
2021.0.0-M3 | Spring Boot >=2.6.0-M3 and <2.6.0-RC1 |
2021.0.0-M1 | Spring Boot >=2.6.0-M1 and <2.6.0-M3 |
2020.0.5 | Spring Boot >=2.4.0.M1 and <2.6.0-M1 |
Hoxton.SR12 | Spring Boot >=2.2.0.RELEASE and <2.4.0.M1 |
Hoxton.BUILD-SNAPSHOT | Spring Boot >=2.2.0.BUILD-SNAPSHOT |
Hoxton.M2 | Spring Boot >=2.2.0.M4 and <=2.2.0.M5 |
Greenwich.BUILD-SNAPSHO | Spring Boot >=2.1.9.BUILD-SNAPSHOT and <2.2.0.M4 |
Greenwich.SR2 | Spring Boot >=2.1.0.RELEASE and <2.1.9.BUILD-SNAPSHOT |
Greenwich.M1 | Spring Boot >=2.1.0.M3 and <2.1.0.RELEASE |
Finchley.BUILD-SNAPSHOT | Spring Boot >=2.0.999.BUILD-SNAPSHOT and <2.1.0.M3 |
Finchley.SR4 | Spring Boot >=2.0.3.RELEASE and <2.0.999.BUILD-SNAPSHOT |
Finchley.RC2 | Spring Boot >=2.0.2.RELEASE and <2.0.3.RELEASE |
Finchley.RC1 | Spring Boot >=2.0.1.RELEASE and <2.0.2.RELEASE |
Finchley.M9 | Spring Boot >=2.0.0.RELEASE and <=2.0.0.RELEASE |
Finchley.M7 | Spring Boot >=2.0.0.RC2 and <=2.0.0.RC2 |
Finchley.M6 | Spring Boot >=2.0.0.RC1 and <=2.0.0.RC1 |
Finchley.M5 | Spring Boot >=2.0.0.M7 and <=2.0.0.M7 |
Finchley.M4 | Spring Boot >=2.0.0.M6 and <=2.0.0.M6 |
Finchley.M3 | Spring Boot >=2.0.0.M5 and <=2.0.0.M5 |
Finchley.M2 | Spring Boot >=2.0.0.M3 and <2.0.0.M5 |
Edgware.SR5 | 1.5.20.RELEASE |
Edgware.SR5 | 1.5.16.RELEASE |
Edgware.RELEASE | 1.5.9.RELEASE |
Dalston.RC1 | 1.5.2.RELEASE |
2.3删除无关依赖,添加cloud依赖
<spring-cloud.version>2021.0.1</spring-cloud.version>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
2.4然后启动创建父项目时携带的测试类
没有报错启动成功,集成cloud成功!!!
三、项目集成nacos
3.1下载nacos
在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:
GitHub的Release下载页:https://github.com/alibaba/nacos/releases
友情提示 下载真的超级慢 翻墙可能会快点(如果不知道翻墙是什么就百度吧。。。)
3.2解压
注意:解压的文件一定要放在一个没有中文的目录
3.3启动
双击运行startup.cmd
nacos默认端口号为8848
浏览器输入http://localhost:8848/nacos并访问 默认账号密码为nacos nacos
3.4查询nacos相关版本依赖
查询nacos版本,springboot版本,springcloud版本。spring-cloud-alibaba 版本说明 alinacos版本说明
springboot 2.6.3为例子
3.5添加依赖
在maven中添加nacos的依赖
<spring-cloud-alibaba.version>2021.0.1.0</spring-cloud-alibaba.version>
<!-- spring cloud alibaba是阿里巴巴集团针对服务开发所提供的一套解决方案 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
然后刷新maven
3.6创建子工程
和上述创建工程一样创建子工程
编写模块名称和项目路径 一定要和父工程jar版本一致
看到这样就代表创建成功了
3.7删除父工程无用代码,并将子工程集成到父工程中
修改父工程maven
<!--父工程打包方式-->
<packaging>pom</packaging>
<!--子模块-->
<modules>
<module>cloud-demo-manage</module>
</modules>
修改完成后刷新父工程maven
3.8修改子工程中相关代码
删除无用代码
修改子工程maven
注意不要完全复制一下依赖 一定要根据个人需要再进行复制
<modelVersion>4.0.0</modelVersion>
<artifactId>cloud-demo-manage</artifactId>
<!--声明父工程项目-->
<parent>
<artifactId>cloud-demo</artifactId>
<groupId>com.tiejiang</groupId>
<version>1.0.0</version>
</parent>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<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>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<mainClass>com.tiejiang.manage.CloudDemoManageApplication</mainClass>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
3.9配置nacos
启动nacos
然后创建命名空间
3.10配置yml
修改子工程
server:
#项目端口
port: 9999
spring:
application:
#项目名称
name: demo-manage
cloud:
nacos:
discovery:
#nacos地址
server-addr: 127.0.0.1:8848
namespace: dev
启动服务
集成完成
四、项目集成redis
4.1下载redis
windows环境下的redis需要去github上获取:
https://github.com/MicrosoftArchive/redis/releases
直接下载zip包即可(自己需要哪个下载那个版本)
4.2 解压
注意:解压的文件一定要放在一个没有中文的目录
4.3 启动
打开解压目录 双击
显示这个就代表启动成功了
推荐一个redis可视化软件 RedisDesktopManager
安装完成后连接自己本地安装的redis就可以实现redis可视化了
下载地址: https://github.com/uglide/RedisDesktopManager/releases/download/0.9.3/redis-desktop-manager-0.9.3.817.exe
4.3 引入redis依赖
在父项目中加入redis依赖
<!--redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
4.4配置redis文件
在子项目中加入redis配置文件
redis: # Redis相关配置的开始,这里定义了连接到Redis服务所需要的参数
host: 127.0.0.1 # Redis服务器的主机地址,这里是本地地址,用于连接本地的Redis服务
port: 6379 # Redis服务的端口号,默认通常是6379
password: # Redis服务器的密码,如果Redis服务器设置了密码,这里需要填写对应的密码
database: 0 # 使用的Redis数据库的索引号,默认为0,Redis可以有多个数据库,通过索引号来区分
4.5编写测试类
在子项目中编写测试类
启动项目 测试接口 链接可视化面板
当看到有数据时成功!!!
五、项目集成mysql
5.1下载mysql
下载mysql: https://dev.mysql.com/downloads/mysql/
选择自己需要得到版本直接下载压缩包即可
5.2解压
下载完成进行解压 解压一定要要放在一个没有中文的目录文件中
5.3创建ini文件
在根目录下创建一个txt文件,名字叫my,文件后缀为ini
之后复制下面这个代码放在文件下
(新解压的文件没有my.ini文件,需自行创建)
以下代码除安装目录和数据的存放目录需修改,其余不用修改
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录 ----------是你的文件路径-------------
basedir=D:\Dev\mysql-8.0.11\mysql-8.0.11-winx64
# 设置mysql数据库的数据的存放目录 ---------是你的文件路径data文件夹自行创建
datadir=D:\Dev\mysql-8.0.11\mysql-8.0.11-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
5.4初始化数据库
管理员运行命令窗口
打开后数据名称跳转至mysql的bin目录
cd D:\Dev\mysql-8.0.11\mysql-8.0.11-winx64\bin
然后执行以下命令
mysqld --initialize --console
然后复制@localhost:后的密码 :后面有空格注意不要复制上去
一定要复制后面要使用此密码进入数据库
5.4安装数据库并修改密码
输入命令安装mysql服务
mysqld --install mysql
输入命令安装mysql
net start mysql
输入命令连接mysql
mysql -uroot -p
输入命令后填入刚刚复制的密码
然后输入命令修改你的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新的密码';
这样就显示修改成功了
想全局进入mysql 在环境变量中创建即可
5.5添加数据库依赖
在父项目中添加数据库依赖
<druid.version>1.2.6</druid.version>
<mysql.version>8.0.28</mysql.version>
<!--数据库-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>${druid.version}</version>
</dependency>
5.6添加配置文件
在子项目配置文件中添加数据库链接
datasource:
#数据库链接地址
url: jdbc:mysql://localhost:3306/db_test?nullCatalogMeansCurrent=true&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false
username: 自己数据库账户名
password: 自己数据库密码
hikari:
minimum-idle: 10
maximum-pool-size: 50
idle-timeout: 3000000
配置好后 启动项目
启动成功没有报错 集成成功!!!
五、项目集成mybatis与mybatisPlus
5.1父项目引入依赖
<mybatisPlus.version>3.4.2</mybatisPlus.version>
<mybatis.version>2.3.2</mybatis.version>
<!--mybatis、mybatisPlus-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatisPlus.version}</version>
</dependency>
如果你的boot是别的版本 ,mybatis和mybatisplus这个版本需要和你的boot版本对应起来
5.2 添加mybatisplus配置文件
mybatis-plus:
configuration:
default-enum-type-handler: org.apache.ibatis.type.EnumOrdinalTypeHandler
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath:/mapper/*.xml
typeAliasesPackage: com.teijiang.dao.domain
global-config:
db-config:
logic-delete-value: 0
logic-not-delete-value: 1
type-handlers-package: com.teijiang.dao.handler
加入后自己创建mapper 实体类 和xml文件自行体验即可

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)