Junior — Middle
87
Spring-те прототиптік бинді қалай анықтауға болады, ол әр сұрау кезінде жаңа объектінің экземплярын құру үшін?
Сұралған компаниялар
ITFB Group
AI-дан жауап
sobes.tech AI
В Spring для определения прототипного бина используется аннотация @Scope("prototype"). Это означает, что при каждом запросе бина из контекста Spring будет создаваться новый экземпляр объекта.
Пример:
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
@Component
@Scope("prototype")
public class MyPrototypeBean {
// поля и методы
}
Если бин объявлен с таким скоупом, то при каждом вызове applicationContext.getBean(MyPrototypeBean.class) будет возвращаться новый объект.
Важно: если прототипный бин внедряется в синглтон, то по умолчанию создается один экземпляр при создании синглтона. Чтобы получить новый экземпляр прототипного бина при каждом использовании, можно использовать ObjectFactory или Provider.