当前位置: 首页 > news >正文

在idea使用nacos微服务

一.安装nacos

、依赖记得别放<dependencyManagement></dependencyManagement>这个标签去了

1.在linux拉取镜像安装

docker pull nacos/nacos-server:1.3.1

2.创建挂载目录 

mkdir -p /usr/local/docker/nacos/init.d /usr/local/docker/nacos/logs

3.安装nacos

docker run -d \
-p 8848:8848 \
-e MODE=standalone \
-e PREFER_HOST_NAME=hostname \
-v /usr/local/docker/nacos/init.d:/home/nacos/init.d \
-v /usr/local/docker/nacos/logs:/home/nacos/logs \
--name nacos nacos/nacos-server:1.3.1

看看有没有启动nacos

 docker ps

二.注册中心

1.idea创建maven项目

 

 

2.加依赖

在pom.xml文件里加入依赖,等待的时间有点长,耐心等待。

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.7.RELEASE</version></parent><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring-boot.version>2.6.13</spring-boot.version><jwt.version>0.7.0</jwt.version><fastjson.version>1.2.60</fastjson.version><spring-cloud-alibaba.version>2.0.3.RELEASE</spring-cloud-alibaba.version><spring-cloud.version>Finchley.SR2</spring-cloud.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>compile</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!--json--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>${fastjson.version}</version><scope>compile</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency></dependencies><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><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></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><classifier>exec</classifier></configuration></plugin></plugins></build>

3.编写bootstrap.yml配置文件

在resources下创建bootstrap.yml配置文件

spring:cloud:nacos:discovery:server-addr: 192.168.130.39:8848

4.编写application.properties配置文件

在resources下创建application.properties配置文件

 

5.创建启动类并启动

注意我这里的启动类放com.jr下面了,而不是com下面,因为nacos云默认有一个com包,如果我们只是写com,它无法识别我们的项目,只要我们把启动类放在com.jr或者是com.其它的地方就能识别了。还有启动前一定要保证自己的nacos在运行状态。

package com.jr;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class SpringBootMain {public static void main(String[] args) {SpringApplication.run(SpringBootMain.class,args);}
}

6.登录nacos网页

随便找个浏览器然后在上面输入下面的地址

 用户和密码都是nacos

登录成功后的页面:

 然后我们点击左边的服务管理里的服务列表,就可以看到我们刚刚在配置文件创建的名字服务了,表示注册成功,然后我们点击它右边的详情。

 三.配置中心

1.创建并修改application.yml

server:port: 99common:name: zhangsanage: 20

 

2.创建控制器类

package com.jr.controller;import lombok.Setter;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/user")
@Setter
public class UserController {@Value("${common.name}")private String name;@Value("${common.age}")private Integer age;@GetMappingpublic String test(){return name+"----"+age;}}

3.启动项目

在自己浏览器上输入以下地址

4.在pom.xml再次添加依赖 

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

5.创建命名空间 

我们再回到nacos网页,去创建命名空间。

6.配置中心添加配置文件

 

再创建一个

点返回,回到首页。

 

7.修改bootstrap.yml配置文件  

spring:cloud:nacos:discovery:server-addr: 192.168.130.39:8848config:server-addr: 192.168.130.39:8848file-extension: yamlnamespace: 8920c585-274d-477f-b55f-9324be8da9bdshared-configs:- data-id: dierge.yamlgroup: DEFAULT_GROUP- data-id: woshidierge.yamlgroup: DEFAULT_GROUPinetutils:preferred-networks: 192.168.116

下面几个地方我简单说下,

server-addr是你在注册操作时候的ip和端口

file-extension是你在配置中心添加配置文件时候的类型.

namespace能在你的配置管理的配置列表上面找到:

shared-configs是你两个配置的id和group,也能在上面的图片找到

 preferred-networks能在服务管理的服务列表找到,记得你的把上面的换为public才行,然后点进服务的详情里面,下面就是preferred-networks

8.启动项目

在浏览器中输入如下地址。

 到这就结束了,下面是我的idea项目的结构,大家也可以做参考,大家加油。

相关文章:

  • Qt day1登录界面设计
  • 提取出来的ip与我原本的ip是在同一个区吗
  • 在线表格技术如何助力企业实现全面预算?
  • k8s基于nfs创建storageClass
  • React 组件命名规范
  • 【TypeScript学习】TypeScript基础学习总结二
  • 基于STM32的智能照明控制系统设计:MQTT通信与Web界面开发
  • 虾皮Java后台开发校园招聘面试题及参考答案
  • UDP校验和计算及网络中的校验和机制
  • PFC和LLC的本质和为什么要用PFC和LLC电路原因
  • 【迁移学习入门之域适应的背景、理论与方法】进一步理解迁移学习啦?
  • Mybatis 9种动态 sql 标签使用
  • Python知识点:使用Azure IoT Edge与Python进行边缘计算
  • 一文掌握Harbor镜像同步公有云镜像仓库实践
  • 从自动化到智能化:AI如何推动业务流程自动化
  • 【EOS】Cleos基础
  • egg(89)--egg之redis的发布和订阅
  • Koa2 之文件上传下载
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • WePY 在小程序性能调优上做出的探究
  • 从0到1:PostCSS 插件开发最佳实践
  • 基于axios的vue插件,让http请求更简单
  • 检测对象或数组
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 《天龙八部3D》Unity技术方案揭秘
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • #FPGA(基础知识)
  • #if #elif #endif
  • #QT项目实战(天气预报)
  • #考研#计算机文化知识1(局域网及网络互联)
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (2024,Flag-DiT,文本引导的多模态生成,SR,统一的标记化,RoPE、RMSNorm 和流匹配)Lumina-T2X
  • (4)logging(日志模块)
  • (CVPRW,2024)可学习的提示:遥感领域小样本语义分割
  • (ISPRS,2021)具有遥感知识图谱的鲁棒深度对齐网络用于零样本和广义零样本遥感图像场景分类
  • (Java入门)抽象类,接口,内部类
  • (pytorch进阶之路)扩散概率模型
  • (Qt) 默认QtWidget应用包含什么?
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (转)socket Aio demo
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • (自适应手机端)行业协会机构网站模板
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .Net Core中的内存缓存实现——Redis及MemoryCache(2个可选)方案的实现
  • .net framework 4.0中如何 输出 form 的name属性。
  • .net6Api后台+uniapp导出Excel
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .NET开发人员必知的八个网站
  • .NET开发者必备的11款免费工具
  • .NET框架类在ASP.NET中的使用(2) ——QA
  • .NET应用UI框架DevExpress XAF v24.1 - 可用性进一步增强
  • /proc/stat文件详解(翻译)