The structure you describe is, apart the mentionend name confusion, a good starting point. Depending on the complexity you can just leave the interface classes out and you end up with three classes. If your application is small (to medium) i consider this a legit approach even if it is not best practice. Introducing an interface once you discover there are alot of dependencies and you need some kind of api package for a part of you app is easy to introduce with spring as long its not the whole app.
One other thing you have to keep in mind is that you do not need to multiply this complete chain of classes for each usecase. A generalized SimpleCrudDao and SimpleEntityService is perfectly fine. Then once this SimpleEntityService is not enough you can start creating specifc ones like a UserService that has createUserAndTransferEntitiesAndUpdateWhatsoever methods.