I'm not sure I can tell you which style I recommend. The fact is, I don't mind XML configuration. But I also really like the @Component and @Autowired annotations (or @Named and @Inject if you like the JSR-330 style). And I have a fondness for the Java-based configuration and have used it sometimes.
The nice thing is that Spring won't force you in any specific direction here. You're free to choose which style best fits your needs and preference. In fact, you're free to mix-n-match styles within an app.