Share on Google+Share on Google+

Excluding a bean from autowiring in spring.

Advertisement
In this tutorial you will learn how to exclude a bean from autowiring in spring.

Excluding a bean from autowiring

In this tuorial you will see how to exclude bean from autowiring. The autowire-candidate attribute is set in the <bean/> element and when it is set to false the container excludes that specific bean from autowiring.

College.java

package spring.exclude.autwiring;

import org.springframework.beans.factory.annotation.Autowired;

public class College {

  private Student student1;
  private String registration;
  private String year;

  @Autowired
  public void setStudent1(Student student) {
    this.student1 = student;
  }

  public String getRegistration() {
    return registration;
  }

  public void setRegistration(String registration) {
    this.registration = registration;
  }

  public String getYear() {
    return year;
  }

  public void setYear(String year) {
    this.year = year;
  }

  @Override
  public String toString() {
    return "College [registration=" 
+ registration + ", Student="
        + student1 + ",year=" + year + "]";
  }

}

Student.java

package spring.exclude.autwiring;

public class Student {
  private String age;
  private String name;
  private String address;

  public String getAge() {
    return age;
  }

  public void setAge(String age) {
    this.age = age;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public String getAddress() {
    return address;
  }

  public void setAddress(String address) {
    this.address = address;
  }

  @Override
  public String toString() {
    return "Student [name=" + name + ", age=" + age +
 
",address=" + address
        "]";
  }

}

AutowireMain.java

package spring.exclude.autwiring;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class AutowireMain {
  public static void main(String[] args) {
    BeanFactory beanfactory = new ClassPathXmlApplicationContext(
        "context.xml");
    College coll = (Collegebeanfactory.getBean("college5");
    System.out.println(coll);
  }
}

context.xml

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
 
<!-- exclude auto-Wiring -->

<bean id="college5" 
class="spring.exclude.autwiring.College" autowire-candidate="false">
    <property name="registration" value="BL001" />
    <property name="year" value="2001" />
</bean>

<bean id="student5" class="spring.exclude.autwiring.Student"  >
  <property name="address" value="Delhi" />
  <property name="age" value="22" />
  <property name="name" value="Raj" />
</bean>  

<!-- End -->

</beans>

When you run this application it will display output as shown below:


College [registration=BL001, Student=null,year=2001]

Download this example code

Advertisements

Posted on: August 27, 2010 If you enjoyed this post then why not add us on Google+? Add us to your Circles

Share this Tutorial Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.