Ссылочный пример Spring EL bean

Ссылочный пример боба Spring EL

В Spring EL вы можете ссылаться на bean-компонент и вложенные свойства с помощью символа «dot (.)». Например, «bean.property_name».

public class Customer {

    @Value("#{addressBean.country}")
    private String country;

В приведенном выше фрагменте кода он вставляет значение свойства «country» из bean-компонента «addressBean» в текущий класс «customer», свойство «country».

Spring EL в аннотации

В следующем примере показано, как использовать SpEL для ссылки на bean-компонент, свойство bean-компонента, а также его метод.

package com.example.core;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component("customerBean")
public class Customer {

    @Value("#{addressBean}")
    private Address address;

    @Value("#{addressBean.country}")
    private String country;

    @Value("#{addressBean.getFullAddress('example')}")
    private String fullAddress;

    //getter and setter methods

    @Override
    public String toString() {
        return "Customer [address=" + address + "\n, country=" + country
                + "\n, fullAddress=" + fullAddress + "]";
    }

}
package com.example.core;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component("addressBean")
public class Address {

    @Value("Block ABC, LakeView")
    private String street;

    @Value("98700")
    private int postcode;

    @Value("US")
    private String country;

    public String getFullAddress(String prefix) {

        return prefix + " : " + street + " " + postcode + " " + country;
    }

    //getter and setter methods

    public void setCountry(String country) {
        this.country = country;
    }

    @Override
    public String toString() {
        return "Address [street=" + street + ", postcode=" + postcode
                + ", country=" + country + "]";
    }

}

Запустить его

       Customer obj = (Customer) context.getBean("customerBean");
       System.out.println(obj);

Выход

Customer [address=Address [street=Block ABC, LakeView, postcode=98700, country=US]
, country=US
, fullAddress=example : Block ABC, LakeView 98700 US]

Spring EL в XML

Смотрите эквивалентную версию в XML-файле определения компонента.



    
        
        
        
    

    
        
        
        
    

Скачать исходный код

Скачать -Spring3-EL-Bean-Reference-Example.zip (6 КБ)