SpringBoot项目与Nacos配置

简介: 注意:建议大家以自己的名字全拼命名,防止大家搞混

一、Nacos服务端配置命名空间和yml文件


注意:建议大家以自己的名字全拼命名,防止大家搞混


9ad961ca4b1640abc9f6f0458401406f.png

bbef421bbc92ce4ab38270e2101ef993.png

d51d78dd7d1f42c1b0c5e88a52149f3d.png


二、创建SpringBoot项目


在Idea中左上角选择【File】,右击选择【New】,右击选择【Project】


8af564975d5396a874a160302bc06a0d.png


此处我们要建立的是SpringBoot项目,在左边的列表中选择【Spring Initializer】,填写项目的名称,配置jdk版本,此处根据自己的实际需要进行配置即可,完成之后点击【Next】


7c472f98d5a8088418b9da0b86f6a7c9.png


展开【Web】下拉列表,勾选上【Spring Web】,完成后点击【Finish】


25393a04a2056164681fc19f1d2dc13a.png


项目创建成功之后我们会发现会有很多文件夹和文件,我们只需要留下【pom.xml】文件即可,其余文件我们暂时用不到可以先删除


99eabbea3f2c3d0cfa7eab6b16ad05e1.png


在父pom.xml中添加spring boot,spring cloud,spring cloud alibaba三个依赖


<dependencyManagement>
  <dependencies>
    <!--spring boot,spring cloud,spring cloud alibaba-->
    <!--选用官网稳定的版本-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-dependencies</artifactId>
      <version>2.3.12.RELEASE</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-dependencies</artifactId>
      <version>Hoxton.SR12</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    <dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-alibaba-dependencies</artifactId>
      <version>2.1.2.RELEASE</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>


7ac699cb08159379ca1aa04a58cbc274.png


修改父pom.xml中配置的SpringBoot版本


可能会出现版本不兼容的问题,我们在这里将SpringBoot版本修改为【2.3.12.RELEASE】


7fa81f95db94cfd1ef8a4e6395aed521.png


三、创建子服务


这时候我们要新建两个子服务


点击项目名【NacosInstance】右击选择【New】,右击选择【Module】


ae8fa8d6b97630a4308ab6b256bc3fee.png


要创建两个子服务都是普通的Maven项目,所以这里我们选择【Maven】就可以,完成后点击【Next】


e1a75034cd35bc8f9126fc2ae074a0d7.png


输入新创建服务的名称和地址,完成后点击【Finish】


00283358c39f14810ce0eac90283de51.png


此时项目中就多了一个名叫order-Service的服务,我们为新添加的服务配置nacos依赖,点击进入oser-service服务的【pom.xml】文件


<dependencies>
        <!-- nacos服务注册/发现-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--nacos配置中心来做配置管理-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
</dependencies>


在order-Service子服务的src文件夹中,选择【resources】右击新建一个yml配置文件,并进行nacos的配置


6aea02ec49b1446ca472d10696de968b.png


d7b3fb2af5394b8ca441520b85a84c1d.png


server:
  port: 9000
  servlet:
    context-path: /order-Service
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 152.136.111.77:5555
        namespace: 10ecded1-361f-45d7-a009-ad2355304ff5
      config:
        server-addr: 152.136.111.77:5555
        namespace: 10ecded1-361f-45d7-a009-ad2355304ff5
        prefix: order
        file-extension: yml
  application:
    name: order


四、Controller编写


在order-Service服务中按照下图的格式新建两个文件,分别为启动类和请求类


ac7810486d971be145d60279fc6494e5.png


在【OrderController】类中编写请求的逻辑代码


package order.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/placeOrder")
@Controller
public class OrderController {
    @GetMapping("/order")
    public String placeOrder(){
        return "已下单";
    }
}


在【OrderServiceApplication】类中编写程序启动逻辑


package order;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@SpringBootApplication
@EnableDiscoveryClient
public class OrderServiceApplication {
    public static void main(String[] args) {
        SpringApplication.run(OrderServiceApplication.class, args);
    }
}


五、Tomcat启动程序


1bae53b1dd1e9d8e6a9c69ce0e698ff1.png


配置成功


此时,我们再次在浏览器中打开Nacos服务端,点击【服务列表】,我们配置的order-Service服务就注册成功啦!!


7e1e71f800c4dc8a772188860d9be5c4.png

