对bean:write输出

1.对bean:write输出的数据进行格式化

在我们的struts应用中,如果bean:write输出的是很大的Double数据的话,默认情况下它会用科学计数化表示 如 1.316E8等。

我们需要将他进行格式化,如千分位格式化等。即输出为13,160,000.00。

如果是个别现象,我们用bean:write的format属性处理,即format="0,000.00"

如果是普遍现象,我们可以在资源文件(在struts-config.xml的message-resources节点配置)里设置org.apache.struts.taglib.bean.format.float=0,000.00 ,当然实际处理时format属性是优先的。也就是说,如果format属性存在,bean:write将用format属性值进行格式化,否则用默认的org.apache.struts.taglib.bean.format.float的值格式化。

此类格式化参数有:

?

序号格式化参数适用类型
1org.apache.struts.taglib.bean.format.sql.timestampjava.sql.Timestamp
2org.apache.struts.taglib.bean.format.sql.datejava.sql.Date
3org.apache.struts.taglib.bean.format.sql.timejava.sql.Time
4org.apache.struts.taglib.bean.format.datejava.util.Date
5org.apache.struts.taglib.bean.format.intByte,Short,Integer,Long,BigInteger
6org.apache.struts.taglib.bean.format.floatFloat,Double,BigDecimal

2.处理输入类型

以日期为例,其他类型同理

struts使用日期包括将string自动转化为日期fill到form中的解决方法:

创建如下类:
import java.util.*;
import org.apache.commons.beanutils.*;
import java.text.SimpleDateFormat;
public class DateConvert implements Converter {
    static SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    public DateConvert() {
    }
    public Object convert(Class type, Object value) {
        if (value == null) {
            return null;
        }
        if (((String) value).trim().length() == 0)
            return null;
        if (value instanceof String) {
            try {
                return df.parse((String) value);  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值