Home > Java > javaTutorial > How to Inject Property Values into Spring Beans Configured via Annotations?

How to Inject Property Values into Spring Beans Configured via Annotations?

Barbara Streisand
Release: 2024-11-08 09:25:02
Original
611 people have browsed it

How to Inject Property Values into Spring Beans Configured via Annotations?

Property Injection for Spring Beans Configured via Annotations

Spring beans detected via annotations present a challenge when it comes to injecting property values. While the PropertyPlaceholderConfigurer can load properties from an external file, simply setting a bean property's value in the XML configuration won't work for these beans.

To address this, Spring 3 introduced EL support, allowing values to be injected dynamically. In particular:

Injected Value with EL Expressions

@Value("#{.} allows directly injecting the value of a property from an implicit object.
@Value("#{.} also enables injecting a property from the specified bean.
For instance, to inject the "results.max" property from an external properties file:

@Repository("personDao")
public class PersonDaoImpl extends AbstractDaoImpl implements PersonDao {

    @Resource(name = "propertyConfigurer")
    protected void setProperties(PropertyPlaceholderConfigurer ppc) {
        maxResults = ppc.getProperties().getProperty("results.max"); 
    }
}
Copy after login

EL also provides more complex options for manipulating values, retrieving bean references, and resolving placeholders.

The above is the detailed content of How to Inject Property Values into Spring Beans Configured via Annotations?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template