|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
java比较简单,没有C++的烦琐,但学习时最好有C++为基础.与JSP和SQL起应用,功能强大.
米洗毕,水过量,盖合上,心扭捏,总觉水多了一分或是少了几点,因而重又加上或倒出少量,实在这丁点分量完整无碍煮出香馥馥的饭来。及至将熟之际,亦有夷由,心中默数最少10,如再有不定辄至20,掐火,20对终极质量来讲或有所损。
1.Struts2的Action中可间接用属性来封装哀求参数和处置了局,此谓之属性驱动。也能够像Struts1那样利用专门的ActionForm来处置哀求参数和结果,只不外Struts2用的是一个更纯真的POJO,这就做模子驱动;此时的Action必要完成ModelDriven接口,并完成其getModel()办法将Action与对应Model相干联。
2.例子申明接纳模子驱动的Action(UserBean是一个一般JavaBean,个中界说了username和password两个属性):- publicclassLoginActionimplmentsAction,
- ModelDriven<UserBean>{ UserBeanmodel=newUserBean(); publicUserBeangetModel(){ returnmodel; } }
复制代码 下面例子利用了泛型,Struts2的Action要利用一个模子不必要在设置文件中作分外的设置。
3.哀求参数主动封装到模子中是由设置struts-default.xml中的ModelDrivenIntercepter来完成的。要输入模子中值时用标志<s:propertyvalue="model.username"/>。而倘使写成了<s:propertyvalue="username"/>,Struts2也会作智能处置,如果这个Action中不决义username属性,而且彩用了模子驱动形式,也会输入模子model.username属性,就像Struts1显现ActionForm一样可不写name属性。
4.Struts2的非常处置,基础和Struts1一样的头脑,都供应了声明式非常处置体例,在struts.xml中设置。Struts2的<global-exception-mappings.../>、<exception-mapping.../>分离与Struts1的<global-exceptions.../>、<exception.../>对应,感化都是声明Action中呈现何品种型的非常,转到对应页面,你的Action的execute()办法尽管throwsException就行,剩下的事框架帮你处置。
5.非常信息的输入,<s:propertyvalue="exception"/>输入非常对象自己;<s:propertyvalue="exceptionStack"/>输入非常仓库信息,这是Struts1没有的功效;<s:propertyvalue="exception.message"/>输出非常的message属性。至于标签输入非常国际化动静,可就要自创后面的常识略加推敲一番,实在就是:如execute()thrownewException("name.error"),要输入name.error对应动静用<s:propertyvalue="%{getText(exception.message)}"/>便可,假如找不到name.error对应动静,会间接把"name.error"底本输入。
<p>
java也能做一些底层语言开发做的事情(难度很高,不是java顶尖高手是做不来的), |
|