Hibernate是一个开发的对象关系映射框架(ORM)。它对JDBC进行了非常对象封装,Hibernate允许程序员采用面向对象的方式来操作关系数据库。
Hibernate的优点:
1、程序更加面向对象
2、提高了生产率
3、方便移植
4、无入侵性
Hibernate的缺点:
1、效率比JDBC略差
2、不适合批量操作
3、只能配置一种关联关系
Hibernate有四种查询方式:
1、get、load方法,根据ID号查询对象。
2、Hibernate Query Language, HQL
3、标准查询语言
4、通过SQL查询
Hibernate工作原理:
1、配置Hibernate对象关系映射文件、启动服务器
2、服务器通过实例化Configuration对象,读取hibernate.cfg.xml文件的配置内容,并根据相关的需求建好表以及表之间的映射关系。
3、通过实例化的Configuration对象建立SessionFactory实例,通过SessionFactory实例创建Session对象。
4、通过Session对象完成数据库的增删改查操作。
Hibernate中的状态转移:
临时状态(Transient)
1、不处于Session缓存中
2、数据库中没有对象记录
补充说明-Java是如何进入临时状态的:1、通过new语句创建一个对象时。2、刚调用Session的delete()方法时,从Session缓存中删除一个对象时。
持久化状态(Persisted)
1、处于Session缓存中
2、持久化对象数据库中没有对象记录
3、Session在特定的时刻会保存两者同步
补充说明-Java如何进入持久化状态:1、Session的save()方法。2、Session的load().get()方法返回的对象。3、Session的find()方法返回的list集合中存放的对象。4、Session的update().save()方法。
流离状态(Detached)
1、不再位于Session缓存中
2、游离对象由持久化状态转变而来,数据库中还没有相应记录。
补充说明-Java如何进入流离状态:1、Session的close()。2、 Session的evict()方法,从缓存中删除一个对象。
Hibernate是一个开发的对象关系映射框架(ORM)。它对JDBC进行了非常对象封装,Hibernate允许程序员采用面向对象的方式来操作关系数据库。
Hibernate的优点:
1、程序更加面向对象
2、提高了生产率
3、方便移植
4、无入侵性
Hibernate的缺点:
1、效率比JDBC略差
2、不适合批量操作
3、只能配置一种关联关系
Hibernate有四种查询方式:
1、get、load方法,根据ID号查询对象。
2、Hibernate Query Language, HQL
3、标准查询语言
4、通过SQL查询
Hibernate工作原理:
1、配置Hibernate对象关系映射文件、启动服务器
2、服务器通过实例化Configuration对象,读取hibernate.cfg.xml文件的配置内容,并根据相关的需求建好表以及表之间的映射关系。
3、通过实例化的Configuration对象建立SessionFactory实例,通过SessionFactory实例创建Session对象。
4、通过Session对象完成数据库的增删改查操作。
Hibernate中的状态转移:
临时状态(Transient)
1、不处于Session缓存中
2、数据库中没有对象记录
补充说明-Java是如何进入临时状态的:1、通过new语句创建一个对象时。2、刚调用Session的delete()方法时,从Session缓存中删除一个对象时。
持久化状态(Persisted)
1、处于Session缓存中
2、持久化对象数据库中没有对象记录
3、Session在特定的时刻会保存两者同步
补充说明-Java如何进入持久化状态:1、Session的save()方法。2、Session的load().get()方法返回的对象。3、Session的find()方法返回的list集合中存放的对象。4、Session的update().save()方法。
流离状态(Detached)
1、不再位于Session缓存中
2、游离对象由持久化状态转变而来,数据库中还没有相应记录。
补充说明-Java如何进入流离状态:1、Session的close()。2、 Session的evict()方法,从缓存中删除一个对象。