If you start out by defining business objects in Java, then use Hibernate XDoclet tags to describte how those objects will be persisted, you can automatically generate that Hibernate config file and never have to manually touch it.

You don't have to use a config file with Spring. You can do everything in Java code if you want to. But most developers feel the advantages of using Spring's XML config files justify their use.