Junior — Middle
Ako sa implementujú prototypy beanov v rámci kontajnera Inversion of Control?
sobes.tech AI
Odpoveď od AI
В контейнере Inversion of Control (например, в Spring) прототипы бинов реализуются через указание scope="prototype" в конфигурации. Это значит, что при каждом запросе бина из контейнера создаётся новый экземпляр, в отличие от singleton, где создаётся один экземпляр на весь контейнер.
Пример в Spring XML:
<bean id="myBean" class="com.example.MyClass" scope="prototype"/>
Или с аннотацией:
@Component
@Scope("prototype")
public class MyClass {
// ...
}
При таком подходе контейнер не кэширует экземпляр, а создает новый при каждом вызове getBean(). Это полезно, когда нужен независимый экземпляр с собственным состоянием для каждого использования.