В Spring Framework есть два основных типа области видимости бинов - singleton и prototype. Singleton - это область видимости, при которой Spring создает единственный экземпляр бина для всего приложения. Это означает, что при каждом запросе на получение бина будет возвращаться один и тот же объект. Singleton является областью видимости по умолчанию в Spring. Например, если определить следующий бин: @Component public class MySingletonBean {
// ... }
то Spring создаст только один экземпляр этого класса и использует его во всех местах, где потребуется этот бин.
Prototype - это область видимости, при которой Spring создает новый экземпляр бина каждый раз, когда он запрашивается. Это означает, что каждый раз, когда мы запрашиваем бин, мы получаем новый объект, а не повторно используем существующий.
Например, если определить следующий бин:
@Component @Scope(value="prototype")
public class MyPrototypeBean {
// ... } то каждый раз, когда будет запрошен этот бин, Spring создаст