hibernate是一种ORM框架(全称为Object-Relative Database-Mapping,在java对象与数据库之间建立某种映射,以实现直接存取java对象(一般为POJO)),与各种数据库,SQL语句打交道,是数据持久化的一种解决方案。ORM框架是不同于MVC的另一种思想框架,适用范围也与MVC截然不同。类似功能的框架还有SUN的JDO、Oracle公司的TopLink、Apache的iBatis和openJPA等。
在商业系统的开发中,数据库持久化是比较核心的技术之一。传统的数据持久化编程中,需要使用JDBC并配合大量的SQL语句。Connection、statement、resultset等JDBCAPI与SQL夹杂在一起,开发效率都很低下。后来出现了DAO模式,所有的JDBCAPI与SQL语句均移到了DAO层,但是仍然需要编写大量的SQL语句。开发业务复杂,数据表繁杂。
DAO层其实很有规律。插入数据时,无非就是把POJO拆分成各种属性然后拼装为SQL语句,保存进数据库;读取数据时,无非就是用SQL把POJO的各种属性从数据库读出来,然后拼装成POJO对象返回。而且POJO与数据库表、POJO属性与数据表的列,都存在着某种固定的映射关系。如果能够用程序自动生成SQL