- 博客(12)
- 问答 (14)
- 收藏
- 关注
EntityEntry, EntityKey, Cache..Hibernate源码研究碎得(13)
如上篇结束时所言,本篇中着重研究upgradeLock这个方法. 进入方法后第一句就是这个requestedLockMode.greaterThan( entry.getLockMode())判断,若不成立,就马上退出此方法. 有些疑问的是EntityEntry类型的entry里getLockMode有什么意义?再往下追就是EntityEntry里的lockMode是什么时候什么情景下赋值...
2008-05-23 08:41:33 360
甚是无奈的"亲子鉴定"--Hibernate源码研究碎得(12)
Hibernate中"亲子鉴定"本篇中,我们来看doLoad方法,按上篇的分析方法,我们将这个方法分为三部分: step1,loadFromSessionCache()的调用和对返回结果的判断. step2,loadFromSecondLevelCache()的调用和对返回结果的判断. step3,若上面两个方法的的返回值都为null的话,最后调用loadFromDatasource并返回此方法...
2008-05-22 08:51:28 157
从源码层面来看load与get的区别(七): Hibernate源码研究碎得(11)
在这篇中本来是没想着画EntityPersister接口继承关系及其实现类的类图,可看着看着觉得这个继承关系很壮美,也就很想看到它的全貌,于是就有在这另一篇博客里的类图.言归正传,来看DefaultLoadEventListener类里的load方法,这个方法里可分为如下三步: step1,判断并处理instanceToLoad不为null时的情况. step2,做实质的doLoad方法,返回O...
2008-05-20 09:09:12 83
满城尽是Interface,接口真的那么神奇?--Hibernate源码研究碎得(10)
满城尽是Interface,接口真的那么神奇?晚饭后由于不能很集中地思考,就大致地看了EntityPersister这个接口的继承关系及其实现类.呵,真是不看不知道,一看吓一跳,又是一个很庞大的继承树,而且还里有那么多的接口,不禁就感叹了:为什么Hibernate里这么多的接口?这样的接口设计能达到想像的效果么?在解藕合方面真能那么灵验?感觉有些接口过度了,不丁点的小事动不动就来一个接口.说句...
2008-05-20 09:03:37 94
从源码层面来看load与get的区别(五): Hibernate源码研究碎得(9)
上一篇花了很长时间梳理了下SessionImplementor接口与Hibernate里其它关键类和接口的关系并画出类图,最后得出"集万千宠爱于一身的SessionImpl"标题.本篇将接着往下走,下面先看第二句 EntityPersister persister;声明了一个变量persister.(写到这有两种选择,一是像对SessionImplementor一样对这个EntityPersis...
2008-05-19 09:12:04 78
集万千宠爱于一身的SessionImpl:get研究(四): Hibernate源码研究碎得(8)
上一篇重点介绍了LoadEventListener里的LoadType这个static final类及其在LoadEventListener里的定义的几个对象后,简单地介绍了DefaultLoadEventListener里的三个static final属性,现在在这篇中将重点研究这里的onLoad方法. 进入onLoad方法后,第一句就是从event中getSession,这个返回值以Sess...
2008-05-17 13:57:36 607
从源码层面来看load与get的区别(三): Hibernate源码研究碎得(7)
LoadEventListener中的LoadType接着上一篇,我们来看方法fireLoad(event, LoadEventListener.GET);第一个参数就是前面已经准备好的LoadEvent对象,我们重点看下第二个参数.这个fireLoad的签名是这样的: fireLoad(LoadEvent event, LoadType loadType)追着看下LoadType的定义,有点...
2008-05-16 09:10:21 90
从源码层面来看load与get的区别(二): Hibernate源码研究碎得(6)
从源码层面来看load与get的区别(二): Hibernate源码研究碎得(5)接着上一篇问题的引入,本篇中我们先从Session里我们很熟悉的get(Class entityClass, Serializable id)起步.小菜这用的例子是Hibernate里自带那个, 程序的入口为下面的Java语句: person = (Person) session.get(Person.class,...
2008-05-15 09:06:25 103
从源码层面来看load与get的区别(一): Hibernate源码研究碎得(5)
在写以前先跟着源码的执行大致地看了看这两个方法所涉及的东西,一下子感觉到对这两个方法的比较将对以后session里的众多方法乃至整个Hibernate的研究都会起到很大的促进作用,由于这两个方法所涉及的东西很多,估计能写出10篇左右的Blog,我也就不用担心这些天写Blog没什么要出手的了.**************************************************源码...
2008-05-14 09:36:25 109
Hibernate源码研究碎得(4)
1, 为什么在new一个Configuration对象时要调用另一个构造方法呢?而另一个构造方法里接收一个传来的SettingsFactory的参数,难倒说在new一个Configuration时还可以另行指定自造的SettingsFactory?这就像Configuration类里的configure()方法那样?调用无参的configure()方法时就去找那个默认的配置文件,但也是另行指定配置...
2008-05-14 09:25:39 111
谢谢Hibernate---Hibernate源码研究碎得(3)
谢谢Hibernate.鼓捣Hiberante的源码有一段日子也,回过头来看看这段路,不由地想起"感触颇多"这个词了:从刚开始的"为伊消的人憔悴"到现在的渐入佳境,再往前看尽管还有很长的路要走,不过现在很想说"谢谢Hibernate!"看了Hiberate源码,我不再浮躁.在Java的学习/应用路上,是有了点点收获,有了这些收获后,也不知道怎么回事,心就静不下来,这个了觉得容易,那个也觉得简单...
2008-05-12 14:40:01 117
Hibernate源码研究碎得(2)
1, 为什么tables用的是TreeMap这个类呢?而别的大都用的是HashMap2, Environment.getProperties()每次调用都是新建一个Properties对象,把这个对象传对调用者.这样做用什么特殊的好处呢?3, 怪,怎么会出现一模一样的两行LogInfo呢? [2008-05-05 09:16:36,750] INFO org.hibernate.cfg.Envi...
2008-05-05 16:46:05 109
空空如也
jQuery操作Table的几个问题?
2010-08-17
jQuery给select添加option时,FireFox中可以执行,IE里不行?
2010-06-18
如何用jQuery把HTML中Table列在行放到Table的第一行?
2010-06-17
<a>中套一个<table>,链接怎么就点不了了?
2010-06-09
“单元测试”的“单元”具体指的是什么?
2010-01-04
“我的smtp邮件服务器需要认证”在Outlook中怎么找?
2009-08-10
Confluence开放的API接口,灵活扩展和集成?
2009-07-01
confluence相似的wiki系统都有哪些?
2009-07-01
outlook(邮件系统)是怎么知道发送给一不存在信箱的邮件是否失败呢?
2009-06-29
Maven如何只打war包而不运行jetty?
2009-04-28
displayTable排序问题?
2009-04-16
求一个逻辑运算结果
2009-03-06
怎么用Hibernate写SQL里的in式的子查询
2009-02-23
用json时的一个问题,
2008-06-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人