struts2--类型转换

一.概述

从一个 HTML 表单到一个 Action 对象, 类型转换是从字符串到非字符串. 
HTTP 没有 “类型” 的概念. 每一项表单输入只可能是一个字符串或一个字符串数组. 在服务器端, 必须把 String 转换为特定的数据类型
在 struts2 中, 把请求参数映射到 action  属性的工作由 Parameters 拦截器负责, 它是默认的 defaultStack 拦截器中的一员. Parameters 拦截器可以自动完成字符串和基本数据类型之间转换.


二.类型转换错误



类型转换错误消息的定制


测试案例:
 新建一个如下的
  
输入数字才有效,输入其他会报错

(1)action
public class NumberAction extends ActionSupport{//继承ActionSupport

	private  Integer number;

	public void setNumber(Integer number) {
		this.number = number;
	}
	public String getNumber() {
		System.out.println(number);
		return "input";
	}
}
(2)index.jsp
<s:form action="number.do" method="post" >
<s:textfield name="number" label="age"/>
<s:submit></s:submit>
</s:form>

当你输入其他的时候会出现英文错误提示,如果你想自定义错误提示,则需要
新建一个与自己定义的action同名的properties文件,里面写
invalid.fieldvalue.number="\u8BF7\u8F93\u5165\u7AD6\u5B50"
这个就是你要验证的部分,后面写你自定义的提示

问题:当你把form的主题改为simple,它还会显示吗?如果不显示该怎么办?

答:不会显示
解决办法: 你可以打印出这个 ${fieldErrors.number[0] },为什么打印这个你可以s:debug一下就知道了
               或者添加 <s:fielderror name="number"></s:fielderror>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值