1.bean标签
1.1 <bean:define>标签
定义或复制一个对象(定义对象一般为String类型;复制对象-->迭代标签)
<bean:define id="对象名称" value="对象值" />
强调:
a. id:就表示一个存在四种属性范围之中的名称
b. name:表示使用一个存在四种属性范围之中的对象
1.2 <bean:size>标签
求出长度:数组、Conllection、Map
<bean:size id="对象名称" name="使用的对象名称(数组、Collection、Map的名称)" scope="属性范围" />
1.3 <bean:write>标签
打印对象,也可以打印对象中的属性,
在JSP2.0中可以使用EL代替Struts中的<bean:write>标签。
<bean:write name="需要输出的对象名称" property="需要输出的对象中的属性" scope="属性范围" />
1.4 <bean:message>标签
Struts国际化
编写多个ApplicationResources_各国语言名称简写.properties文件(ApplicationResources_en_us.properties),浏览器会根据各国语言自动调用适合的*.properties文件。
<bean:message>标签提供一个占位功能。在*.properties中使用{0}即可。
eg:
*.properties中写:welcome = 欢迎{0}光临!!!
页面中使用<bean:message key="welcome" arg0="yully" />
页面中会输出:欢迎yully光临!!!
2.logic标签
2.1 <logic:present>标签和<logic:notPresent>标签
判断是否有指定属性存在/不存在指定范围之中,
如果不指定范围,则表示要进行全面的查找,依次按照属性范围进行查找。
<logic:present name="使用的对象名称" scope="属性范围" />
2.2 =、>=、<=、!=、>、<、逻辑判断
a. =: <logic:equal name="使用的对象名称" scope="属性范围" value="" />
b. !=: <logic:notEqual name="使用的对象名称" scope="属性范围" value="" />
c. >=: <logic:greaterEqual name="使用的对象名称" scope="属性范围" value="" />
d. <=: <logic:lessEqual name="使用的对象名称" scope="属性范围" value="" />
e. >: <logic:greaterThan name="使用的对象名称" scope="属性范围" value="" />
f. <: <logic:lessThan name="使用的对象名称" scope="属性范围" value="" />
属性名称中的值与value中的值相比较。此种标签最大的好处是可以简单的进行各种类型判断,字符串、数值、字符、布尔值
2.3 ☆ <logic:iterate>迭代标签 (此标签可以循环输出)
<logic:iterate id="每个元素的实例化对象" name="使用的对象名称" scope="属性范围" property="找到对象里的属性名称" />
此对象可以输出三种类型:
对象数组
Collection集合(单值)
Map集合(二元偶对象)(key,value)
Map集合的输出步骤:
Map --> Set --> Iterator --> Map.Entry --> key、value
3.html标签 [ html标签中使用了property代替了JSP中的name。。。]
3.1 <html:form>
3.2 <html:text>
3.3 <html:password>
3.4 <html:submit>
3.5 <html:reset>
3.6 <html:select>
3.7 <html:option>
实际上在struts中提供了一个专门可以用于从集合中取数据的标签:<html:optionCollection name="所使用的对象"/>
集合在程序之中依然是Colletion,但在集合里面的内容上,必须加入此类:org.apache.struts.util.LabelValueBean。即Collection里的值应该是col.add(new org.apache.struts.util.LabelValueBean("北京","BJ"));BJ即为value中的值。
3.8 <html:radio>
如果想为radio设置默认值,则需要在对应的ActionForm.java文件中给该属性赋个默认值。
3.9 <html:checkbox>
如果想为checkbox设置默认值,则需要使用<html:multibox property="select">
并且在对应的ActionForm.java文件中加入两个数组,一个为全部的选项,一个为默认选定的选项。
在JSP页面中,先使用<logic:iterate>把对应的ActionForm.java文件中保存全部选项的那个数组全部显示出来。
<logic:iterate id="新建的对象名称" name="对应的表名" property="保存全部选项的那个数组">
<html:multibox property="select">${默认选定的选项数组}</html:multibox>${默认选定的选项数组}
</logic:iterate>
3.10 <html:textarea>