Bean Method invocation using spEL
![]() |
|
Step 1 : Create the POJO
File : Customer.java
package com.simpleCodeStuffs.spEL;
public class Customer {
private String name;
private double bill;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getBill() {
return bill;
}
public void setBill(double bill) {
this.bill = bill;
}
}
File : Amount.java
package com.simpleCodeStuffs.spEL;
public class Amount {
public double billAmount() {
return 100.9;
}
}
The scenario is such that the value of bill attribute of ‘Customer’ depends on the value returned from ‘billAmount()’ method of ‘Amount’
Step 2 : Create the xml file
File : elBeans.xml
Note here, method invocation is done on Amount class through the bean as
spEL #{amount.billAmount()} and the returned value is set to bill using injection.
Step 3 : Create the main class
File : MainClass.java
package com.simpleCodeStuffs.spEL;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainClass {
public static void main(String[] args) {
ApplicationContext context =
new ClassPathXmlApplicationContext("elBeans.xml");
Amount bill = (Amount) context.getBean("amount");
Customer customer = (Customer) context.getBean("cust");
System.out.println("Customer name: " + customer.getName());
System.out.println("Bill amount: " + customer.getBill());
}
}
Step 4 :
The output is

![]() |
|
