|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
先说优点,首先和C,C++这些语言比起来,java很简单,去掉指针的java,非常好理解,自动垃圾回收机制也很好,自从JDK1.5推出以后,性能上又有了很大提高。心得
Struts1.1公布了这么长工夫了,我才方才入手下手体系地进修Struts的相干常识,经由前一阵专心研讨,对Struts1.1中已有的类DispatchAction有了进一步的熟悉。我将在这里总结一下,但愿能对人人有所匡助。
在1.0版本中我们一般都是用execute办法来完成我们对营业逻辑的处置及页面的转发。一般在一个Action中我们都只可以完成一种营业逻辑的操纵。假如如果完成多个营业逻辑(好比:增加、删除等)功效邻近的营业逻辑我们就没有举措了么?谜底是不是定的,我们能够经由过程在页面中界说一个埋没变量,在分歧的页面请求处置分歧的营业逻辑的时分我们能够付与这个变量分歧的值,并在execute办法中经由过程对变量值的判别来完成分歧的营业逻辑操纵。
举例来讲,我们起首在页面中界说一个埋没变量。
<html:hiddenproperty="operAt"/>
然后界说一个JavaScript函数,我们能够在经由过程点击提交按钮的时分,在函数体内里修正它的值。
<SCRIPT>
functionset(key){
with(document.forms[0]){
operAt.value=key;
}
}
</SCRIPT>
当我们点击提交按钮便触发该事务,修正变量的值。
<html:submitonclick="set(save);">SAVE</html:submit>
那我们在背景execute中又怎样处置相干逻辑呢?
StringoperAt=myForm.getOperAt();
if(operAt.equals("create")){...
if(operAt.equals("save")){...
很复杂吧!固然说如许做我们能够完成多个营业逻辑在统一个Action中完成,但是带来的价值即是代码的冗杂,不容易了解。
上面我们就要先容一下DispatchAction类了。它是Action的一个子类,它能够完成多个营业逻辑在统一个Action傍边的完成,而下面的例子在DispatchAction中也就酿成了上面的情势:
publicActionForwardcreate(
ActionMappingmapping,
ActionFormform,
HttpServletRequestrequest,
HttpServletResponseresponse)
throwsException{...
publicActionForwardsave(
ActionMappingmapping,
ActionFormform,
HttpServletRequestrequest,
HttpServletResponseresponse)
throwsException{...
每种营业逻辑都能在DispatchAction傍边找到对应的办法。那末我们怎样往完成如许的挪用呢?DispatchAction中对struts-config.xml的设置比一样平常的Action设置稍显贫苦,举例来说:
<actionpath="/telConsle"type="com.meng.action.TelConsleDispatch"
name="telForm"scope="request"validate="false"parameter="method"/>
我们在这里指定了parameter的值为method,而当我们哀求Action的时分我们必需指定method的值来断定往我们想要挪用哪一个Action办法。如:
http://localhost:8080/tsss/telConsle.do?method=save
明显,经由过程显现链接指定参数值的办法能够到达我们挪用办法的目标。但是我们假如不想显现挪用的话我们应当如何处置呢?还记得后面讲过的办法么?我们在页面中界说一个埋没的变量,然后经由过程对变量的赋值来断定我们来断定我们将要实行的营业办法。在这里我们可不成以一样如许利用呢?
谜底是一定的,我们固然能够经由过程界说一个相似于<html:hiddenproperty="operAt"/>的变量,只需对该变量赋上对应DispatchAction中的办法的值来断定我们要挪用的营业办法。但是笔者比倡始用Struts标签来界说如许的隐含的变量,由于Struts标签为静态标签,它大概必要在FormBean中界说该属性的get和set办法,而在parameter中界说的值不必要在FormBean傍边界说get和set办法。笔者倡议用html的尺度标签<input>来界说该埋没变量。由于该标签为静态标签,假如我们该用Struts标签的话大概招致页面堕落。
怎样?经由过程下面的叙述,您是不是可以对DistpatchAction有了开端懂得呢?关于DispatchAction用法小弟仍是出此体验,有甚么不敷的地方还但愿列位年夜虾能品评指导!
因为能用到多少功能就用多少,不能用就不用!总的来说:要简单要性能好,可以不用框架。你说java复杂,就是因为你把java(j2ee)与这些框架混在了一起。 |
|