Task - Spring - FooBar App #30
Replies: 32 comments 2 replies
BeansFoo.javapackage com.spring.assignment.beans;
public class Foo {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Foo(String name) {
this.name = name;
}
public Foo() {
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar.javapackage com.spring.assignment.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public Bar() {
super();
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + "]";
}
}
Driverpackage com.spring.assignment;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.assignment.beans.Bar;
import com.spring.assignment.beans.Foo;
public class Application {
public static void main(String[] args) {
// TODO Auto-generated method stub
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println("Welcome to spring Assignment");
Bar bar = context.getBean("bar", Bar.class);
System.out.println(bar);
System.out.println(bar.getFoo());
// getting the bean only with id
Foo foo = (Foo) context.getBean("foo");
System.out.println(foo);
context.close();
}
}Application Context Configuration<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.assignment.beans.Foo">
<constructor-arg index="0" value="ABC"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.assignment.beans.Bar">
<constructor-arg type="String" value="GK"></constructor-arg>
<constructor-arg type="int" value="101"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans>screenshot |
|
BeansFoo.javapublic class Foo {
private String name;
public Foo() {
}
public Foo(String name) {
this.setName(name);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return new StringBuilder().append("Foo [name=").append(name).append("]").toString();
}
}Bar.javapublic class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
}
public Bar(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return new StringBuilder().append("Bar [name=").append(name).append(", age=").append(age).append(", foo=")
.append(foo).append("]").toString();
}
public void printDataVar() {
System.out.println(new StringBuilder().append("\n First Name: ").append(this.name).append("\n Last Name: ")
.append(this.foo.getName()).append("\n Age: ").append(this.age).append("\n"));
}
}
Driverpublic class Application {
public static void main(String[] args) {
System.out.println("Application.main() Started");
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
Bar bar = context.getBean("bar", Bar.class);
bar.printDataVar();
context.close();
System.out.println("Application.main() Ended");
}
}
Application Context Configuration<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.Foo" >
<constructor-arg index="0" value="Muralidaran" ></constructor-arg>
</bean>
<bean id="bar" class="com.spring.foobar.Bar">
<constructor-arg type="String" value="Visweshwaran"></constructor-arg>
<constructor-arg type="int" value="26"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans>Screenshot |
Foo.javapackage com.spring.foo;
public class Foo {
private String name;
public Foo() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Foo(String name) {
this.name = name;
}
public void greetUser() {
System.out.println("Name"+" "+this.name);
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
} |
Bar.javapackage com.spring.foo;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
}
public Bar(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public void greetUser() {
System.out.println("Personal Details"+" "+this.name+" "+this.age);
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + "]";
}
} |
Driverpackage com.spring.foo.application;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foo.Bar;
import com.spring.foo.Foo;
public class Application {
public static void main(String[] args) {
// TODO Auto-generated method stub
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println("Spring Application Started!");
Bar bar = context.getBean("bar", Bar.class);
bar.greetUser();
Foo foo = context.getBean("foo", Foo.class);
foo.greetUser();
context.close();
}
} |
Application Context Config<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"> <!-- bean definitions here -->
<bean id="foo" class="com.spring.foo.Foo">
<constructor-arg type="java.lang.String" value="Kalai"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.foo.Bar">
<constructor-arg type="java.lang.String" value="Kalai"></constructor-arg>
<constructor-arg type="int" value="25"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans> |
BeansFoo Classpackage com.spring.foobar;
public class Foo {
private String name;
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar Classpackage com.spring.foobar;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
}
public Bar(String name, int age, Foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}Driverpackage com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Application {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println("our Spring App");
Foo fooObj = context.getBean("foo", Foo.class);
Bar barObj = context.getBean("bar", Bar.class);
barObj.setFoo(fooObj);
System.out.println(barObj);
System.out.println(fooObj);
context.close();
}
}Application Context Configuration<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id = "foo" class = "com.spring.foobar.Foo">
<constructor-arg index = "0" value = "Anandhi"></constructor-arg>
</bean>
<bean id = "bar" class = "com.spring.foobar.Bar">
<property name = "age" value = "24"></property>
<property name = "name" value = "Anu"></property>
<property name = "foo" ref = "foo"></property>
</bean>
</beans>Screenshot |
|
###Beans package com.spring.foobar.beans; public class Bar { } ##Foo public class Foo { } ##Driver import org.springframework.context.support.AbstractApplicationContext; import com.spring.foobar.beans.Bar; public class Application { } ##ApplicationContext.xml |
|
public class Bar {
String name;
int age;
Foo foo;
public Bar() {
super();
}
public Bar(String name, int age, Foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Boo [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}
``Foo package com.spring.foobar;
public class Foo {
String name;
public Foo() {
super();
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "[name=" + name + "]";
}
}applicationContext.xml <beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id = "foo" class = "com.spring.foobar.Foo">
<constructor-arg index = "0" value = "Thiru"></constructor-arg>
</bean>
<bean id = "bar" class = "com.spring.foobar.Bar">
<property name = "age" value = "23"></property>
<property name = "name" value = "Poorani"></property>
<property name = "foo" ref = "foo"></property>
</bean>
</beans>Driver public class Application {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
Foo foo= context.getBean("foo", Foo.class);
Bar bar = context.getBean("bar", Bar.class);
bar.setFoo(foo);
System.out.println("My Details :"+bar);
System.out.println("Foo :"+foo);
context.close();
}
} |
Foopackage com.spring.foobar.beans;
public class Foo {
private String name;
public Foo() {
super();
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Barpackage com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
super();
}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}applicationContext.xml<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="Sample Foo Name"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg type="int" value="32" />
<constructor-arg type="java.lang.String" value="Manish Malhotra" />
<property name="foo" ref="foo"></property>
</bean>
</beans>Application.javapackage com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class Application {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); //Launcehs the application
System.out.println("Foobar Application Demo");
Foo f = context.getBean("foo",Foo.class);
Bar b = context.getBean("bar",Bar.class);
System.out.println(f);
System.out.println(b);
context.close(); //Closing the context
}
}
|
BeanFoo Beanpackage com.spring.foobar;
public class Foo {
private String name;
public Foo() {
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar Beanpackage com.spring.foobar;
public class Bar {
private Foo foo;
private String name;
private int age;
public Bar() {}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Bar [foo=" + foo + ", name=" + name + ", age=" + age + "]";
}
}Driver classApplication.java
package com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Application {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
Foo foo = context.getBean("foo",Foo.class);
Bar bar = context.getBean("bar",Bar.class);
bar.setFoo(foo);
System.out.println("Printing Foo bean : "+foo);
System.out.println("Pring Bar bean : "+bar);
context.close();
}
}Application Context XML<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<!-- bean definitions go here -->
<bean id="foo" class="com.spring.foobar.Foo">
<constructor-arg index="0" value="testFoo"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.foobar.Bar">
<constructor-arg index="0" value="testBar"></constructor-arg>
<constructor-arg index="1" value="26"></constructor-arg>
</bean>
</beans> |
|
applicationContext.xml <beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="Thandapani"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg type="int" value="24"></constructor-arg>
<constructor-arg type="java.lang.String" value="Kanimozhi"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans> Foo.java package com.spring.foobar.beans;
public class Foo{
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Foo() {}
public Foo(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo[LastName="+ name +"]";
}
}Bar.java package com.spring.foobar.beans;
import com.spring.foobar.beans.Foo;
public class Bar{
private String name;
private int age;
private Foo foo;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public Foo getFoo() {
return foo;
}
//Constructors
public Bar() {};
public Bar(String name,int age) {
this.name = name;
this.age = age;
}
public void processFooName() {
System.out.println("Name in Injected Foo is:"+foo.getName());
}
@Override
public String toString() {
return "Bar[age="+age+" ,foo="+foo+",FirstName="+name+"]";
}
public void printData() {
System.out.println(new StringBuilder().append("\n First Name: ").append(this.name).append("\n Last Name: ")
.append(this.foo.getName()).append("\n Age: ").append(this.age).append("\n"));
}
}Application.java package com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Foo;
import com.spring.foobar.beans.Bar;
public class Application {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");//Launches the Application
System.out.println("Our Spring Demo Work Starts!!");
Foo foo = context.getBean("foo",Foo.class);
System.out.println(foo);
Bar bar = context.getBean("bar",Bar.class);
System.out.println(bar);
bar.printData();
context.close();//Shut Down the App
}
} |
|
package com.spring.foo; public class Foo { } |
|
package com.spring.bar; import com.spring.foo.Foo; public class Bar { } |
package com.spring.foobar.beans;
public class Foo {
private String `Name;`
public Foo() {
super();
}
public Foo(String name) {
super();
Name = name;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
@Override
public String toString() {
return "Foo [Name=" + Name + "]";
}
}Bar package com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
super();
}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + "]";
}
}Application.java package com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class Application {
public static void main(String[] args) {
// TODO Auto-generated method stub
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
context.start();
System.out.println("Our Spring apps Works!");
Bar bar = context.getBean("Bar", Bar.class);
System.out.println(bar);
Foo fo = context.getBean("Foo",Foo.class);
System.out.println(fo);
context.close();
}
}applicationContext.xml <beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="Foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="sankalpFoo"></constructor-arg >
</bean>
<bean id="Bar" class="com.spring.foobar.beans.Bar">
<constructor-arg index="0" value="sankalpBar"></constructor-arg >
<constructor-arg index="1" value="21"></constructor-arg >
</bean>
</beans>

