package conference; import conference.repository.HibernateSpeakerRepositoryImpl; import conference.repository.SpeakerRepository; import conference.service.SpeakerService; import conference.service.SpeakerServiceImpl; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Scope; @Configuration public class AppConfig { @Bean(name = "speakerService") @Scope(value = BeanDefinition.SCOPE_SINGLETON) public SpeakerService getSpeakerService() { return new SpeakerServiceImpl(getSpeakerRepository()); } @Bean(name = "speakerRepository") public SpeakerRepository getSpeakerRepository() { return new HibernateSpeakerRepositoryImpl(); } }