Назад к вопросам
Junior — Middle
66
Каким образом реализовать паттерн Singleton с использованием возможностей Spring Framework?
Ответ от нейросети
sobes.tech AI
В Spring Framework паттерн Singleton реализуется по умолчанию для бинов. Это значит, что если вы объявляете компонент с помощью аннотаций @Component, @Service, @Repository или через XML-конфигурацию, то Spring создаст единственный экземпляр этого бина и будет использовать его везде, где он требуется.
Пример:
@Service
public class MySingletonService {
public void doSomething() {
System.out.println("Singleton service is working");
}
}
При внедрении этого сервиса в другие компоненты через @Autowired вы всегда получите один и тот же экземпляр.
Если нужно явно указать скоуп, можно использовать аннотацию @Scope("singleton"), но это не обязательно, так как singleton — скоуп по умолчанию.
Таким образом, Spring берет на себя управление жизненным циклом и гарантирует, что бин будет синглтоном в пределах контекста приложения.