鷹翔宇空

          學習和生活

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            110 Posts :: 141 Stories :: 315 Comments :: 1 Trackbacks

          引自:http://www.35dx.com/html/java/8/java7727.html


          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的值格式化。

          此類格式化參數有:

          ?

          序號 格式化參數 適用類型
          1 org.apache.struts.taglib.bean.format.sql.timestamp java.sql.Timestamp
          2 org.apache.struts.taglib.bean.format.sql.date java.sql.Date
          3 org.apache.struts.taglib.bean.format.sql.time java.sql.Time
          4 org.apache.struts.taglib.bean.format.date java.util.Date
          5 org.apache.struts.taglib.bean.format.int Byte,Short,Integer,Long,BigInteger
          6 org.apache.struts.taglib.bean.format.float Float,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);
          ??????????? } catch (Exception ex) {
          ??????????????? throw new ConversionException("輸入的日期類型不合乎yyyy-MM-dd"
          ??????????????????????? + value.getClass());
          ??????????? }
          ??????? } else {
          ??????????? throw new ConversionException("輸入的不是字符類型" + value.getClass());
          ??????? }
          ??? }
          }
          				

          然后在你的系統初始化的地方使用如下語句初始化(如web的init方法)
          ConvertUtils.register(new DateConvert(),java.util.Date.class);
          參數用于表示DateConvert類負責處理java.util.Date類型的轉化
          posted on 2006-08-09 15:11 TrampEagle 閱讀(543) 評論(0)  編輯  收藏 所屬分類: web
          主站蜘蛛池模板: 鲁甸县| 集贤县| 兴山县| 通山县| 彭山县| 昂仁县| 宜城市| 松阳县| 武安市| 古浪县| 自贡市| 阿拉善左旗| 江津市| 四平市| 阿合奇县| 沾益县| 瑞安市| 两当县| 阳高县| 海南省| 商南县| 汤阴县| 苗栗县| 平湖市| 揭东县| 阿勒泰市| 大庆市| 三门峡市| 武威市| 望都县| 漠河县| 满洲里市| 新乡市| 济宁市| 渑池县| 台前县| 西乌珠穆沁旗| 海丰县| 东港市| 长武县| 淮滨县|