Sobes.tech
Junior — Middle
59

Можете привести пример, когда используется область видимости бинов prototype в Spring?

Companies where asked
МТСМТС

Answer from AI

sobes.tech AI

Область видимости бина prototype в Spring означает, что каждый раз при запросе этого бина из контейнера Spring создаётся новый экземпляр.

Это полезно, когда:

  • Нужно иметь независимые объекты с собственным состоянием.
  • Объекты не должны разделять данные между собой.
  • Например, при создании объектов, представляющих сессии, задачи или временные данные.

Пример использования:

@Component
@Scope("prototype")
public class Task {
    private String description;
    // геттеры и сеттеры
}

// В другом классе
@Autowired
private ApplicationContext context;

public void createTasks() {
    Task task1 = context.getBean(Task.class);
    Task task2 = context.getBean(Task.class);
    // task1 и task2 — разные объекты
}

Таким образом, prototype scope подходит для объектов с коротким жизненным циклом, которые не должны быть синглтонами.