鷹翔宇空

          學習和生活

          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 閱讀(547) 評論(0)  編輯  收藏 所屬分類: web
          主站蜘蛛池模板: 广德县| 芜湖市| 日照市| 弥勒县| 宿松县| 呼玛县| 固始县| 富民县| 太原市| 天台县| 广水市| 滁州市| 赣州市| 青冈县| 辛集市| 惠水县| 象州县| 浮梁县| 大城县| 中江县| 光泽县| 达尔| 洛阳市| 方城县| 武安市| 岑溪市| 涟水县| 云梦县| 银川市| 平度市| 独山县| 九龙城区| 贵溪市| 茶陵县| 卓尼县| 巍山| 天镇县| 英超| 桦甸市| 新野县| 静安区|