
hibernate
f7anty
这个作者很懒,什么都没留下…
展开
-
hibernate和oracle
hibernate和oracle10g连接配置hibernate.cfg.xml配置property name="hibernate.connection.driver_class">oracle.jdbc.OracleDriverproperty> property name="hibernate.connection.url">jdbc:oracle:thin转载 2014-02-26 14:59:56 · 686 阅读 · 0 评论 -
HQL和SQL的区别
hql是面向对象查询,格式:from + 类名 + 类对象 + where + 对象的属性sql是面向数据库表查询,格式:from + 表名 + where + 表中字段1、查询一般在Hibernate中使用查询时,推荐使用hql(Hibernate Query Language)查询语句。使用hql的时候需要注意:A、大小写敏感因为hql是面向对象的,转载 2015-07-17 15:28:28 · 398 阅读 · 0 评论 -
hibernate延迟加载(get和load的区别)
在hibernate中我们知道如果要从数据库中得到一个对象,通常有两种方式,一种是通过session.get()方法,另一种就是通过session.load()方法,然后其实这两种方法在获得一个实体对象时是有区别的,在查询性能上两者是不同的。一.load加载方式当使用load方法来得到一个对象时,此时hibernate会使用延迟加载的机制来加载这个对象,即:当我们使用session转载 2015-07-17 15:58:44 · 474 阅读 · 0 评论 -
hibernate的list和iterate的区别
一、先介绍一下java中的缓存系统JCS(java cache system) 1、JCS(Java Caching System)是一个对象Cache,它可以把Java对象缓存起来,提高那些访问频率很高的Java对象的存取效率。JCS是按照对象的唯一标示来存取对象的,比如说可以按照对象的 hashCode来存取。 2、对于Hibernate来说,可以利用JCS来缓存查询结果,这样当转载 2015-07-18 17:50:23 · 477 阅读 · 0 评论 -
Hibernate中session的clear(),flush(),evict()方法详解
一、Clear 方法无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Session缓存。例:public void testClear(){ Session session = HibernateUitl.getSessionFactory().getCurrentSession();转载 2015-07-17 19:31:08 · 1099 阅读 · 0 评论 -
悲观锁和乐观锁解决hibernate并发
转载自http://blog.youkuaiyun.com/csh624366188/article/details/7654996 锁( locking ),这个概念在我们学习多线程的时候曾经接触过,其实这里的锁和多线程里面处理并发的锁是一个道理,都是暴力的把资源归为自己所有。这里我们用到锁的目的就是通过一些机制来保证一些数据在某个操作过程中不会被外界修改,这样的机制,在这里,也就是所谓的“锁”,即转载 2015-07-19 14:54:51 · 568 阅读 · 0 评论 -
Hibernate与 MyBatis的比较
最近做了一个Hibernate与MyBatis的对比总结,希望大家指出不对之处。第一章 Hibernate与MyBatisHibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。MyBatis 参考资料官网:转载 2015-07-19 19:48:00 · 406 阅读 · 0 评论 -
hibernate集合映射inverse和cascade详解
1、到底在哪用cascade="..."?cascade属性并不是多对多关系一定要用的,有了它只是让我们在插入或删除对像时更方便一些,只要在cascade的源头上插入或是删除,所有cascade的关系就会被自己动的插入或是删除。便是为了能正确的cascade,unsaved-value是个很重要的属性。Hibernate通过这个属性来判断一个对象应该save还是update,如果这个对象的转载 2015-07-19 17:20:08 · 385 阅读 · 0 评论 -
Hibernate 与mybatis的区别
为方便以后准备面试,把一些常用的技术整理出来,会不定期更新。首先简单介绍下两者的概念:Hibernate :Hibernate 是当前最流行的ORM框架,对数据库结构提供了较为完整的封装。Mybatis:Mybatis同样也是非常流行的ORM框架,主要着力点在于POJO 与SQL之间的映射关系。其次具体从几个方面说一下两者的区别:1.两者最大转载 2015-07-19 19:35:16 · 394 阅读 · 0 评论 -
大数据量下高并发同步的讲解
对于我们开发的网站,如果网站的访问量非常大的话,那么我们就需要考虑相关的并发访问问题了。而并发问题是绝大部分的程序员头疼的问题,但话又说回来了,既然逃避不掉,那我们就坦然面对吧~今天就让我们一起来研究一下常见的并发和同步吧。 为了更好的理解并发和同步,我们需要先明白两个重要的概念:同步和异步 1、同步和异步的区别和联系 所谓同步,可以理解为在转载 2016-07-06 21:50:43 · 470 阅读 · 0 评论 -
hibernate缓存机制详细分析
在本篇随笔里将会分析一下hibernate的缓存机制,包括一级缓存(session级别)、二级缓存(sessionFactory级别)以及查询缓存,当然还要讨论下我们的N+1的问题。随笔虽长,但我相信看完的朋友绝对能对hibernate的 N+1问题以及缓存有更深的了解。一、N+1问题首先我们来探讨一下N+1的问题,我们先通过一个例子来看一下,什么是N+1问题:li转载 2015-07-18 11:33:02 · 509 阅读 · 0 评论 -
Hibernate的evict方法和clear方法的区别
问:先创建一个Student,然后调用session.save方法,然后再调用evict方法把Student对象清除出缓存,再提交事务, 可是会报错:Exception in thread "main" org.hibernate.AssertionFailure: possible nonthreadsafe access to session 但是如果我用的不是evict方法,而是转载 2015-07-17 19:40:36 · 629 阅读 · 0 评论 -
hibernate N+1问题
Hibernate 中常会用到set,bag等集合表示1 对多的关系, 在获取实体的时候就能根据关系将关联的对象或者对象集取出, 还可以设定cacade进行关联更新和删除。这不得部说hibernate 的orm做得很好,很贴近oo的使用习惯了。 但是对数据库访问还是必须考虑性能问题的, 在设定了1 对多这种关系之后, 查询就会出现传说中的n +1 问题。 1 )1 对多,在1 方,查找得到转载 2015-07-17 16:28:44 · 476 阅读 · 0 评论 -
Field 'id' doesn't have a default value 原因
ield 'id' doesn't have a default value昨晚做项目的时候遇到一个问题,在测试数据存储的时候老是报Field 'id' doesn't have a default value异常,从网上找了好久,根据各位大虾的说法也测试了好久好久,可就是没发现原因所在,鼓捣了两三个小时的时间,最后总算找到问题所在:原来是我的数据设计的时候,把主键的类型定义为int的,原本想是用转载 2014-03-11 16:11:37 · 3283 阅读 · 0 评论 -
为大家提供一个完整的Hibernate Annotation项目_源码下载
项目结构:在这里有必要跟大家说说Hibernate中的各个jar包的含义:。。。。。上面的log4j-1.2.11.jar包没有都可以哦!!! 1 /** 2 * 3 */ 4 package com.b510.hibernate.readme; 5 6 /** 7 * @author hongten 8 * @date 2013-3-25转载 2014-03-11 17:23:56 · 1027 阅读 · 0 评论 -
关于hibernate的缓存使用
1. 关于hibernate缓存的问题:1.1.1. 基本的缓存原理Hibernate缓存分为二级,第一级存放于session中称为一级缓存,默认带有且不能卸载。 第二级是由sessionFactory控制的进程级缓存。是全局共享的缓存,凡是会调用二级缓存的查询方法 都会从中受益。只有经正确的配置后二级缓存才会发挥作用。同时在进行条件查询时必须使用相应的方法转载 2015-02-25 21:24:56 · 484 阅读 · 0 评论 -
eclipse使用hibernate tools插件生成POJO
转自:http://maimode.iteye.com/blog/1630670很多时候我们已经设计好了数据库,需要使用hibernate来做数据持久化,因此需要根据数据库中的表结构生成相应的POJO. 本例使用hibernatetools来自动创建pojo。 测试环境:eclipse3.7(indigo)+hibernate4.1+hibernat转载 2015-02-25 12:28:40 · 1142 阅读 · 0 评论 -
基于按annotation的hibernate主键生成策略
一、JPA通用策略生成器 通过annotation来映射hibernate实体的,基于annotation的hibernate主键标识为@Id, 其生成规则由@GeneratedValue设定的.这里的@id和@GeneratedValue都是JPA的标准用法, JPA提供四种标准用法,由@GeneratedValue的源代码可以明显看出. @Target({M转载 2015-02-25 15:44:27 · 615 阅读 · 0 评论 -
hibernate 延迟加载
转自http://blog.youkuaiyun.com/xc635960736/article/details/7049863Hibernae 的延迟加载是一个非常常用的技术,实体的集合属性默认会被延迟加载,实体所关联的实体默认也会被延迟加载。Hibernate 通过这种延迟加载来降低系统的内存开销,从而保证 Hibernate 的运行性能。下面先来剖析 Hibernate 延迟加载的“秘密转载 2015-02-12 21:16:46 · 500 阅读 · 0 评论 -
hibernate通用DAO
详细介绍 Hibernate 泛型 DAO 及其使用方法编写Spring+Hibernate框架下的应用,总是离不了编写一个通用的泛型GenericHibernateDao。查阅了网上不少的GenericHibernateDao实现,归纳整理为如下实现,供后续编码参考。 首先定义接口泛型DAO接口 GenericDaopackage com.th.huz;imp转载 2015-02-25 20:50:48 · 674 阅读 · 0 评论 -
Hibernate Tools Eclipse 插件安装
Hibernate Tools 简介: Hibernate Tools是由JBoss推出的一个Eclipse综合开发工具插件,该插件可以简化ORM框架Hibernate,以及JBoss Seam,EJB3等的开发工作。Hibernate Tools可以以Ant Task以及Eclipse插件的形式运行。 Mapping Editor(映射文件编辑器):该编辑器可以用来编辑转载 2015-02-25 11:52:41 · 637 阅读 · 0 评论 -
session.flush()与session.clear()的区别及使用环境
首先session是有一级缓存的,目的是为了减少查询数据库的时间,提高效率,一级缓存的生命周期和session是一样的,session.flush()和session.clear()就针对session的一级缓存的处理。 简单的说,1 session.flush()的作用就是将session的缓存中的数据与数据库同步。2 session.clear()的作用就是转载 2015-07-17 15:31:45 · 1044 阅读 · 0 评论 -
Spring(AbstractRoutingDataSource)实现动态数据源切换
一、前言 近期一项目A需实现数据同步到另一项目B数据库中,在不改变B项目的情况下,只好选择项目A中切换数据源,直接把数据写入项目B的数据库中。这种需求,在数据同步与定时任务中经常需要。 那么问题来了,该如何解决多数据源问题呢?不光是要配置多个数据源,还得能灵活动态的切换数据源。以spring+hibernate框架项目为例(引用:http://blog.youkuaiyun.com转载 2017-09-13 11:29:00 · 316 阅读 · 0 评论