добавить бобов в класс, не созданный весной

1

У меня есть класс под названием FileReader, который я явно создаю каждый раз при создании нового файла. Я хотел бы иметь централизованно управляемый синглтон ExecutorService, который вставляется в FileReader каждый раз, когда я его создаю. Этот исполнительный сервис - синглтон, управляемый Spring. Мне было интересно, можно ли вводить его (используя автосогласование или что-то в этом роде) в каждом новом экземпляре FileReader, когда я его явным образом создаю (используя что-то вроде FileReader fr = new FileReader())

  • 0
    Почему бы вам не создать его с помощью new FileReader(executorService) ? Так просто, как, что.
Теги:
spring

1 ответ

1

Вы можете проверить зависимость ввода объектов домена с Spring, подход будет таким же. Тем не менее, вам нужно будет включить временное плетение для вашего проекта.

Если вы не планируете делать такие вещи очень часто, я предлагаю:

  • ручное впрыск, как @JB Nizet прокомментировал выше, или
  • определите FileReader как прототип bean-компонента и измените ваши new FileReader() вхождения new FileReader() на applicationContext.getBean("fileReader") или эквивалент. Затем вы можете вводить все, что хотите, в FileReader через "обычную" Spring. Лично я бы инкапсулировал getBean() внутри FileReaderFactory, чтобы избежать жестких зависимостей Spring в моих бизнес-классах.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню