
Hibernate
coci曹
这个作者很懒,什么都没留下…
展开
-
Hibernate主键生成策略
主键增长策略increment===自增,每次增加1,主键类型是long。short,int才能自增适用于所有数据库,但是不要用在多进程。select max(id) from userindentity==适用于mysql,sqlserver等,不支持orcle主键类型是数值sequence==hilo==高低位,由hiber原创 2015-12-15 15:35:50 · 783 阅读 · 0 评论 -
hibernate一级缓存(session缓存)
当我们查询数据的时候,首先在一级缓存中去取数据,如果有,则不去数据库中取数据,否则,到数据库中去取数据1,作用提高性能,可以理解成是一个Map2,涉及把数据存进缓存中从缓存中获取数据删除缓存中的数据3,什么操作(一些方法)会向一级缓存中放数据save update saveOrUpdate load原创 2015-12-15 13:49:10 · 546 阅读 · 0 评论 -
Hibernate二级缓存(sessionFactory)
为什么要使用二级缓存因为一级缓存有限(生命周期短,大批量操作数据可能造成内存溢出),我们需要二级缓存来弥补不足1,需要配置2,交给了第三方处理 3,二级缓存插件(常见):hashtable, osCache ,EHcache4,二级缓存可能放在内存中,或磁盘上5,二级缓存可使用的策略:read-only,read-write(最好使用这个),no原创 2015-12-15 14:04:12 · 543 阅读 · 0 评论 -
Hibernate注解映射联合主键的三种主要方式
联合主键用Hibernate注解映射方式主要有三种:第一、将联合主键的字段单独放在一个类中,该类需要实现java.io.Serializable接口并重写equals和hascode,再将该类注解为@Embeddable,最后在主类中(该类不包含联合主键类中的字段)保存该联合主键类的一个引用,并生成set和get方法,并将该引用注解为@Id第二、将联合主键的字段单独放在一个类中,该转载 2016-06-24 16:55:11 · 2682 阅读 · 0 评论 -
hibernate注意事项
1,hibernate不支持count(1),可以使用count(*) 或者count(字段)2,不支持在distinct和group by 基础上使用 count()3,问号(?)的设置使用.setParameter(位置, 属性值) 在sql语句中问号的位置是从1开始,在hql中从零开始。原创 2016-09-01 11:10:19 · 498 阅读 · 0 评论 -
hql不能在distinct,group by结果集上使用count的问题,报语法错误
hql有如下两个限制:HQL(SQL)不支持select count(distinct x, y) from xx;HQL不支持select count(*) from (select distinct x, y from xx);即:HQL不支持from语句中的子查询。PS:hql不能在distinct,group by结果集上使用count的问题 !原创 2016-09-01 09:35:38 · 4272 阅读 · 1 评论 -
hibernate中使用sql
hibernate的使用1,hibernate中执行sql语句,返回一个在映射文件中已经映射的对象:public List findMenusByEntityTypeId(Long id) { String hql = "select m.id as {menu.id},m.name as {menu.name},m.url as {menu.url},m.icon_url转载 2016-09-01 14:02:56 · 2025 阅读 · 0 评论 -
hibernate映射的数据类型
http://blog.sina.com.cn/s/blog_63804f6f0100mcwx.html Hibernate映射类型分为两种:内置的映射类型和客户化映射类型。内置映射类型负责把一些常见的Java类型映射到相应的SQL类型;此外,Hibernate还允许用户实现UserType或CompositeUserType接口,来灵活地定制客户化映射类型1.内置映射类型转载 2016-08-24 19:39:45 · 4041 阅读 · 0 评论 -
hibernate分页返回数据,类型不匹配报错
hibernate要发挥分页的数据,使用以下代码报错类型转换异常:List list = ht .execute(new HibernateCallback>() { public List doInHibernate(Session session) throws HibernateException { Query query = session.createQuery(h原创 2016-09-05 14:51:17 · 1332 阅读 · 0 评论