了解下JAVA的Struts2范例转换(一) 惯例范例,自界说范例,毛病处置
首先第一点:jsp,servlet,javabean这些最基本的,嘿嘿,就算你是高手的话,在大行的企业级应用的话还是需要框架的,一个好的框架确实能构解决许多问题。Struts2的范例转换是基于OGNL表达式的.有优秀的扩大性.
WEB使用吸收到表单提交的数据都是String范例的,Struts2可便利的转换为惯例范例(数值,日期)/自界说范例(User,Point类).
假如转换中呈现非常,conversionError拦阻器会主动处置该非常.
一,惯例范例的转换:
好比表单提交的信息有用户名,诞辰,岁数,Action中对应的数据范例分离是String,Date,int.没甚么好说的,Struts2会主动完成.
Struts2内建了经常使用的范例转换器,如String,boolean,char,int,long,float,double,Date,数组(假定元素是String范例),汇合(假定元素是String范例,用ArrayList封装)
二,自界说范例的转换(办法一):这类办法用用来转换庞大对象
ONGL项目中有一个TypeConverter接口,是完成转换器必需完成的接口,这个接口有点庞大,以是OGNL还供应了该街接口的一个完成类ognl.DefaultTypeConverter,经由过程承继该类重写convertValue办法,实现自界说范例的转换.
办法是如许的convertValue(finalMapcontext,finalObjectvalue,finalClasstoType)
第一个参数:context是范例转换情况的高低文
第二个参数:value是必要转换的参数,偏向分歧,value的范例也是分歧的.
第三个参数:toType是转换后的方针范例,
前往值是:转换后的方针范例,偏向分歧,范例也是分歧的.
Struts2本人有一个笼统类承继自DefaultTypeConverter类,是StrutsTypeConverter.就是转换的两个分离对应两个笼统办法,实在都一样,换汤不换药,百变不离个中.以是我们也能够承继StrutsTypeConverter类.
下面做一个自界说范例转换的实例:
1.表单是如许的:
<br>输出一个用豆号分开的两个数字,代表一个坐标点的X,Y值.
2.Point对象以下,用来封装表单信息.
Java代码
packagessh.org.util;
publicclassPoint
{
privateintx;
privateinty;
}
Java代码
publicclassLoginActionextendsActionSupport
{
privatePointpoint;
set,get办法略...
@Override
publicStringexecute()throwsException
{
return"success";
}
}
<p>
JAVA是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由升阳(SunMicrosystems)公司的詹姆斯·高斯林(JamesGosling)等人于1990年代初开发。 Java是一种计算机编程语言,拥有跨平台、面向对java 科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Java 编程语言的风格十分接近C、C++语言。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想) J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言 你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 是一种将安全性(Security)列为第一优先考虑的语言 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
页:
[1]