Added Java based configuration. Downloaded formatter.xml and reformatted
all changed files. Manually changed tab into 4 spaces in XML configuration files.
This commit is contained in:
parent
9e00c1cdff
commit
112fa1290f
35
spring-core/src/main/java/com/baeldung/setterdi/Config.java
Normal file
35
spring-core/src/main/java/com/baeldung/setterdi/Config.java
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
package com.baeldung.setterdi;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.ComponentScan;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.baeldung.setterdi.domain.Engine;
|
||||||
|
import com.baeldung.setterdi.domain.Trailer;
|
||||||
|
import com.baeldung.setterdi.domain.Transmission;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
@ComponentScan("com.baeldung.setterdi")
|
||||||
|
public class Config {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public Engine engine() {
|
||||||
|
Engine engine = new Engine();
|
||||||
|
engine.setType("v8");
|
||||||
|
engine.setVolume(5);
|
||||||
|
return engine;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public Transmission transmission() {
|
||||||
|
Transmission transmission = new Transmission();
|
||||||
|
transmission.setType("sliding");
|
||||||
|
return transmission;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public Trailer trailer() {
|
||||||
|
Trailer trailer = new Trailer();
|
||||||
|
return trailer;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,33 @@
|
|||||||
|
package com.baeldung.setterdi;
|
||||||
|
|
||||||
|
import org.springframework.context.ApplicationContext;
|
||||||
|
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
||||||
|
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||||
|
|
||||||
|
import com.baeldung.setterdi.Config;
|
||||||
|
import com.baeldung.setterdi.domain.Car;
|
||||||
|
|
||||||
|
public class SpringRunner {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Car toyota = getCarFromXml();
|
||||||
|
|
||||||
|
System.out.println(toyota);
|
||||||
|
|
||||||
|
toyota = getCarFromJavaConfig();
|
||||||
|
|
||||||
|
System.out.println(toyota);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Car getCarFromJavaConfig() {
|
||||||
|
ApplicationContext context = new AnnotationConfigApplicationContext(Config.class);
|
||||||
|
|
||||||
|
return context.getBean(Car.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Car getCarFromXml() {
|
||||||
|
ApplicationContext context = new ClassPathXmlApplicationContext("setterdi.xml");
|
||||||
|
|
||||||
|
return context.getBean(Car.class);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package com.baeldung.setterdi.domain;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class Car {
|
||||||
|
private Engine engine;
|
||||||
|
private Transmission transmission;
|
||||||
|
private Trailer trailer;
|
||||||
|
|
||||||
|
public Car() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public void setEngine(Engine engine) {
|
||||||
|
this.engine = engine;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public void setTransmission(Transmission transmission) {
|
||||||
|
this.transmission = transmission;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public void setTrailer(Trailer trailer) {
|
||||||
|
this.trailer = trailer;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return String.format("Engine: %s Transmission: %s Trailer: %s", engine, transmission, trailer);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package com.baeldung.setterdi.domain;
|
||||||
|
|
||||||
|
public class Engine {
|
||||||
|
private String type;
|
||||||
|
private int volume;
|
||||||
|
|
||||||
|
public Engine() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(String type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVolume(int volume) {
|
||||||
|
this.volume = volume;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return String.format("%s %d", type, volume);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
package com.baeldung.setterdi.domain;
|
||||||
|
|
||||||
|
public class Trailer {
|
||||||
|
public Trailer() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Trailer";
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,17 @@
|
|||||||
|
package com.baeldung.setterdi.domain;
|
||||||
|
|
||||||
|
public class Transmission {
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
public Transmission() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(String type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return String.format("%s", type);
|
||||||
|
}
|
||||||
|
}
|
20
spring-core/src/main/resources/constructordi.xml
Normal file
20
spring-core/src/main/resources/constructordi.xml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<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-3.0.xsd">
|
||||||
|
|
||||||
|
<bean id="toyota" class="com.baeldung.constructordi.domain.Car">
|
||||||
|
<constructor-arg index="0" ref="engine" />
|
||||||
|
<constructor-arg index="1" ref="transmission" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
<bean id="engine" class="com.baeldung.constructordi.domain.Engine">
|
||||||
|
<constructor-arg index="0" value="v4" />
|
||||||
|
<constructor-arg index="1" value="2" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
<bean id="transmission" class="com.baeldung.constructordi.domain.Transmission">
|
||||||
|
<constructor-arg value="sliding" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
</beans>
|
24
spring-core/src/main/resources/setterdi.xml
Normal file
24
spring-core/src/main/resources/setterdi.xml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<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-3.0.xsd">
|
||||||
|
|
||||||
|
<bean id="toyota" class="com.baeldung.setterdi.domain.Car">
|
||||||
|
<property name="engine" ref="engine" />
|
||||||
|
<property name="transmission" ref="transmission" />
|
||||||
|
<property name="trailer" ref="trailer" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
<bean id="engine" class="com.baeldung.setterdi.domain.Engine">
|
||||||
|
<property name="type" value="v4" />
|
||||||
|
<property name="volume" value="2" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
<bean id="transmission" class="com.baeldung.setterdi.domain.Transmission">
|
||||||
|
<property name="type" value="sliding" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
<bean id="trailer" class="com.baeldung.setterdi.domain.Trailer">
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
</beans>
|
Loading…
x
Reference in New Issue
Block a user