From 343a7432298a07be428ba3fb42434ed43606cbce Mon Sep 17 00:00:00 2001 From: eugenp Date: Sat, 25 May 2013 01:10:44 +0300 Subject: [PATCH] bean work --- .../org/baeldung/spring/config/PersistenceConfig.java | 3 +-- .../main/java/org/baeldung/spring/config/WebConfig.java | 7 +++++-- spring-all/src/main/java/org/baeldung/web/BeanA.java | 6 ++---- spring-all/src/main/java/org/baeldung/web/BeanB.java | 8 +++++++- spring-all/src/main/java/org/baeldung/web/BeanC2.java | 2 +- spring-all/src/main/java/org/baeldung/web/IBeanA.java | 5 +++++ spring-all/src/main/resources/beansInXml.xml | 4 +--- 7 files changed, 22 insertions(+), 13 deletions(-) create mode 100644 spring-all/src/main/java/org/baeldung/web/IBeanA.java diff --git a/spring-all/src/main/java/org/baeldung/spring/config/PersistenceConfig.java b/spring-all/src/main/java/org/baeldung/spring/config/PersistenceConfig.java index 078d7e6f88..4bc4739ccd 100644 --- a/spring-all/src/main/java/org/baeldung/spring/config/PersistenceConfig.java +++ b/spring-all/src/main/java/org/baeldung/spring/config/PersistenceConfig.java @@ -7,7 +7,6 @@ import javax.sql.DataSource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import org.springframework.core.env.Environment; import org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor; @@ -18,7 +17,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement; import com.google.common.base.Preconditions; -@Configuration +// @Configuration @EnableTransactionManagement @PropertySource({ "classpath:persistence-mysql.properties" }) @ComponentScan({ "org.baeldung.spring.persistence.dao", "org.baeldung.spring.persistence.service" }) diff --git a/spring-all/src/main/java/org/baeldung/spring/config/WebConfig.java b/spring-all/src/main/java/org/baeldung/spring/config/WebConfig.java index 728a890e8f..c69ef21b0c 100644 --- a/spring-all/src/main/java/org/baeldung/spring/config/WebConfig.java +++ b/spring-all/src/main/java/org/baeldung/spring/config/WebConfig.java @@ -1,5 +1,7 @@ package org.baeldung.spring.config; +import org.springframework.beans.factory.BeanFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.EnableWebMvc; @@ -10,10 +12,11 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter @ComponentScan("org.baeldung.web") public class WebConfig extends WebMvcConfigurerAdapter { + @Autowired + BeanFactory beanFactory; + public WebConfig() { super(); } - - } \ No newline at end of file diff --git a/spring-all/src/main/java/org/baeldung/web/BeanA.java b/spring-all/src/main/java/org/baeldung/web/BeanA.java index 19f1fd2023..96cc715ec7 100644 --- a/spring-all/src/main/java/org/baeldung/web/BeanA.java +++ b/spring-all/src/main/java/org/baeldung/web/BeanA.java @@ -1,16 +1,14 @@ package org.baeldung.web; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; @Component +@Transactional public class BeanA { - private IBeanC dependency; - public BeanA() { super(); } - // - } diff --git a/spring-all/src/main/java/org/baeldung/web/BeanB.java b/spring-all/src/main/java/org/baeldung/web/BeanB.java index 4dd6a2fc7e..53a3ef0b2f 100644 --- a/spring-all/src/main/java/org/baeldung/web/BeanB.java +++ b/spring-all/src/main/java/org/baeldung/web/BeanB.java @@ -1,9 +1,15 @@ package org.baeldung.web; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; @Component -public class BeanB implements IBeanB { +@Transactional +public class BeanB { + + @Autowired + private BeanA beanA; public BeanB() { super(); diff --git a/spring-all/src/main/java/org/baeldung/web/BeanC2.java b/spring-all/src/main/java/org/baeldung/web/BeanC2.java index f914384518..ed38a809cf 100644 --- a/spring-all/src/main/java/org/baeldung/web/BeanC2.java +++ b/spring-all/src/main/java/org/baeldung/web/BeanC2.java @@ -3,7 +3,7 @@ package org.baeldung.web; import org.springframework.stereotype.Component; @Component -public class BeanC2 implements IBeanB { +public class BeanC2 implements IBeanC { public BeanC2() { super(); diff --git a/spring-all/src/main/java/org/baeldung/web/IBeanA.java b/spring-all/src/main/java/org/baeldung/web/IBeanA.java new file mode 100644 index 0000000000..91d770ce73 --- /dev/null +++ b/spring-all/src/main/java/org/baeldung/web/IBeanA.java @@ -0,0 +1,5 @@ +package org.baeldung.web; + +public interface IBeanA { + // +} diff --git a/spring-all/src/main/resources/beansInXml.xml b/spring-all/src/main/resources/beansInXml.xml index 81ad0a9ecd..9cd3282179 100644 --- a/spring-all/src/main/resources/beansInXml.xml +++ b/spring-all/src/main/resources/beansInXml.xml @@ -4,8 +4,6 @@ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd"> - - - + \ No newline at end of file