sm.jar,commons-collections.jar,commons-logging.jar,jta.jar,dom4j.jar 配置文件hibernate.cfg.xml和hibernate.properties,XML和properties两种,这两个文件的作用一样,提供一个即可,推荐XML格式,下载目录/etc下是示例配置文件。 可以在配置文件指定:
知识点 : 【 缓存的作用主要用来提高性能,可以简单的理解成一个Map;使用缓存涉及到三个操作:把数据放入缓存、从缓存中获取数据、删除缓存中的无效数据。 一级缓存,Session级共享。 save,update,saveOrUpdate,load,get,list,iterate,lock这些方法都会将对象放在一级缓存中,一级缓存不能控制缓存的数量,所以
知识点: 【 通过asm和cglib二个包实现;Domain是非final的。 1.session.load懒加载。 2.one-to-one(元素)懒加载: 必需同时满足下面三个条件时才能实现懒加载 (主表不能有constrained=true,所以主表没有懒加载) lazy!=false 2)constrained=true 3)fetch=se
知识点: 【 多对多(teacher - student) 在操作和性能方面都不太理想,所以多对多的映射使用较少,实际使用中最好转换成一对多的对象模型;Hibernate会为我们创建中间关联表,转换成两个一对多。 <set name="teacher" table="teacher_student"> <key column="teac
知识点: 【 多对一(Employee - Department) 映射文件<many-to-one name=”depart” column=”depart_id”/> column=”depart_id”与Employee外键对应 默认于Department主键对应 也可以通过property-ref来指定引用那个属性与外键对应 一对多(D
完全一样,set,list,map分别和JAVA中的Set,List,Map接口对应,bag映射成JAVA的List;这些集合的使用和JAVA集合中对应的接
应 】 (新建普通java工程) 第一步:配置hibernate环境 、编写hibernate.cfg.xml配置文件 true com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/student?useUnico
static void query() { Session s = null; try { s = HibernateUtil.getSession(); //String hql="from User as user where user.id=?";位置参数查询 //String hql="from User as user where u
表名于数据库中关键字冲突: <1、通过<class name="User" table="myuser"> <2、通过Tab键上面的 `` <class name="User" table="`myuser`"> 属性名于数据库关键字冲突: <1、<property name="birthday" col
当调用entity.clear();等方法时此时bean变成游离状态 通过调用entity.merge(person);把数据同步到数据库 删除:是认为的删除对象或是垃圾回收掉 //hibe
Session的几个主要方法 1.save,persist保存数据,persist在事务外不会产生insert语句。 save()方法和persist()方法在没有开启事务情况下save()会先向数据库中插入一条数据,然后回滚事务删除该数据 .persist()方法则不会向数据库中插入数据而是抛出异常 2.delete,删除对象 3.update,更
知识点: 【 JDBCTransaction 单个数据库(一个SesisonFactory对应一个数据库),由JDBC实现。 Session session = null; Transaction tx =null; try { session = sessionFactory.openSession(); tx = session.begi
知识点: 【 hibernate.cfg.xml和hbm.xml内容解释 数据类型 1.<property name=“name” type=“java.lang.String”/> type可以是hibernate、java类型或者你自己的类型(需要实现hibernate的一个接口)。 2.基本类型一般不需要在映射文件(hbm.xml)
Hibernate的对象有3种状态,分别为:瞬时态(Transient)、 持久态(Persistent)、脱管态(Detached)。处于持久态的对象也称为PO(Persistence Object),瞬时对象和脱管对象也称为VO(Value Object)。 瞬时态 由new命令开辟内存空
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号