构建项目父工程 添加公共核心模块 安装nacos
安装nacos
-
nacos 文档地址: https://nacos.io/zh-cn/docs/what-is-nacos.html
-
本文使用版本2.2.2 下载地址:https://github.com/alibaba/nacos/archive/refs/tags/2.2.2.zip
使用nacos
-
我们下载是源代码 解压即可
unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz cd nacos/bin
-
添加nacos数据库修改nacos配置文件
新建数据库nacos 修改配置文件
2.1 导入数据库脚本 nacos/conf/mysql-schema.sql 在新建的nacos数据库执行即可
2.2 修改配置文件数据库密码 nacos/conf/application.properties 如果没有 复制一份__application.properties.example__
-
启动服务器
注:Nacos的运行需要以至少2C4g60g*3的机器配置下运行
Linux/Unix/Mac
启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone
如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:
bash startup.sh -m standalone
Windows
启动命令(standalone代表着单机模式运行,非集群模式):
startup.cmd -m standalone
-
访问http://127.0.0.1:8848/nacos能通代表启动成功 默认用户名和密码 nacos
-
关闭nacos
Linux/Unix/Mac
sh shutdown.sh
Windows
shutdown.cmd
或者双击shutdown.cmd运行文件。
搭建项目
-
新建项目 修改项目打包方式为pom,删除掉src目录和其它无用的文件只保留pom.xml ,引入微服务依赖 前面有讲过
我们先讲基础的依赖添加进来后面需要其它组件的时候我们在添加
父工程结构如下:
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"><modelVersion>4.0.0</modelVersion><groupId>com.aihe</groupId><artifactId>aihe-cloud</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring-boot-admin.version>2.7.10</spring-boot-admin.version><spring.boot.version>2.7.11</spring.boot.version><spring.cloud.version>2021.0.5</spring.cloud.version><spring.cloud.alibaba.version>2021.0.5.0</spring.cloud.alibaba.version><jasypt.version>3.0.5</jasypt.version></properties><!-- 以下依赖 全局所有的模块都会引入 --><dependencies><!--配置文件处理器--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><!--配置文件加解密--><dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>${jasypt.version}</version></dependency><!--监控--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><!--监控客户端--><dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-starter-client</artifactId><version>${spring-boot-admin.version}</version></dependency><!--Lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><scope>provided</scope></dependency><!--测试依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><!-- spring cloud 依赖 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring.cloud.version}</version><type>pom</type><scope>import</scope></dependency><!-- 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><!-- spring boot依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring.boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement> </project>
-
添加子项目 common模块 封装全局返回 全局异常,全局枚举 其它的以后封装
pom文件
暂时先添加web和validation依赖
<?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"><modelVersion>4.0.0</modelVersion><parent><groupId>com.aihe</groupId><artifactId>aihe-cloud</artifactId><version>1.0-SNAPSHOT</version></parent><artifactId>aihe-cloud-common</artifactId><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></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-validation</artifactId></dependency></dependencies></project>
到此我们微服务第一步就算是搭建好了 先安装nacos是为了后面的方便