|
Main ClassFooBarXML File SS@akash-coded Sir, I've got errors but fixed them after seeing the previous problem, XML File-based issue I've. |
|
https://github.com/harsha916/newFooBar |
Foopackage com.spring.foobar;
public class foo {
private String name;
public foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "foo [name=" + name + "]";
}
}barpackage com.spring.foobar;
public class bar {
private String name;
private int age;
private foo foo;
public bar(String name, int age, com.spring.foobar.foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public foo getFoo() {
return foo;
}
public void setFoo(foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}driverpackage com.spring.main;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.bar;
import com.spring.foobar.foo;
public class Driver {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Our project runs");
AbstractApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
System.out.println(context.getBean("foo1",foo.class));
System.out.println(context.getBean("bar1",bar.class));
context.close();
}
}beans.xml<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo1" class="com.spring.foobar.foo">
<constructor-arg index="0" value="Gayatri"></constructor-arg >
</bean>
<bean id="bar1" class="com.spring.foobar.bar">
<constructor-arg index="0" value="Gayattri"></constructor-arg >
<constructor-arg index="1" value="22"></constructor-arg >
<constructor-arg index="2" value="foo"></constructor-arg >
</bean>
</beans>Screenshot |
driver classpackage com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class discussion30 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Our first Spring project runs!");
AbstractApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
System.out.println(context.getBean("foo", Foo.class));
System.out.println(context.getBean("bar", Bar.class));
context.close();
}
}Foo.classpackage com.spring.foobar.beans;
public class Foo {
private String name;
public Foo() {
super();
// TODO Auto-generated constructor stub
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar.classpackage com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
super();
// TODO Auto-generated constructor stub
}
public Bar(String name, int age, Foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
} |
DRIVER CLASSpackage com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class FooBar {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println(context.getBean("foo", Foo.class));
System.out.println(context.getBean("bar", Bar.class));
context.close();
}
}FOOpackage com.spring.foobar.beans;
public class Foo
{
private String name;
public Foo() {
super();
// TODO Auto-generated constructor stub
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}BARpackage com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
super();
// TODO Auto-generated constructor stub
}
public Bar(String name, int age, Foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}XML<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="John"></constructor-arg >
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg index="0" value="John"></constructor-arg >
<constructor-arg index="1" value="50"></constructor-arg >
<constructor-arg index="2" ref="foo"></constructor-arg >
</bean>
</beans> |
Foo classpackage com.spring.foobar.beans;
public class foo {
String name;
public foo() {
super();
}
public foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "foo [name=" + name + "]";
}
}Bar classpackage com.spring.foobar.beans;
public class bar {
private String name;
private int age;
private foo foo;
public bar() {
super();
}
public bar(String name, int age, foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public foo getFoo() {
return foo;
}
public void setFoo(foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}XML file<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.foo">
<constructor-arg index="0" value="Riya"></constructor-arg >
</bean>
<bean id="bar" class="com.spring.foobar.beans.bar">
<constructor-arg index="0" value="Riya"></constructor-arg >
<constructor-arg index="1" value="21"></constructor-arg >
<constructor-arg index="2" ref="foo"></constructor-arg >
</bean>
</beans>Driver Classpackage com.spring.foobar;
import com.spring.foobar.beans.foo;
import com.spring.foobar.beans.bar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class SpringFooBarApp {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
System.out.println(context.getBean("foo", foo.class));
System.out.println(context.getBean("bar", bar.class));
context.close();
}
}Output |
|
Foo.class Bar.class Driver Class XML |
|
DRIVER CLASS package com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class d30 {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
System.out.println(context.getBean("foo", Foo.class));
System.out.println(context.getBean("bar", Bar.class));
context.close();
}
}XML File <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="ABC"></constructor-arg >
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg index="0" value="ABC"></constructor-arg >
<constructor-arg index="1" value="24"></constructor-arg >
<constructor-arg index="2" ref="foo"></constructor-arg >
</bean>
</beans>Foo.java package com.spring.foobar.beans;
public class Foo
{
private String name;
public Foo() {
super();
// TODO Auto-generated constructor stub
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar.java package com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
super();
// TODO Auto-generated constructor stub
}
public Bar(String name, int age, Foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}screenshot |
package com.spring.foobar.beans;
public class Foo {
private String name;
public Foo() {}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}
package com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}
package com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class FoobarApp {
public static void main(String[] args) {
// TODO Auto-generated method stub
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println("Spring foobar app runs!");
Foo f = (Foo)context.getBean("foo");
System.out.println("Getting bean by ID: "+ f);
Bar b = context.getBean("bar", Bar.class);
System.out.println(b);
System.out.println("Using getFoo(): "+b.getFoo());
context.close();
}} <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo" scope="prototype">
<constructor-arg index="0" value="Riya" />
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg type="int" value="26" />
<constructor-arg type="java.lang.String" value="Aman" />
<property name="foo" ref="foo"/>
</bean>
</beans> |
|
driver class package com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.*;
public class Application {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("foo bar project");
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
// System.out.println(context.getBean("foo", Foo.class));
// System.out.println(context.getBean("bar", Bar.class));
Bar bar = context.getBean("bar", Bar.class);
System.out.println(bar);
System.out.println(bar.getFoo());
Foo foo = (Foo) context.getBean("foo");
System.out.println(foo);
context.close();
}
}foo class package com.spring.foobar.beans;
public class Foo {
private String name;
public Foo() {
super();
// TODO Auto-generated constructor stub
}
public Foo(String name) {
super();
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}bar class package com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
super();
// TODO Auto-generated constructor stub
}
public Bar(String name, int age, Foo foo) {
super();
this.name = name;
this.age = age;
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
}xml file <beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="jack"></constructor-arg >
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg index="0" value="jill"></constructor-arg >
<constructor-arg index="1" value="17"></constructor-arg >
<constructor-arg index="2" ref="foo"></constructor-arg >
</bean>
</beans> |
BeansBar.javapackage com.spring.demo.beans;
public class Bar
{
private String name;
private int age;
private Foo foo;
public Bar()
{
}
public Bar(String name, int age)
{
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder();
builder.append("Bar [name=");
builder.append(name);
builder.append(", age=");
builder.append(age);
builder.append(", foo=");
builder.append(foo);
builder.append("]");
return builder.toString();
}
public void print()
{
System.out.println(new StringBuilder().append("\n Full Name:").append(this.name).append("\n Stage Name:").append(this.foo.getName()).append("\n Age:").append(this.age).append("\n"));
}
}Foo.javapackage com.spring.demo.beans;
public class Foo
{
private String name= null;
public Foo()
{
}
public Foo(String name)
{
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}SpringAppDemoDriverpackage com.spring.demo;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.demo.beans.Bar;
/**
* @author Nikhil
*
*/
public class SpringAppDemoDriver {
/**
* @param args
*/
public static void main(String[] args)
{
AbstractApplicationContext context= new ClassPathXmlApplicationContext("application-context-config.xml");
System.out.println("**********Spring App Demo version Started.**********");
Bar bar =context.getBean("bar", Bar.class);
bar.print();
context.close();
System.out.println("**********Spring App Demo version Ended.**********");
}
}#application-context-config.xml <?xml version="1.0" encoding="UTF-8"?>
<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
https://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="foo" class="com.spring.demo.beans.Foo" scope="prototype">
<constructor-arg index="0" value="Nikzone"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.demo.beans.Bar">
<constructor-arg type="java.lang.String" value="Nikhil Rode"></constructor-arg>
<constructor-arg type="int" value="26"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans>Screenshots |
BeansFoo.javapackage com.spring;
public class Foo {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Foo(String name) {
super();
this.name = name;
}
public Foo() {
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar.javapackage com.spring;
public class Bar {
private String name;
private int age;
private Foo foo;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public Bar() {
super();
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + "]";
}
}DriverDriver.javapackage com.spring;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Driver {
public static void main(String[] args) {
AbstractApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
System.out.println("Spring Application started...");
Foo foo = (Foo) context.getBean("foo");
System.out.println(foo);
Bar bar = context.getBean("bar", Bar.class);
System.out.println(bar);
System.out.println("Spring Application ended...");
context.close();
}
}
Application Context Configurationbeans.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
https://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="foo" class="com.spring.Foo">
<constructor-arg index="0" value="Atharv"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.Bar">
<constructor-arg type="String" value="Chavan"></constructor-arg>
<constructor-arg type="int" value="50"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans>Screenshots |
BeansFoo.javapackage com.spring.foobar.beans;
public class Foo {
private String name;
public Foo() {
}
public Foo(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Foo [name=" + name + "]";
}
}Bar.javapackage com.spring.foobar.beans;
public class Bar {
private String name;
private int age;
private Foo foo;
public Bar() {
}
public Bar(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
@Override
public String toString() {
return "Bar [name=" + name + ", age=" + age + ", foo=" + foo + "]";
}
}Driver ClassFoobarAppDriver.javapackage com.spring.foobar;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.foobar.beans.Bar;
import com.spring.foobar.beans.Foo;
public class FoobarAppDriver {
public static void main(String[] args) {
//Instantiating the spring IOC container.
AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContextConfig.xml");
System.out.println("My spring application has been started");
//getting the bean named 'foo' created by spring container and printing the data members.
Foo f = context.getBean("foo",Foo.class);
System.out.println(f);
//getting the bean named 'bar' created by spring container and printing the data members.
Bar b = context.getBean("bar",Bar.class);
System.out.println(b);
}
}Application Context Configuration<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="foo" class="com.spring.foobar.beans.Foo">
<constructor-arg index="0" value="Kavin"></constructor-arg>
</bean>
<bean id="bar" class="com.spring.foobar.beans.Bar">
<constructor-arg type="String" value="Kumar"></constructor-arg>
<constructor-arg type="int" value="101"></constructor-arg>
<property name="foo" ref="foo"></property>
</bean>
</beans>Screenshots |














Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Create a Spring application by adding the Spring external JARs manually.
The application will be named
spring-foobar-appand it will have a main packagecom.spring.foobar. Your code files should be present within the main package.Create an XML-schema-based configuration file named
applicationContext.xmldirectly under thesrcfolder.Create two Bean classes -
FooandBar. The classFoowill have anamedata member of typeString. TheBarclass will have three data members:String name,int age, and a dependency (object reference)Foo foo. The classes will have constructors, accessors, and mutators, and overrides thetoString()method.Write bean definitions for the two Bean classes in
applicationContext.xmland initialize the data members.Demonstrate the working of the application in the driver class
Application.All reactions