`
cw_volcano
  • 浏览: 16938 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

note1

 
阅读更多
$('#loginForm').serialize()的值为"userName=zkf38667&password=123zxc!%40%23&rememberMe=on"

slice(start,[end])  例如:选择前两个p元素$("p").slice(0, 2).wrapInner("<b></b>");

end() 选取所有的p元素,查找并选取span子元素,然后再回过来选取p元素 $("p").find("span").end()



NHibername:
临时态(Transient):用new创建的对象,它没有持久化,没有纳入Session中,随时可以被垃圾回收,处于此状态的对象叫临时对象。特点:数据库中没有与之对应的记录;
持久态(Persistent):已经持久化,加入到了Session缓存中。通过NHibernate保存的对象或通过Get/Load等方法获取出的对象,其对象没有脱离Session的管理,处于此状态的对象叫持久对象;
游离态(Detached):持久化对象脱离了Session的对象。如Session缓存被清空的对象。特点:已经持久化,但不在Session缓存中。处于此状态的对象叫游离对象;

当对象处于Persistent状态,并没有脱离Session管理时,其属性发生改变后,数据库相对应的记录会与之同步。
当对象处于游离态(Detached)时,修改其属性,是不会与数据库发生同步的。调用Update()方法后,对象则变回持久态(Persistent)。
我们能够得出结论,通过Get()方法,是可以得到持久态(Persistent)对象的。


调用Get()方法后,数据库中不存在的对象返回值为null,并且一但调用Get()方法,就会生成SQL语句。
调用Load()方法查询数据库中不存在的对象,返回值不为空;当调用Load()方法时,不立刻产生SQL语句,查看其属性后才产生SQL语句,并且查看数据库中不存在对象的属性时会抛出异常。原因是调用Load()方法会返回一个“代理类”,这是NHibernate的一个重要的特性——延迟加载。

总结:目前NHibernate 3.0版本中不建议使用ILifecycle和IValidatable接口。因为这样NHibernate框架就会对持久化类产生侵入性。


children(“condition”) 获取的是一级子元素。
find("condition")获取包含的所有子元素。



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics