Это полностью вопрос предпочтения.
Весна хмурится при инжекции конструктора или, по крайней мере, используется для этого, потому что, таким образом, появляются круговые зависимости, и ими трудно управлять (A требует B в конструкторе, B требует Aв конструкторе).
Одно из реальных отличий состоит в том, что при @Autowired
для поля вам не нужен метод-установщик, который, с одной стороны, делает класс меньше и легче для чтения, но с другой стороныделает насмешки над классом немного уродливее.
Я предпочитаю инъекцию поля.