Spring Java Tutorial

File: context.xml


       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.xsd">
    
    
    
    
    
    

File: Main.java

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
public class Main {
  public static void main(String[] args) {
    XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("context.xml"));
    System.out.println("byName:");
    System.out.println(bf.getBean("byName"));
    System.out.println("byType:");
    System.out.println(bf.getBean("byType"));
    System.out.println("constructor:");
    System.out.println(bf.getBean("constructor"));
    System.out.println("autodetect:");
    System.out.println(bf.getBean("autodetect"));
  }
}
class A {
  @Override
  public String toString() {
    return getClass().getName();
  }
}
class B {
  @Override
  public String toString() {
    return getClass().getName();
  }
}
class MyClass {
  private B B;
  private B B2;
  private A A;
  public MyClass() {
    System.out.println("MyClass()");
  }
  public MyClass(B B) {
    System.out.println("MyClass(B)");
    this.B = B;
  }
  public MyClass(B B, A A) {
    System.out.println("MyClass(B, A)");
    this.B = B;
    this.A = A;
  }
  public void setDependency(A A) {
    System.out.println("MyClass.setDependency(A)");
    this.A = A;
  }
  public void setB(B B) {
    System.out.println("MyClass.setB(B)");
    this.B = B;
  }
  public void setB2(B B2) {
    System.out.println("MyClass.setB2(B)");
    this.B2 = B2;
  }
  public void setA(A A) {
    System.out.println("MyClass.setA(A)");
    this.A = A;
  }
  @Override
  public String toString() {
    final StringBuilder sb = new StringBuilder();
    sb.append("MyClass");
    sb.append("{B=").append(B);
    sb.append(", B2=").append(B2);
    sb.append(", A=").append(A);
    sb.append('}');
    return sb.toString();
  }
}