Sử dụng properties trong Spring với annotation @Value

Trong bài viết này, mình sẽ giới thiệu với các bạn làm cách nào để sử dụng properties trong Spring với annotation @Value các bạn nhé!

Đầu tiên, mình sẽ tạo mới một Maven project để làm ví dụ:

Sử dụng properties trong Spring với annotation @Value

  • Spring framework dependency:

  • HelloWorld class:

  • Application class:

  • configuration.properties

  • spring.xml




Để sử dụng properties với @Value annotation, chúng ta cần khai báo các bean trong Spring sử dụng các annotation như: @Component, @Service, @Repository, @Controller,…
Trong ví dụ này, mình muốn khai báo đối tượng HelloWorld trong khung chứa của Spring và sử dụng @Value annotation để gán giá trị cho thuộc tính name của đối tượng HelloWorld này bằng giá trị của property name trong tập tin configuration.properties thì mình sẽ làm như sau:

  • Đầu tiên, mình sẽ khai báo thẻ context:component-scan trong tập tin spring.xml để enable khả năng auto component scan trong Spring cho package com.huongdanjava.springvalueanntation:

  • Cái thứ hai mình sẽ khai báo @Component annotation bên trong class HelloWorld để khởi tạo bean HelloWorld trong khung chứa của Spring:

  • Cuối cùng, mình sẽ sử dụng @Value annotation để ingest giá trị của property name trong tập tin configuration.properties vào thuộc tính name trong đối tượng HelloWorld như sau:

Ở đây, mình đã khai báo @Value annotation với giá trị là ${property_name}.

Kết quả:

Sử dụng properties trong Spring với annotation @Value



Trong trường hợp, property name không tồn tại, lỗi sau sẽ xuất hiện khi chúng ta chạy ứng dụng lên:

Để tránh lỗi này, trong trường hợp property name không tồn tại, chúng ta có thể thay thế bằng giá trị mặc định bằng cách khai báo @Value annotation như sau:

Kết quả:

Sử dụng properties trong Spring với annotation @Value

Chia sẽ bài viết này ...Share on Facebook
Facebook
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin

3 thoughts on “Sử dụng properties trong Spring với annotation @Value

Add Comment