Home Tutorial Spring Spring3 Ioc Excluding a bean from autowiring in spring.

 
 

Excluding a bean from autowiring in spring.
Posted on: August 27, 2010 at 12:00 AM
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

Related Tags for Excluding a bean from autowiring in spring.:


Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.