hibernate
ADreamClusive
这个作者很懒,什么都没留下…
展开
-
Hibernate(3)使用eclipse快速开发hibernate项目示例
1 通过MyEclipse提供的数据库浏览器连接到Oracle数据库 配置好后,Test Driver,如果测试不通过,更改D:\Program Files\MyEclipse目录下myeclipse.ini文件,设置-Duser.language=zh。 以上配置完成后,右键myOracle,打开一个Connection连接 找到需要操作的数据库后,可以直接编辑,也可以使用SQL语句。2原创 2017-04-28 21:58:39 · 571 阅读 · 0 评论 -
Hibernate(12)使用误区
不适合OLAP(On-Line Analytical Processing联机分析处理),以查询分析数据为主的系统;适合OLTP(On-Line Transaction Processing联机事务处理) 对于某些关系模型设计不合理的老系统,也不能发挥Hibernate的优势数据量巨大,性能要求苛刻的系统,Hibernate也很难达到要求,批量操作数据的效率也不高原创 2017-05-06 16:41:13 · 311 阅读 · 0 评论 -
Hibernate(11)*.hbm.xml文件中主键增长策略
1 对象标识符(OID Object id)hibernate中的持久化对象对应数据库中的一张数据表,因此区分不同的持久化对象,在Hibernate中是通过OID来完成的,从表的角度看,OID对应表的主键;从类的角度看OID对应类的主键属性。2 常用8种主键增长策略① increment标识符生成器由HIbernate自动以递增方式生成标识符,每次增量为1. - 优点:不依赖于底层数据库系统,适原创 2017-05-06 16:32:49 · 3776 阅读 · 0 评论 -
Hibernate(10)Hibernate缓存
1 缓存介绍缓存的主要作用是提高性能,可以简单的理解成一个Map;使用缓存涉及到三个操作:把数据放入缓存、从缓存中获取数据、删除缓存中的无效数据。2 一级缓存,Session级共享(默认可以使用) save,update,saveOrUpdate,load,get,list,iterate,lock这些方法都会将对象放在一级缓存中,一级缓存不能控制缓存的数量,所以要注意大批量的操作数据可能造成内存原创 2017-05-06 15:22:21 · 231 阅读 · 0 评论 -
Hibernate(9)懒加载问题解决方案
当我们查询一个对象的时候,默认情况下,返回的只是该对象的普通属性,当用户去使用对象属性时,才会向数据库发出再一次的查询,这种现象称为lazy加载现象。1在Student.hbm.xml中配置关闭懒加载方式:<class name="com.test.domain.Student" table="STUDENT" lazy="false" schema="SCOTT">2 Hibernate.init原创 2017-05-05 22:36:03 · 921 阅读 · 0 评论 -
Hibernate(8)Stucts+Hibernate+接口编程
1 项目框架图 框架补充: 业务层开发者,应该使用Junit测试开发结果2 通过接口调用①接口类// BaseInterfacepublic interface BaseInterface { // 通过id号,来获取一个对象实例(Serializable:使用它比int等好,因为所有的包装类都实现了该接口) public Object findById(Class cla原创 2017-05-05 19:35:43 · 308 阅读 · 0 评论 -
Hibernate(4)hibernate的HQL详解
1 为什么需要学习HQL(hibernate query language)?面向对象的查询语言,与SQL不同,HQL中的对象名是区分大小写的(除了Java类和属性,其他部分不区分大小写); HQL中查的是对象而不是表,并且支持多态; HQL**主要通过Query来操作**Query q = session.createQuery(hql);2 Hibernate HQLHibernate 工原创 2017-05-04 21:58:45 · 661 阅读 · 0 评论 -
Hibernate(7)关系映射和Cascade级联操作
1 关联关系映射多对一(Employee-Department)一对多(Department-Employee)一对一(Person-IdCard)多对多(teacher-student)cascade(Employee-Department)2 多对一(Employee-Department)**domain文件:**Studcourse.javapublic class Studco原创 2017-05-05 14:23:15 · 495 阅读 · 0 评论 -
Hibernate(6)对象的三种状态
瞬时(transient):数据库中没有数据与之对应,超过作用域会被JVM垃圾回收器回收,一般是new出来且与session没有关联的对象。持久(persistent):数据库中有数据与之对应,当前与session有关联,并且相关联的session没有关闭,事务没有提交;持久对象状态发生改变,在事务提交时会影响到数据库(Hibernate能检测到)。脱管/游离(detached):数据库中有数据原创 2017-05-05 13:43:58 · 303 阅读 · 0 评论 -
Hibernate(5)hibernate三种开发方式之官方推荐(但不常用)方式
1 官方推荐方式之:由Domain Object+映射文件->mapping->db前提是domain都存在,才能使用这种方式,在第一次加载配置文件时,会执行创建数据库的操作。 需要配置hibernate.cfg.xml文件<property name="hbm2ddl.auto">create</property>**这里有四个配置值:**create,update, create-drop,v原创 2017-05-05 13:15:00 · 947 阅读 · 0 评论 -
Hibernate(2)Hibernate核心类和接口
1 Hibernate核心类和接口 ①configuration类 用处: - 读取hibernate.cfg.xml - 管理对象关系映射文件<mapping resource=""> - 加载hibernate的驱动,url,用户…… - 管理hibernate配置信息 ②hibernate.cfg.xml 使用getCurrentSession时,进行的配置: -原创 2017-04-28 15:20:08 · 388 阅读 · 0 评论 -
Hibernate逆向工程An internal error occurred during: "Generating Artifacts". java.lang.NullPointerExcepti
An internal error occurred during: "Launching MVC on Tomcat 6.x". java.lang.NullPointerException如果出现了上述的错误按照如下的3个步骤解决:1、首先关闭MyEclipse工作空间。2、然后删除工作空间下的“\.metadata\.plugins\org.eclipse.core.r原创 2017-05-11 21:52:37 · 3661 阅读 · 0 评论 -
Hibernate(1)Hibernate简介和简单示例,了解Hibernate事务回滚用法
1 Hibernate简介Hibernate是一个orm(object relation mapping 对象关系映射)框架,处于项目的持久层,也叫持久层框架(持久层框架还有ojb等)。Hibernate本质就是对JDBC进行了轻量级的封装。2 使用Hibernate的好处①引入Hibernate可以使工作人员角色细化,让程序员更关心业务流程。让数据库人员更关注数据库相关的各种操作。 ②分层原创 2017-04-27 22:49:42 · 4454 阅读 · 0 评论