如何使用struts2标签
1,在jsp页面里面加入引入的taglib
<%@ taglib uri="/struts-tags" prefix="s"%>
2,如果prefix是s,那么标签的语法就是
<s:标签名称>
3,如果web.xml里面的<url-pattern>*.action</url-pattern>是这样的形式。
需要新加入一个过滤器
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
如果是<url-pattern>/*</url-pattern>表示过滤所有的地址。就不需要加上面的配置了。
3,使用的标签
<s:textfield>输入标签
name属性 label名称
<s:password>密码
<s:select>选择
headkey默认值 headvalue在页面的默认显示
<s:checkbox>单选
<s:radio>单选按钮
<s:textarea>文本域
<s:s:submit>提交按钮
<s:reset>重置按钮
<s:file>上传文件的标签
<s:property>输出标签
<s:set> 设置值
<s:if>分支标签
<s:else>
<s:iterator>迭代标签
关于值栈
后台的实体类如果有get和set方法的时候,在页面获取这些实体类的值的时候。
实体类前面是不需要加#的。
其他的情况,比如在reqeust对象,session对象,application对象里面加入了实体类。
在页面展示的时候,是需要先访问根,再访问对象的。具体就是#对象去访问。
解决页面提交后展示的中文乱码问题:
解决思路,统一编码格式
第一种,统一成UFT-8的格式。需要jsp是UTF-8格式。后台。通过鼠标右键工程,设置编码格式
为UTF-8
第二种:页面为GBK。工程为GBK,在STRUTS配置文件里面加入
<constant name="struts.i18n.encoding" value="GBK">
1,在jsp页面里面加入引入的taglib
<%@ taglib uri="/struts-tags" prefix="s"%>
2,如果prefix是s,那么标签的语法就是
<s:标签名称>
3,如果web.xml里面的<url-pattern>*.action</url-pattern>是这样的形式。
需要新加入一个过滤器
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
如果是<url-pattern>/*</url-pattern>表示过滤所有的地址。就不需要加上面的配置了。
3,使用的标签
<s:textfield>输入标签
name属性 label名称
<s:password>密码
<s:select>选择
headkey默认值 headvalue在页面的默认显示
<s:checkbox>单选
<s:radio>单选按钮
<s:textarea>文本域
<s:s:submit>提交按钮
<s:reset>重置按钮
<s:file>上传文件的标签
<s:property>输出标签
<s:set> 设置值
<s:if>分支标签
<s:else>
<s:iterator>迭代标签
关于值栈
后台的实体类如果有get和set方法的时候,在页面获取这些实体类的值的时候。
实体类前面是不需要加#的。
其他的情况,比如在reqeust对象,session对象,application对象里面加入了实体类。
在页面展示的时候,是需要先访问根,再访问对象的。具体就是#对象去访问。
解决页面提交后展示的中文乱码问题:
解决思路,统一编码格式
第一种,统一成UFT-8的格式。需要jsp是UTF-8格式。后台。通过鼠标右键工程,设置编码格式
为UTF-8
第二种:页面为GBK。工程为GBK,在STRUTS配置文件里面加入
<constant name="struts.i18n.encoding" value="GBK">