What!? You're going over to the Dark Side?
O/R mapping is done in java in a variety of ways: through EJB-CMP (JBoss/others) or through own O/R mapping frameworks.
The most used free one is Hibernate. There is no cheap tool which has a nice gui and which generates a lot of code for you, based on the db. The one which is said to be the best O/R mapper on the planet, TopLink, does have a nice gui however, but you have to pay Top Dollar as well. TopLink is owned by Oracle.
So I think it depends on the total framework in which your java application has to run in: do you plan to run it inside an EJB-CMP compatible application server, it's best to opt for a persistence framework which 'plugs' itself into that framework, otherwise you'd probably should try out what everybody else uses: hibernate, which requires that you have to do some coding yourself (but there are code generators for Java as well, so perhaps you can use these, however often they're textfile based)
Btw, Toplink's mapping tool is included in JDeveloper, Toplink runtime is still commercial. Any CMP compatible persistence layer can use mappings created by standard mapping tools targeting CMP persistence layers, most common IDE's seem to have those.