properties文件中的参数{0}如何设置

韩雷 2009-09-08 06:42:56
properties文件中的参数{0}如何设置

我用struts2 做了个拦截器
struts.xml片段如下

<!-- 配置fileUpload的拦截器 -->
<interceptor-ref name="fileUpload">

<!-- 允许上传的文件大小 -->
<param name="maximumSize">1024</param>

</interceptor-ref>




我在 messageResource_zh_CN.properties 文件中重定义了maximumSize的拦截返回信息。

struts.messages.error.file.too.large=文件太大



这样,当上传的文件大于1K后,在页面上就会出现 "文件太大" 这一信息。

但是,

我想告诉客户可以上传的文件的最大值是1K

我现在有一种简单的方法:将
struts.messages.error.file.too.large=文件太大
变成
struts.messages.error.file.too.large=文件大小不能超过1K

但在其他页面中,有时文件大小的限制是100K,而struts.messages.error.file.too.large只有一个。所以不能写死。

那么,根据我目前的知识水平,我想到了:
struts.messages.error.file.too.large=文件大小不能超过{0}

{0}是参数。但我弄了半天也不知道该如何传递给{0}一个具体的字符串!

哪位高人能帮帮我,谢谢!
...全文
629 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuying2500 2009-09-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 javalover00000 的回复:]
Struts2我不太懂,不过properties中的{0}参数,你可以用 java.text.MessageFormat
这个来格式化
Java code
String msg_temp="长度不能大于{0}K";
String msg_value="10";
String msg= MessageFormat.format(msg_temp, msg_value);
System.out.println(msg);
[/Quote]
正解
铁匠梁 2009-09-09
  • 打赏
  • 举报
回复
学习了,原来这样格式化。
zdwpeicun 2009-09-09
  • 打赏
  • 举报
回复
必须要设置的话,在Validation.xml文件里设置,如下:
<form-validation>
<formset>
<form name="bean的名字">
<field property="要设置的属性" depends=”满足的条件"
<arg0 key="是jsp页面errors的属性"> //这个arg0就是{0}
</field>
完后,在properties文件中设置键(key)相对应的值(即:不能大于1k)
zdwpeicun 2009-09-09
  • 打赏
  • 举报
回复
可以用javascript写个方法,判断一下就好了
yinzisheng 2009-09-09
  • 打赏
  • 举报
回复
应该有个message标签,其中有个key属性和arg0属性。key是你要显示的信息的key值,arg0是你要向信息里面传的参数。
kokobox 2009-09-09
  • 打赏
  • 举报
回复
struts2不熟悉,一直都是在用struts1.x

你可以把包拷贝一下,或者struts2下可能也类似的包。

例如:
属性文件:services.properties
其中内容有:apply=xxxxxx{0}xxxxxxx{1}


java代码:


MessageResources mr = MessageResourcesFactory.createFactory().createResources("services");
String reqUrl = mr.getMessage("apply", new String[]{参数1,参数二,....参数N});

bayougeng 2009-09-09
  • 打赏
  • 举报
回复

String msg_temp = "长度不能大于{0}K";
String msg_value1 = "10";
String msg_value2 = "100";
String msg = MessageFormat.format(msg_temp, msg_value1, msg_value2);
System.out.println(msg);

ms_X0828 2009-09-09
  • 打赏
  • 举报
回复
lz
帮你up
韩雷 2009-09-09
  • 打赏
  • 举报
回复
up
fubaibiao 2009-09-08
  • 打赏
  • 举报
回复
不懂
JavaLover00000 2009-09-08
  • 打赏
  • 举报
回复
Struts2我不太懂,不过properties中的{0}参数,你可以用 java.text.MessageFormat
这个来格式化

String msg_temp = "长度不能大于{0}K";
String msg_value = "10";
String msg = MessageFormat.format(msg_temp, msg_value);
System.out.println(msg);
islandrabbit 2009-09-08
  • 打赏
  • 举报
回复
关注

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