`
ganqing1234
  • 浏览: 171646 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论
文章列表
最近看LumaQQ的源码发现一个volatile(中文意思是“可变的、不稳定的”),找了篇英文介绍。抽空我翻译了一下,翻错了大家不要见笑。。。 volatile关键字有什么用?   恐怕比较一下volatile和synchronized的不同是最容易解释清楚的。volatile是变量修饰符,而synchronized则作用于一段代码或方法;看如下三句get代码: int i1;                          int geti1() {return i1;} volatile int i2;              int geti2() {return i2;} in ...
在Hibernate中,session建立时如getCurrentSession();不会获取数据库的链接,只有在beginTransaction()时才会从链接池里得到链接,默认情况下当事务commit或者rollback时session会flush,随后链接会被释放,新的事务会得到新的链接。 在使用spring整合hibernate时,一般采用代理模式来管理 事务,所以在 dao里,不需要我们手动的去获取 transaction和 commit事务。例如下面的代码所示。 <bean id="txManager" class="org.sprin ...
1.ajax4jsf想要显示<h:message/>时,必须在<h:message/>上添加<a4j:outputPanel ajaxRendered="true"> 2.如果想刷新<f:verbatim>里面的内容,也需要添加<a4j:outputPanel ajaxRendered="true">。 原理是像<h:message>之类的组件在没有验证或转换错误时页面生成的html代码是没有它们的,所以必须在它们外面再加上一层。当然你可以用其他的如<h:panelGroup ...
jsf 中的 immediate 很烦阿,今天有发现它的一个特性,一般情况下在 jsf生命周期的第6步RENDER_RESPONSE,会调用get方法来完成页面的显示,而如果这个生命周期是由一个 immediate=true 的组件引发的而且是针对同一页面的话,get方法就不会执行。利用这点终于解决了一个问题,不过这是在 portlet下的,而且是a4j的组件,不知道原生的jsf是不是一样。 今天想想可能真的是ajax的原因。而不是jsf 中的 immediate 的特性。
页面 上的 输入组件 的输入值 如果是 null 时(组件的required=false),如果 组件的值是原始类型,页面自然 会出错(converter出错)。 否则 组件的值是对象类型的话,组件的验证器 不会 执行(实验中 自定义的验证器没有执行)。 就是说 在验证器里 对null的情况 是没有办法处理的。
  hibernate中get方法和load方法的根本区别在于:如果你使用load方法,hibernate认为该id对应的对象(数据库记录)在数据库中是一定存在的,所以它可以放心的使用,它可以放心的使用代理来延迟加载该对象。在用到对象中的其他属 ...

内部类

内部类 指在另一个类内部的类,它可以继承外部类或实现接口。除非是在宿主类的非static方法里,不然创建内部类的对象必须使用 OuterClassName.InnerClassName的形式。 ...... public static void main(String[] args) { OuterClass outer ...
对一个输入框的输入进行验证,只允许字母和数字,开始是用了<t:validateRegExpr pattern="[A-Za-z0-9]+" message="...".../>, 但后来由于一些原因只得用javascript进行所有的验证。 奇怪的是用/^[\w]+$/ test时完全正确,而/[A-Za-z0-9]+$/则永远是true
今天看到一个网站上的一个有关jsf中的immediate的讨论,一般我们都会认为对于command...和inputinput...immediate的处理是不同的,但有一个人认为其实他们都是相同的,不同的是对于command来说action会提前调用(先于validator),因为action的导航作用才使得页面跳过了后面的验证。听起来有些道理,我特地实验了一下,就是去掉action的返回值,结果证明他的观点是错误的。 今天看core javaserver faces终于知道了原因,因为所有action,不论immediate=true 或者false,都会直接调用Render Respon ...
当ajaxSingle为true时,只是提交当前组件,而对于其他组件是不提交的,它的附带效果就是只对当前组件进行验证,而对其他的组件不会作任何验证。这一点上对于button和link来说感觉和immediate="true"的效果很相似,即跳过所有验证,当然只是效果除此以外它们完全是不同的。 不知道a4j是如何实现的,因为a4j还是遵循jsf的生命周期的,所以估计会有这么一句:FacesContext.getCurrentInstance().renderResponse(),也不知到哪有源码下。 在a4j:support中也有immediate=true 这个属性,工作 ...
作为输入组件,如UInput, immediate="true"时验证会提前,不过我感觉这好像没什么用,因为本来第三步就会执行验证了,提不提早都一样。它的另外一个效果是valueChangeListener会先于第三步process validate 验证执行,这点倒是满有用的。而一般情况下valueChangeListener会在值改变并且通过验证之后即invoke applications阶段才执行,当然会先于action执行的。
1。接口中的函数都是public的,不论写不写明,所以在实现时,也必须加上public修饰。 2。接口中可以定义变量(常量),默认是static final型,所以必须初始化。
firefox打开和关闭窗口时会自动的加载onload()和onunload()函数。但在IE中则不会,为使javascript能在这两个浏览器中运行。可以使用下面的方法。 addEvent(window, 'load', winonload, false); function addEvent(elm, evType, fn, useCapture){ if(elm.addEventListener){ elm.addEventListener(evType, fn, useCapture); return true; }else ...
讲英语难, 吵架更难. 虽说人在国外总是想尽办法以和为贵, 但要跟人家吵架怎么办? 很多人一生气, 所有的英文都忘光了, 平常英文就说不出口, 更何况是吵架, 所以满脑子浮现的不是 Fxxx 就是 Sxxx 这样是很不好的. 我还听过有一个人很绝, 英文骂不过人家就用中文骂, 反正对方听得懂听不懂都无关紧要, 重要的是让他知道你很凶, 而且你正在骂他就行了. 这集还是让我们来看看一些比较文雅的骂人以及吵架的方式. 1. I'm so fed up with your BS. Cut the crap. 我受够了你的废话, 少说废话吧. 美女 (美国的女人) 是不喜欢说 这个不雅的字的, 所 ...
Global site tag (gtag.js) - Google Analytics