hibernate
mym43210
这个作者很懒,什么都没留下…
展开
-
XXX.hbm.xml 里的class标签的 schema 属性解释
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 其中中的schema="YT"表示数据库的用户名。如果当前链接数据库的用转载 2014-06-12 11:36:47 · 1698 阅读 · 0 评论 -
hibernate.TypeMismatchException异常
org.hibernate.TypeMismatchException: Provided id of the wrong type for class cn.mym.basic.domain.CodeType. Expected: class java.lang.Long, got class java.lang.Integer at org.hibernate.event.def.Defau原创 2015-07-07 11:48:01 · 1739 阅读 · 0 评论 -
ehcache版本问题导致的一个错误
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in file [C:\eclipse3.6\workspace\ssms\WebContent\WEB-INF\applicationContext.xml]: Invoca转载 2015-07-07 10:37:51 · 2157 阅读 · 0 评论 -
6.操纵持久化对象
1.回顾Java对象在JVM中的生命周期* java集合(List,Set,Map)一个重要的特性是:集合中存放的java对象的引用。当向集合添加一个对象时,其实是把对象的引用添加到集合中。2.session概述* Session 接口是 Hibernate 向应用程序提供的操纵对数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载Java 对象的方法* 在原创 2015-03-01 11:20:14 · 400 阅读 · 0 评论 -
11.映射继承关系
1.采用 subclass 元素的继承映射* 每个具体类一张表(table per concrete class) 将域模型中的每一个实体对象映射到一个独立的表中,也就是说不用在关系数据模型中考虑域模型中的继承关系和多态。* 父类和子类使用同一张表(有一个区分类型的字段)* 采用 subclass 的继承映射可以实现对于继承关系中父类和子类使用同一张表* 因为父类和原创 2015-01-25 13:15:44 · 507 阅读 · 0 评论 -
12.hibernate 二级缓存
1.配置c3p0连接池(了解)* 引入c3p0-0.9.1.jar* 在hibernate.cfg.xml文件中增加如下配置 org.hibernate.connection.C3P0ConnectionProvider原创 2015-02-11 14:38:56 · 416 阅读 · 0 评论 -
10.Hibernate的检索方式
* HQL 检索方式: 使用面向对象的 HQL 查询语言* QBC 检索方式: 使用 QBC(Query By Criteria) API 来检索对象. 这种 API 封装了基于字符串形式的查询语句, 提供了更加面向对象的查询接口* 本地 SQL 检索方式: 使用本地数据库的 SQL 查询语句* HQL(Hibernate Query Language) 是面向对象的查原创 2015-01-21 15:33:58 · 457 阅读 · 0 评论 -
9.Hibernate的检索策略
1.区分立即检索和延迟检索@Test public void testLazyTrueOrFalse(){ Session session=sf.openSession(); Transaction tx=session.beginTransaction(); Customer c=(Customer)session.load(Customer.class原创 2015-01-21 21:19:15 · 525 阅读 · 0 评论 -
7.映射组成关系
public class Customer implements java.io.Serializable { private Integer id; private String name; private Address homeAddress; private Address comAddress;配置文件配置如下原创 2015-01-15 20:35:04 · 534 阅读 · 0 评论 -
5.映射一对多关联关系
1.一对多关联关系* 单项关联:仅仅建立从Order到Customer的多对一关联,即仅仅在Order类中定义customer属性。或者仅仅建立从Customer到Order的一对多关联,即仅仅在Customer类中定义orders集合* 双项关联:既建立从Order到Customer的多对一关联,又建立从Customer到Order的一对多关联原创 2015-01-13 20:44:42 · 692 阅读 · 0 评论 -
3.对象-关系映射基础
1.Hibernate中持久化类的访问者有两个 true * 写了下面的sql-type type也写了 但是不一致 以sql-type为主* type int integer都可以 true* 自动生成的表结构 id没有自增长 只有主键和非空约束* create:执行时,先查找该表是否存在,如存在先删除表,在创原创 2014-12-21 22:25:26 · 467 阅读 · 0 评论 -
4.映射对象标识符
1.唯一性的标志* Java按地址区分同一个类的不同对象* 关系数据库用主键区分同一条记录* Hibernate使用OID来建立内存中的对象和数据库中记录的对应关系。对象的OID和数据库的表的主键对应。为保证OID的唯一性,应该让Hibernate来为OID付值2.区分自然主键和代理主键* 主键的值永远不会改变* 自然主键:具有业务含义的字段,把这种字段原创 2014-12-22 22:33:59 · 584 阅读 · 0 评论 -
2.Java对象持久化概述
1.hibernate是什么* 面向java环境的对象/关系数据库映射工具* ORM(Object/Relational Mapping)映射工具,建立面向对象的域模型和关系数据模型之间的映射* 连接java应用和数据库的中间件* 对JDBC进行封装,负责java对象的持久化* 在分层结构中处于持久化层,封装对数据库的访问细节,使业务逻辑层更专注于实现业务逻原创 2014-12-21 15:29:31 · 683 阅读 · 0 评论 -
1.hibernate入门
* hibernate冬眠的意思,持久化技术 持久化到硬盘中 内存持久化到硬盘* mysql数据库 主键自增长 主键不用管 也可以手动插入 null 或者赋予其他值 只要数据库不存在这个值* 传统jdbc 改动太大 代码繁琐 javabean属性发生变化 sql语句都要改* Sql语句动态生成 保存时生成sql语句* 中间文件关联javabean 和原创 2014-12-21 15:06:16 · 408 阅读 · 0 评论 -
8.映射一对一 多对多关联关系
1.映射多对多双向关联关系* 多对多的实体关系模型也是很常见的,比如学生和课程的关系。一个学生可以选修多门课程,一个课程可以被多名学生选修。在关系型数据库中对于多对多关联关系的处理一般采用中间表的形式,将多对多的关系转化成两个一对多的关系。* 双向 n-n 关联需要两端都使用集合属性 双向n-n关联必须使用中间表 集合属性应增加 key 子元素用以映射外键列,原创 2015-01-25 15:07:37 · 705 阅读 · 0 评论 -
hibernate本地sql查询,相同列名的字段
比如你用select u.name as uname,p.name as pname这样就会产生后面的值覆盖前面的值,我一般是这样用的select ifnull(u.name,''),ifnull(p.name,'')我当时也查了很多资料都没有说这个问题是怎么回事,只有自己debug,发现应该是hibernate在处理列名的时候,用的是resultSetMetaData.getColumnLa原创 2015-09-30 17:01:37 · 687 阅读 · 0 评论