In most cases code generators take the database schema (con.getMetaData()) and create corresponding java classes, for example one data class and one manager class per table.
Some OR tools (TopLink, Cocobase, etc) create both java classes and database schema from single xml master file.
Chris Smith says that iBATIS involves a lot more SQL work than Hibernate and leaves you to solve more of your own problems, but it requires a lot less conceptual understanding. iBATIS basically seems to be about mapping a ResultSet to an object, and nothing else. Hibernate is more concerned with the hard problems: caching and connection pooling; representing relationships between entities in a very flexible and customizable way, etc. As a result, iBATIS appears to be mostly about avoiding the effort of writing repetitive glue code from JDBC, while Hibernate is about abstracting away from JDBC and treating data according to the object model instead.
apache有一个ojb项目,Torque,iBATIS都是持久化项目
Hibernate是jboss的。
4 HIBERNATE - 符合Java习惯的关系数据库持久化
http://www.hibernate.org/hib_docs/reference/zh-cn/html/
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得 Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命 意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
5 java中的日志技术可以帮助记录程序的运行情况。java sdk和apacke(log4j)都有支持.
6 AppFuse
AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、 Struts、Spring、DBUnit、Ant、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL)于一身的Web开发框架。AppFuse提供了Web系统开发过程 中都需要开发的一些功能,如登陆、用户密码加密,用户管理、根据不同的用户可以展现不同的菜单.J2EE开发者也可以在此基础上开发加入自己的功能模块。 利用这个框架可以大幅度的提高开发速度。
7 baidu上关于web的一些冬冬,
http://hi.baidu.com/ningningjx/blog/item/28a25366fbb41424aa184c65.html