WEB开发网
开发学院软件开发Java Tapestry 和 Wicket 的比较 阅读

Tapestry 和 Wicket 的比较

 2010-03-30 00:00:00 来源:WEB开发网   
核心提示: 我们来查看一个应用 float 类型的示例,在 Tapestry 中,Tapestry 和 Wicket 的比较(3),按照以下方式指定一个具有 float 值的文本字段:清单 1. Tapestry 代码示例<componentid="weight"type=&quo

我们来查看一个应用 float 类型的示例。在 Tapestry 中,按照以下方式指定一个具有 float 值的文本字段:

清单 1. Tapestry 代码示例

<component id="weight" type="TextField"> 
    <binding name="value" value="ognl:weight"/> 
    <binding name="translator" value="translator:number,pattern=#.#"/> 
    <binding name="displayName" value="literal:Weight"/> 
  </component> 

Wicket 中按照以下方式指定这种文本字段:

清单 2. Wicket 代码示例

FormComponent field = new TextField("weight", Float.class); 
field.setLabel(new Model("Weight")); 
add(field); 

因此,可以自然地使用简单的数据类型,比如 string、integer、 float,甚至是 BigDecimal。

验证

作为一条经验法则,应该针对业务规则验证所有的用户输入。Tapestry 和 Wicket 都能够对表单输入字段执行服务器端或客户机端(使用 DHTML)的验证。思考一下在服务器端如何完成这个任务。在框架中将按照以下方式通过特定的验证程序进行字段输入验证:

清单 3. Tapestry 验证程序

<component id="weight" type="TextField"> 
    ... 
    <binding name="validators" value="validators:min=1,max=500"/> 
  </component> 

清单 4. Wicket 验证程序

... 
field.add(NumberValidator.range(1, 500)); 

如果没有符合要求的验证程序,也可以定义一个自定义字段验证程序。如果产生任何验证错误,都应该向用户显示以表明输入无效。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Tapestry Wicket 比较

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接