SK
И внутри - `@autowired`ы. А с автовайредом такое дело - он их резолвит by type, либо by name, либо как там еще... То есть если даже у тебя и есть вменяемая абстракция с несколькими имплементациями, в UserServiceе придется зашить одну - по типу ли по имени или по квалифаеру - не важно. Поэтому что проку от этой абстракции - хер с ней, запилим ее таким же сервисом.
Весь энтерпрайз который я видел когда либо на спринге выглядел именно так. Что по поводу игнита - игнит все же не энтерпрайз. CollisionSpi хорош до тех пор пока стабилен. Так как игнит - фреймворк, игнитовцы могут позволить себе искусственную стабильность. Если бы игнитовцы его меняли на каждый чих, ты бы сам не рад был. Другой вопрос еще - что стоит самим игнитовцам эту стабильность поддерживать (наверно ничего, но ответить могут только сами игнитовцы).