相关文章
|
9天前
|
存储 网络协议 Nacos
高效搭建Nacos:实现微服务的服务注册与配置中心
Nacos(Dynamic Naming and Configuration Service)是阿里巴巴开源的一款动态服务发现、配置管理和服务管理平台。它旨在帮助开发者更轻松地构建、部署和管理分布式系统,特别是在微服务架构中。
172 81
高效搭建Nacos:实现微服务的服务注册与配置中心
|
2月前
|
Java 开发者 微服务
手写模拟Spring Boot自动配置功能
【11月更文挑战第19天】随着微服务架构的兴起,Spring Boot作为一种快速开发框架,因其简化了Spring应用的初始搭建和开发过程,受到了广大开发者的青睐。自动配置作为Spring Boot的核心特性之一,大大减少了手动配置的工作量,提高了开发效率。
69 0
|
12天前
|
Java Maven Spring
SpringBoot配置跨模块扫描问题解决方案
在分布式项目中,使用Maven进行多模块开发时,某些模块(如xxx-common)没有启动类。如何将这些模块中的类注册为Spring管理的Bean对象?本文通过案例分析,介绍了两种解决方案:常规方案是通过`@SpringBootApplication(scanBasePackages)`指定扫描路径;推荐方案是保持各模块包结构一致(如com.xxx),利用SpringBoot默认扫描规则自动识别其他模块中的组件,简化配置。
SpringBoot配置跨模块扫描问题解决方案
|
19天前
|
NoSQL Java Redis
Spring Boot 自动配置机制:从原理到自定义
Spring Boot 的自动配置机制通过 `spring.factories` 文件和 `@EnableAutoConfiguration` 注解,根据类路径中的依赖和条件注解自动配置所需的 Bean,大大简化了开发过程。本文深入探讨了自动配置的原理、条件化配置、自定义自动配置以及实际应用案例,帮助开发者更好地理解和利用这一强大特性。
71 14
|
25天前
|
JSON Java Nacos
SpringCloud 应用 Nacos 配置中心注解
在 Spring Cloud 应用中可以非常低成本地集成 Nacos 实现配置动态刷新,在应用程序代码中通过 Spring 官方的注解 @Value 和 @ConfigurationProperties,引用 Spring enviroment 上下文中的属性值,这种用法的最大优点是无代码层面侵入性,但也存在诸多限制,为了解决问题,提升应用接入 Nacos 配置中心的易用性,Spring Cloud Alibaba 发布一套全新的 Nacos 配置中心的注解。
147 10
|
2月前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
58 1
SpringBoot入门(7)- 配置热部署devtools工具
|
2月前
|
存储 人工智能 Java
Spring AI Alibaba 配置管理,用 Nacos 就够了
本文通过一些实操案例展示了 Spring AI Alibaba + Nacos 在解决 AI 应用中一系列复杂配置管理挑战的方案,从动态 Prompt 模板的灵活调整、模型参数的即时优化,到敏感信息的安全加密存储。Spring AI Alibaba 简化了对接阿里云通义大模型的流程,内置 Nacos 集成也为开发者提供了无缝衔接云端配置托管的捷径,整体上极大提升了 AI 应用开发的灵活性和响应速度。
264 15
|
2月前
|
Java 网络安全 Nacos
Nacos作为流行的微服务注册与配置中心,其稳定性与易用性广受好评
Nacos作为流行的微服务注册与配置中心,其稳定性与易用性广受好评。然而,“客户端不发送心跳检测”是使用中常见的问题之一。本文详细探讨了该问题的原因及解决方法,包括检查客户端配置、网络连接、日志、版本兼容性、心跳检测策略、服务实例注册状态、重启应用及环境变量等步骤,旨在帮助开发者快速定位并解决问题,确保服务正常运行。
51 5
|
2月前
|
存储 前端开发 JavaScript
springboot中路径默认配置与重定向/转发所存在的域对象
Spring Boot 提供了简便的路径默认配置和强大的重定向/转发机制,通过合理使用这些功能,可以实现灵活的请求处理和数据传递。理解并掌握不同域对象的生命周期和使用场景,是构建高效、健壮 Web 应用的关键。通过上述详细介绍和示例,相信读者能够更好地应用这些知识,优化自己的 Spring Boot 应用。
41 3
|
2月前
|
Java 数据库连接 数据库
springboot启动配置文件-bootstrap.yml常用基本配置
以上是一些常用的基本配置项,在实际应用中可能会根据需求有所变化。通过合理配置 `bootstrap.yml`文件,可以确保应用程序在启动阶段加载正确的配置,并顺利启动运行。
269 2