I\'ve started to use Spring recently. And I\'m making spring mvc project. So my question is if it\'s preferred to make interfaces and autowire it with particular implementation
It will depend on whether MyService is a bean that holds a state or not. If MyService does not hold state, then you don't need to create new instances and you can let Spring to inject it having the advantages above described
In most cases you should go with injection because:
MyServiceImpl
as well because it manages this objectEven if your service does not have an interface, because of the second reason you should consider injection.
The only case when you might want to skip Spring is when the class does not have any dependencies and is stateless. But most likely such a class is a utility that does not need any an instance at all because it has only static
members.