struts1(三)
aglibdemo.jsp)
1 logic:present与logic:iterate 简单集合数据
xxxx
作用域不存在listBasic
2 logicempty与logic:iterate 简单集合数据
集合元素为空
3 logicempty与logic:iterate list中 bean (含bean 中list)
4 logicempty与logic:iterate map
5 hashmap 放bean
6 作用域中的简单字符串 html标签输出 使用filter=false
7 类似if else
等于 xxx
不等于 xxx
7 类似if else 单独bean
等于 xxx
9 动态form (附件 动态form.txt)
动态ActionForm是struts从1.1版本开始引入一项新的技术,即在创建ActionForm时
可以不用通过
编程的方式而只要通过struts-config.xml文件中进行配置,以后在struts运行时,会自动根
据struts-config.xml中配置的DynaActionform来生成一个Action实例
为什么要使用DynaActionform
很显然随着应用程序的变大,数百个ActionForm 这样不仅编程起来麻烦,以后维护起来也麻烦,比如:
某个属性变化了,则需要修改源代码,然后重新编译,但是如果使用DynaActionform则只需要修改
struts-config.xml配置文件就行了。这样提高了应用程序的开发效率与应用程序的可维护性
10 国际化
11 验证以及验证框架
一种是通过ActionForm的validate函数进行验证,另一种就是利用validate框架进行验证
六种类的关系:
1:普通form(从下向上继承)
ActionForm //不用验证框架作验证 如要验证 重写validate方法
|
|
validatorForm //使用验证框架时必须继承它,但只能做同一种验证(即只提交一个按键时的验证)
|
|
validatorActionForm //使用验证框架验证时,可以更为精确的去处理业务逻辑,针对的是不同的按键的path(即可以作不同的验证,如,既可以验证是否为空,又可以同时验证是否小于几位)
2:动态form(从下向上继承) 动态form不能new
DynaActionForm //不用验证框架作验证 如要验证 写一个form类继承它 重写validate方法 struts-config.xml配置时改为你写的类
|
|
DynaValidatorForm
|
|
DynaValidatorActionForm
我们自己的form 必须继承validatorForm 或validatorActionForm 或DynavalidatorForm 或DynavalidatorActionForm
对于 validatorForm 和DynavalidatorForm 是针对form的验证
对于 validatorActionForm 和DynavalidatorActionForm 是针对path的验证
创建Validation.xml
下面介绍一下validation.xml配置文件的标签:
对一个ActionForm里的数据进行验证配置
定义一个变量的标签体,可以在里面具体设置变量的名称以及数值
在验证规则中大部分可以使用已经预定义好的规则,它们在validator-rules.xml里,当然我们自己也可以定义规则。
其实,这个文件名可以是任意的,可以起成别的名字,比如:validators.xml,不过,也要相应修改struts-config.xml文件中的加入validator框架PlugIn中的value属性。这个value属性用来指定validator-rules文件和具体的验证文件。
1)根元素:
validators.xml文件的“根元素(Root)”是form-validation,
意味着整个文件的内容包含在“”和“ ”之间,
2)元素global:
这个东西包含constant子元素,用来定义一个全局的“验证限制”,
以便在这个文件的其他地方使用这些验证规则。
如下global phone的应用
property=”phone”
depends=”required,mask,minlength”>
客服端提示
在struts-config.xml配置插件