উদাহরণ সহ প্রোপার্টিজ এবং YAML কনফিগারেশন

Spring Boot এর অ্যাপ্লিকেশন প্রোপার্টিজ এবং YAML - স্প্রিং বুট (Spring Boot) - Java Technologies

288

স্প্রিং বুট অ্যাপ্লিকেশনগুলির কনফিগারেশন সেট করা একটি গুরুত্বপূর্ণ দিক। এর মাধ্যমে আপনি বিভিন্ন সেটিংস এবং প্রোপার্টিজ নির্ধারণ করতে পারেন, যেমন ডেটাবেসের কনফিগারেশন, লগিং, সার্ভার পোর্ট, অ্যাপ্লিকেশনের পরিবেশ এবং অন্যান্য কাস্টম সেটিংস। স্প্রিং বুট সাধারণত দুটি ফরম্যাটে কনফিগারেশন ফাইল ব্যবহার করে: application.properties এবং application.yml। উভয় ফরম্যাটই একই কাজ করে, তবে YAML ফাইলটি অনেক বেশি পাঠযোগ্য এবং হায়ারারকিক্যাল ডাটা ম্যানেজমেন্টে সুবিধাজনক।


স্প্রিং বুট প্রোপার্টিজ কনফিগারেশন (application.properties)

স্প্রিং বুট অ্যাপ্লিকেশনে application.properties ফাইল ব্যবহার করে কনফিগারেশন সেট করা হয়। এখানে সাধারণ কনফিগারেশন প্রোপার্টিজ দেয়া হচ্ছে।

প্রথম উদাহরণ: ডেটাবেস কনফিগারেশন

# ডেটাবেস কনফিগারেশন
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=rootpassword
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true

এখানে spring.datasource.url, spring.datasource.username এবং spring.datasource.password প্রোপার্টিজের মাধ্যমে ডেটাবেসের সংযোগ কনফিগার করা হয়েছে।


দ্বিতীয় উদাহরণ: সার্ভার পোর্ট কনফিগারেশন

# সার্ভারের পোর্ট কনফিগারেশন
server.port=8081

এখানে server.port=8081 দ্বারা স্পেসিফাই করা হয়েছে যে অ্যাপ্লিকেশনটি 8081 পোর্টে রান করবে।


তৃতীয় উদাহরণ: অ্যাপ্লিকেশনের নাম কনফিগারেশন

# অ্যাপ্লিকেশনের নাম
spring.application.name=MySpringBootApp

এখানে spring.application.name প্রোপার্টিজ ব্যবহার করা হয়েছে অ্যাপ্লিকেশনের নাম সেট করার জন্য।


স্প্রিং বুট YAML কনফিগারেশন (application.yml)

YAML একটি সহজ এবং পঠনযোগ্য ফরম্যাট যা কনফিগারেশন ডেটা শ্রেণীবদ্ধভাবে এবং হায়ারারকিক্যালভাবে প্রদর্শন করে। স্প্রিং বুট অ্যাপ্লিকেশনেও আপনি application.yml ফাইল ব্যবহার করতে পারেন। নিচে এর উদাহরণ দেয়া হলো।

প্রথম উদাহরণ: ডেটাবেস কনফিগারেশন

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb
    username: root
    password: rootpassword
    driver-class-name: com.mysql.cj.jdbc.Driver
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true

এখানে, YAML ফরম্যাটে ডেটাবেস কনফিগারেশন দেয়া হয়েছে, যেখানে spring.datasource এবং spring.jpa এর কনফিগারেশন হায়ারারকিক্যালভাবে সাজানো হয়েছে। YAML ফাইলের প্রধান সুবিধা হল, এটি অধিক পঠনযোগ্য এবং পরিবেশের প্রেক্ষিতে আরো কার্যকরী।


দ্বিতীয় উদাহরণ: সার্ভার পোর্ট কনফিগারেশন

server:
  port: 8081

এখানে server.port YAML ফরম্যাটে কনফিগার করা হয়েছে। এটি স্প্রিং বুট অ্যাপ্লিকেশন চালানোর জন্য পোর্ট নির্ধারণ করে।


তৃতীয় উদাহরণ: অ্যাপ্লিকেশনের নাম কনফিগারেশন

spring:
  application:
    name: MySpringBootApp

এখানে অ্যাপ্লিকেশনের নাম spring.application.name প্রোপার্টির মাধ্যমে YAML ফরম্যাটে কনফিগার করা হয়েছে।


কাস্টম প্রোপার্টিজ কনফিগারেশন

স্প্রিং বুট অ্যাপ্লিকেশন থেকে কাস্টম প্রোপার্টিজও লোড করা সম্ভব। যদি আপনি আপনার অ্যাপ্লিকেশনের জন্য কাস্টম প্রোপার্টি যুক্ত করতে চান, তবে আপনাকে একটি কাস্টম প্রোপার্টি ফাইল তৈরি করতে হবে।

কাস্টম প্রোপার্টি (application.properties)

# কাস্টম প্রোপার্টি
myapp.name=My Custom Application
myapp.version=1.0.0

কাস্টম প্রোপার্টি (application.yml)

myapp:
  name: My Custom Application
  version: 1.0.0

এখন আপনি @Value অ্যানোটেশন ব্যবহার করে এই কাস্টম প্রোপার্টি অ্যাক্সেস করতে পারবেন।

@Component
public class AppConfig {

    @Value("${myapp.name}")
    private String appName;

    @Value("${myapp.version}")
    private String appVersion;

    public void printAppDetails() {
        System.out.println("App Name: " + appName);
        System.out.println("App Version: " + appVersion);
    }
}

প্রোপার্টি এবং YAML এর মধ্যে পার্থক্য

ফিচারapplication.propertiesapplication.yml
পঠনযোগ্যতাতুলনামূলকভাবে কম পঠনযোগ্যঅধিক পঠনযোগ্য এবং পরিষ্কার
হায়ারারকিন্যূনতমসহজেই হায়ারারকিক্যাল ডাটা ম্যানেজমেন্ট
ব্যবহারছোট এবং সাধারণ কনফিগারেশনবড় এবং জটিল কনফিগারেশন
সিনট্যাক্স= চিহ্ন ব্যবহারইনডেন্টেশন ভিত্তিক

সারাংশ

স্প্রিং বুট অ্যাপ্লিকেশন কনফিগারেশন ফাইল হিসেবে application.properties এবং application.yml দুটি ফরম্যাটই সমর্থন করে। properties ফাইল সরল এবং সোজা, তবে YAML ফাইলটি বেশি পাঠযোগ্য এবং সহজে হায়ারারকিক্যাল ডাটা ম্যানেজমেন্ট সমর্থন করে। আপনি যেভাবে সুবিধা অনুভব করেন, সেই ফরম্যাটটি ব্যবহার করে আপনার স্প্রিং বুট অ্যাপ্লিকেশন কনফিগার করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...