- 浏览: 171646 次
- 性别:
- 来自: 南京
最新评论
-
lb10001:
不错,正好需要这个知识
img src的特殊使用 -
923080512:
lz下面这句话写错了: Read Uncommitted ...
Spring事务隔离级别和传播行为 -
hucc:
good
img src的特殊使用 -
恶魔眼睛:
经常出现:
WARN | S-0:0:0:0:0:0:0:1 ...
pushlet 学习二 -
gaboolic:
ganqing1234 写道zhangyao 写道 retur ...
pushlet 学习二
文章列表
最近看LumaQQ的源码发现一个volatile(中文意思是“可变的、不稳定的”),找了篇英文介绍。抽空我翻译了一下,翻错了大家不要见笑。。。
volatile关键字有什么用?
恐怕比较一下volatile和synchronized的不同是最容易解释清楚的。volatile是变量修饰符,而synchronized则作用于一段代码或方法;看如下三句get代码:
int i1; int geti1() {return i1;}
volatile int i2; int geti2() {return i2;}
in ...
- 2008-12-01 16:46
- 浏览 1355
- 评论(0)
在Hibernate中,session建立时如getCurrentSession();不会获取数据库的链接,只有在beginTransaction()时才会从链接池里得到链接,默认情况下当事务commit或者rollback时session会flush,随后链接会被释放,新的事务会得到新的链接。
在使用spring整合hibernate时,一般采用代理模式来管理 事务,所以在 dao里,不需要我们手动的去获取 transaction和 commit事务。例如下面的代码所示。
<bean id="txManager"
class="org.sprin ...
- 2008-08-18 14:30
- 浏览 1958
- 评论(0)
1.ajax4jsf想要显示<h:message/>时,必须在<h:message/>上添加<a4j:outputPanel ajaxRendered="true">
2.如果想刷新<f:verbatim>里面的内容,也需要添加<a4j:outputPanel ajaxRendered="true">。
原理是像<h:message>之类的组件在没有验证或转换错误时页面生成的html代码是没有它们的,所以必须在它们外面再加上一层。当然你可以用其他的如<h:panelGroup ...
- 2008-07-17 10:23
- 浏览 2980
- 评论(0)
jsf 中的 immediate 很烦阿,今天有发现它的一个特性,一般情况下在 jsf生命周期的第6步RENDER_RESPONSE,会调用get方法来完成页面的显示,而如果这个生命周期是由一个 immediate=true 的组件引发的而且是针对同一页面的话,get方法就不会执行。利用这点终于解决了一个问题,不过这是在 portlet下的,而且是a4j的组件,不知道原生的jsf是不是一样。
今天想想可能真的是ajax的原因。而不是jsf 中的 immediate 的特性。
- 2008-05-22 15:49
- 浏览 1684
- 评论(0)
null 的验证 和 转换
- 博客分类:
- jsf 相关
页面 上的 输入组件 的输入值 如果是 null 时(组件的required=false),如果 组件的值是原始类型,页面自然 会出错(converter出错)。 否则 组件的值是对象类型的话,组件的验证器 不会 执行(实验中 自定义的验证器没有执行)。 就是说 在验证器里 对null的情况 是没有办法处理的。
- 2008-05-16 15:19
- 浏览 1129
- 评论(0)
hibernate中get方法和load方法的根本区别在于:如果你使用load方法,hibernate认为该id对应的对象(数据库记录)在数据库中是一定存在的,所以它可以放心的使用,它可以放心的使用代理来延迟加载该对象。在用到对象中的其他属 ...
- 2008-05-15 17:35
- 浏览 932
- 评论(0)
内部类 指在另一个类内部的类,它可以继承外部类或实现接口。除非是在宿主类的非static方法里,不然创建内部类的对象必须使用 OuterClassName.InnerClassName的形式。
......
public static void main(String[] args) {
OuterClass outer ...
- 2008-05-15 17:34
- 浏览 1386
- 评论(0)
对一个输入框的输入进行验证,只允许字母和数字,开始是用了<t:validateRegExpr pattern="[A-Za-z0-9]+" message="...".../>, 但后来由于一些原因只得用javascript进行所有的验证。
奇怪的是用/^[\w]+$/ test时完全正确,而/[A-Za-z0-9]+$/则永远是true
- 2008-04-17 17:56
- 浏览 1486
- 评论(0)
今天看到一个网站上的一个有关jsf中的immediate的讨论,一般我们都会认为对于command...和inputinput...immediate的处理是不同的,但有一个人认为其实他们都是相同的,不同的是对于command来说action会提前调用(先于validator),因为action的导航作用才使得页面跳过了后面的验证。听起来有些道理,我特地实验了一下,就是去掉action的返回值,结果证明他的观点是错误的。
今天看core javaserver faces终于知道了原因,因为所有action,不论immediate=true 或者false,都会直接调用Render Respon ...
- 2008-04-17 17:40
- 浏览 2682
- 评论(0)
当ajaxSingle为true时,只是提交当前组件,而对于其他组件是不提交的,它的附带效果就是只对当前组件进行验证,而对其他的组件不会作任何验证。这一点上对于button和link来说感觉和immediate="true"的效果很相似,即跳过所有验证,当然只是效果除此以外它们完全是不同的。
不知道a4j是如何实现的,因为a4j还是遵循jsf的生命周期的,所以估计会有这么一句:FacesContext.getCurrentInstance().renderResponse(),也不知到哪有源码下。
在a4j:support中也有immediate=true 这个属性,工作 ...
- 2008-04-10 15:19
- 浏览 3995
- 评论(0)
作为输入组件,如UInput, immediate="true"时验证会提前,不过我感觉这好像没什么用,因为本来第三步就会执行验证了,提不提早都一样。它的另外一个效果是valueChangeListener会先于第三步process validate 验证执行,这点倒是满有用的。而一般情况下valueChangeListener会在值改变并且通过验证之后即invoke applications阶段才执行,当然会先于action执行的。
- 2008-04-08 14:55
- 浏览 1407
- 评论(0)
1。接口中的函数都是public的,不论写不写明,所以在实现时,也必须加上public修饰。
2。接口中可以定义变量(常量),默认是static final型,所以必须初始化。
- 2008-03-24 10:58
- 浏览 1904
- 评论(0)
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 ...
- 2008-03-10 11:23
- 浏览 2090
- 评论(0)
讲英语难, 吵架更难. 虽说人在国外总是想尽办法以和为贵, 但要跟人家吵架怎么办?
很多人一生气, 所有的英文都忘光了, 平常英文就说不出口, 更何况是吵架, 所以满脑子浮现的不是 Fxxx 就是 Sxxx 这样是很不好的. 我还听过有一个人很绝, 英文骂不过人家就用中文骂, 反正对方听得懂听不懂都无关紧要, 重要的是让他知道你很凶, 而且你正在骂他就行了. 这集还是让我们来看看一些比较文雅的骂人以及吵架的方式.
1. I'm so fed up with your BS. Cut the crap.
我受够了你的废话, 少说废话吧.
美女 (美国的女人) 是不喜欢说 这个不雅的字的, 所 ...
- 2008-03-04 14:40
- 浏览 1409
- 评论(0)