У меня есть настройка с несколькими единицами сохранения, но проблема в том, что я предпочел бы иметь значение по умолчанию, а не явно объявлять одно или другое. Когда я захочу «другой», я прямо попрошу об этом. Когда я хочу использовать по умолчанию, я хочу сделать то же самое, как если бы у меня был только один PU.
Я попытался просто установить JpaPersistModule внутри PrivateModule, но это ничего не изменило. Если я привязываюсь к аннотации «по умолчанию» и пытаюсь выполнить повторную привязку без классификатора «annotatedWith», я получаю ошибку повторной привязки.
Это возможно? Я считаю, что с эквивалентом в CDI я могу ввести точку впрыска, чтобы посмотреть на нее и принять решение на месте. Мне еще предстоит найти эквивалент в guice, но он должен быть.
С точки зрения кода, это то, что у меня есть (но не хочу):
@Inject
public SomethingService(@Primary Repository repository)
@Inject
public SomethingElseService(@Secondary Repository repository)
Вместо этого я хочу это:
@Inject
public SomethingService(Repository repository)
@Inject
public SomethingElseService(@Secondary Repository repository)