Spring Boot 4 Microservices & REST APIs · บทเรียน

ไคลเอนต์การกำหนดค่า

ใช้การกำหนดค่าส่วนกลางในบริการต่าง ๆ

บทเรียน 3 จาก 413 ขั้นตอน

ไคลเอนต์การกำหนดค่า เป็นบทเรียน Spring Boot 4 Microservices & REST APIs ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Spring Boot 4 Microservices & REST APIs และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Spring Boot 4 Microservices & REST APIs มีบทเรียนทั้งหมด 4 บทเรียน

บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ

Turning a service into a client

A microservice becomes a Config Client by adding the client starter and telling it where the Config Server is. It then fetches its config at startup.

Adding the client dependency

Add spring-cloud-starter-config to the service.

<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-config</artifactId>
</dependency>

spring.config.import

Modern Spring Boot uses spring.config.import to point at the Config Server, replacing the old bootstrap.yml approach.

# application.yml of the client
spring:
  application:
    name: orders
  config:
    import: "configserver:http://localhost:8888"

How the name maps to config

The client's spring.application.name selects which files the server returns. Name it orders and you get orders.yml (plus shared and profile files).

Selecting a profile

The active profile decides which profile-specific file is layered on top. Set it as usual.

spring:
  profiles:
    active: prod
# -> server returns orders.yml + orders-prod.yml merged

Optional vs required import

By default the import is required - the app fails to start if the server is down. Mark it optional: to allow startup with local config as fallback.

spring:
  config:
    import: "optional:configserver:http://localhost:8888"

Using the fetched values

Once imported, remote properties behave like any other - inject with @Value or bind to a @ConfigurationProperties class.

@Component
public class GreetingService {
    @Value("${app.greeting}")
    private String greeting; // value comes from the config server
}

Type-safe binding

For groups of related settings, bind to a class. This is cleaner and validated.

@ConfigurationProperties(prefix = "app")
public class AppProps {
    private String greeting;
    // getters/setters
}

Discovering the server (optional)

Instead of a hardcoded URL, the client can find the Config Server via a discovery service (Eureka). Enable discovery-first lookup and reference the server by service id.

spring:
  cloud:
    config:
      discovery:
        enabled: true
        service-id: config-server

Fail-fast and retry

Enable fail-fast so a client refuses to start with missing config, and add the retry starter so transient server outages are retried instead of crashing the client.

spring:
  cloud:
    config:
      fail-fast: true
      retry:
        max-attempts: 6

Property precedence

Remote config from the server generally takes precedence over the client's local application.yml, so central values win - keep only safe defaults locally.

Quick Check

Check your client-setup knowledge.

Recap

You wired up a client:

  • Add spring-cloud-starter-config
  • Point at the server with spring.config.import
  • spring.application.name + active profile select the files
  • Use optional:, fail-fast and retry to control startup behavior
เริ่มต้นได้ฟรี

เรียนรู้ Java ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
24
บทเรียน
93

คำถามที่พบบ่อย

บทเรียน “ไคลเอนต์การกำหนดค่า” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ไคลเอนต์การกำหนดค่า” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Spring Boot 4 Microservices & REST APIs ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Spring Boot 4 Microservices & REST APIs มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ไคลเอนต์การกำหนดค่า”

ใช้การกำหนดค่าส่วนกลางในบริการต่าง ๆ คุณปฏิบัติ Spring Boot 4 Microservices & REST APIs ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Spring Boot 4 Microservices & REST APIs หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Spring Boot 4 Microservices & REST APIs บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “ไคลเอนต์การกำหนดค่า” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Spring Boot 4 Microservices & REST APIs นี้ได้ไหม

ได้ บทเรียน Spring Boot 4 Microservices & REST APIs ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เซิร์ฟเวอร์การกำหนดค่า
  2. การกำหนดค่าที่มี Git รองรับ
  3. ไคลเอนต์การกำหนดค่า
  4. การรีเฟรชการกำหนดค่าขณะทำงาน
← กลับไปที่ Spring Boot 4 Microservices & REST APIs