application.properties এবং application.yml ফাইলের ব্যবহার

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

272

Spring Boot অ্যাপ্লিকেশনে কনফিগারেশন সেটিংস সংরক্ষণের জন্য দুটি সাধারণ ফাইল ব্যবহৃত হয়: application.properties এবং application.yml। উভয় ফাইলই একই কাজ করে, তবে তাদের সিনট্যাক্স এবং ফরম্যাটে কিছু পার্থক্য রয়েছে। এই ফাইলগুলোতে অ্যাপ্লিকেশনের কনফিগারেশন, প্রোপার্টি, ডেটাবেস সেটিংস, সিকিউরিটি কনফিগারেশন এবং অন্যান্য প্রয়োজনীয় কনফিগারেশন রাখা হয়।


application.properties ফাইল

application.properties একটি সাধারণ প্রপার্টি ফাইল যেখানে কনফিগারেশন স্ট্রিংয়ের মাধ্যমে প্রতিটি প্যারামিটার সংরক্ষিত থাকে। এটি ক্লাসিক Java properties ফাইলের মতই কাজ করে।

application.properties ফাইলের কনফিগারেশন উদাহরণ

# Database Configuration
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true

# Server Configuration
server.port=8080
server.servlet.context-path=/myapp

# Logging Configuration
logging.level.org.springframework=INFO
logging.level.com.example=DEBUG

# Custom Configuration
app.name=My Spring Boot Application
app.version=1.0.0

ব্যাখ্যা:

  • spring.datasource: ডেটাবেস কানেকশন সেটিংস যেমন URL, ইউজারনেম এবং পাসওয়ার্ড।
  • spring.jpa: Hibernate বা JPA কনফিগারেশন।
  • server.port: সার্ভারের পোর্ট নম্বর কনফিগারেশন।
  • logging.level: লগিং লেভেল কনফিগারেশন (INFO, DEBUG, ERROR ইত্যাদি)।
  • Custom Configuration: অ্যাপ্লিকেশনের কাস্টম প্যারামিটার যেমন অ্যাপের নাম এবং ভার্সন।

application.yml ফাইল

application.yml YAML (YAML Ain't Markup Language) ফরম্যাটে লেখা একটি কনফিগারেশন ফাইল। এটি পঠনযোগ্যতা এবং স্ট্রাকচারড ডেটার জন্য অধিক সুবিধাজনক। YAML ফাইলগুলো ইনডেন্টেশন এবং হায়ারার্কির মাধ্যমে প্যারামিটারগুলো সংরক্ষণ করে।

application.yml ফাইলের কনফিগারেশন উদাহরণ

# Database Configuration
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb
    username: root
    password: password
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true

# Server Configuration
server:
  port: 8080
  servlet:
    context-path: /myapp

# Logging Configuration
logging:
  level:
    org.springframework: INFO
    com.example: DEBUG

# Custom Configuration
app:
  name: My Spring Boot Application
  version: 1.0.0

ব্যাখ্যা:

  • spring.datasource: ডেটাবেস কনফিগারেশন এর মতোই application.properties এর মতো YAML ফরম্যাটে কনফিগার করা হয়েছে।
  • server.port: YAML স্টাইলে পোর্ট নম্বর এবং কনটেক্সট-পথ।
  • logging.level: লগিং লেভেল কনফিগারেশন একইভাবে YAML ফরম্যাটে।
  • Custom Configuration: কাস্টম প্যারামিটার app.name এবং app.version YAML স্টাইলে।

application.properties এবং application.yml এর মধ্যে পার্থক্য

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

কেন application.properties এবং application.yml ব্যবহার করা হয়?

১. কনফিগারেশন এক্সটার্নালাইজেশন (Externalized Configuration)

এই ফাইলগুলোর মাধ্যমে অ্যাপ্লিকেশনের কনফিগারেশন এক্সটার্নালাইজড করা হয়, অর্থাৎ কোডের বাইরে কনফিগারেশন রাখা হয়, যাতে কোডে কোনো পরিবর্তন না করে সেটিংস পরিবর্তন করা যায়। এতে অ্যাপ্লিকেশনটি পরিবেশ (environment) অনুযায়ী কনফিগার করা সহজ হয়।

২. পঠনযোগ্যতা এবং রক্ষণাবেক্ষণ

YAML ফাইলের স্ট্রাকচার এবং ইনডেন্টেশন পদ্ধতি কনফিগারেশনকে আরও পঠনযোগ্য করে তোলে। বড় প্রকল্পের জন্য YAML ফাইল ব্যবহারে সহজে কনফিগারেশন বোঝা যায়।

৩. ডিফল্ট কনফিগারেশন প্রদান

Spring Boot অ্যাপ্লিকেশন কনফিগারেশন প্রোপার্টিজের জন্য কিছু ডিফল্ট মান প্রদান করে, যেমন ডেটাবেস সেটিংস, সার্ভার পোর্ট, লগিং লেভেল ইত্যাদি, যা ডেভেলপারদের সময় সাশ্রয় করে।

৪. অ্যাপ্লিকেশন সেটিংস ব্যবস্থাপনা

Spring Boot অ্যাপ্লিকেশন কনফিগারেশন ফাইল ব্যবহারের মাধ্যমে বিভিন্ন এনভায়রনমেন্ট (ডেভেলপমেন্ট, টেস্টিং, প্রোডাকশন) অনুযায়ী অ্যাপ্লিকেশনের সেটিংস কনফিগার করা যায়।


সারাংশ

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

Content added By
Promotion

Are you sure to start over?

Loading...