diff --git a/spring-all/src/main/java/org/baeldung/web/BeanA.java b/spring-all/src/main/java/org/baeldung/web/BeanA.java deleted file mode 100644 index 96cc715ec7..0000000000 --- a/spring-all/src/main/java/org/baeldung/web/BeanA.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.baeldung.web; - -import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; - -@Component -@Transactional -public class BeanA { - - public BeanA() { - super(); - } - -} diff --git a/spring-all/src/main/java/org/baeldung/web/IBeanA.java b/spring-all/src/main/java/org/baeldung/web/IServiceA.java similarity index 55% rename from spring-all/src/main/java/org/baeldung/web/IBeanA.java rename to spring-all/src/main/java/org/baeldung/web/IServiceA.java index 91d770ce73..0461d5293f 100644 --- a/spring-all/src/main/java/org/baeldung/web/IBeanA.java +++ b/spring-all/src/main/java/org/baeldung/web/IServiceA.java @@ -1,5 +1,5 @@ package org.baeldung.web; -public interface IBeanA { +public interface IServiceA { // } diff --git a/spring-all/src/main/java/org/baeldung/web/ServiceA.java b/spring-all/src/main/java/org/baeldung/web/ServiceA.java new file mode 100644 index 0000000000..47afde94c8 --- /dev/null +++ b/spring-all/src/main/java/org/baeldung/web/ServiceA.java @@ -0,0 +1,24 @@ +package org.baeldung.web; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@Transactional +public class ServiceA implements IServiceA { + + @Autowired + private ServiceB serviceB; + + public ServiceA() { + super(); + } + + // + + public void testA() { + System.out.println(); + } + +} diff --git a/spring-all/src/main/java/org/baeldung/web/BeanB.java b/spring-all/src/main/java/org/baeldung/web/ServiceB.java similarity index 50% rename from spring-all/src/main/java/org/baeldung/web/BeanB.java rename to spring-all/src/main/java/org/baeldung/web/ServiceB.java index 53a3ef0b2f..65b4215cc4 100644 --- a/spring-all/src/main/java/org/baeldung/web/BeanB.java +++ b/spring-all/src/main/java/org/baeldung/web/ServiceB.java @@ -1,18 +1,24 @@ package org.baeldung.web; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; +import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -@Component +@Service @Transactional -public class BeanB { +public class ServiceB { @Autowired - private BeanA beanA; + private IServiceA serviceA; - public BeanB() { + public ServiceB() { super(); } + // + + public void testB() { + System.out.println(); + } + } diff --git a/spring-all/src/main/java/org/baeldung/web/Setup.java b/spring-all/src/main/java/org/baeldung/web/Setup.java new file mode 100644 index 0000000000..653609e006 --- /dev/null +++ b/spring-all/src/main/java/org/baeldung/web/Setup.java @@ -0,0 +1,32 @@ +package org.baeldung.web; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.ApplicationListener; +import org.springframework.context.event.ContextRefreshedEvent; +import org.springframework.stereotype.Component; + +@Component +public class Setup implements ApplicationListener { + + private boolean setupDone; + + @Autowired + IServiceA serviceA; + + @Autowired + ServiceB serviceB; + + public Setup() { + super(); + } + + // + + @Override + public final void onApplicationEvent(final ContextRefreshedEvent event) { + if (!setupDone) { + // + } + } + +}