Java字符串,日期的格式化

JSP中常用的格式化包括:
1. 字符串的格式化
2. 字符串和HTML顯示內容的格式化
3. 日期的格式化

一、字符串的格式化
字符串處理是項目中使用最頻繁的,Java中提供了二種格式化字符串的方法,JDBC還提供了一種問號參數類似於格式化SQL語句。

1. 使用String.format()方法格式化字符串
   語法格式爲:public static String format(String format, Object... args)
   其中字符串中的佔位符(與C語言相同)爲:%d -- 整數 %f --小數 %s -- 字符串
    格式化時按佔位符的順序使用變量的值替換。如有重複值,需要寫兩個%d,賦值兩個
    例如:
        String str = "select top %d * from tb_user";
        str = String.format(str, 10);
2. 使用MessageFormat格式化字符串。
     類MessageFormat來自java.text包
     佔位符:{0}、{1} 或者 {1[, 格式類型[,格式樣式]]}
     格式類型有:number, date, time, choice
     格式樣式詳情請參見:JDK幫助。

     例如:
     int planet = 7;
     String event = " disturbance ";

    String result = MessageFormat.format(
     "At {1,time} on {1,date}, there was {2} on planet {0,number,integer}.",
     planet, new Date(), event);

    輸出爲:
        At 12:30 PM on Jul 3, 2053, there was disturbance on planet 7.

3. SQL語句的問號參數
    使用?爲佔位符,順序從1開始。
    在創建PreparedStatement對象執行SQL語句前,爲所有的問號設置參數值。
    語句爲:
    private void bindParameter(Object... params){
         if(params != null){//此處使用可變參數,如果沒有參數,則爲null,否則爲參數數組,類型爲Object
               int i = 1;  //參數序號從1開始
               for(Object o : params){
                      if(o == null){
                          pre.setNull(i,Types.VARCHAR);  //設置數據庫的字段值爲NULL
                      }else if(o instanceof java.util.Date){ //o如果爲java.util.Date的對象,返回true
                          java.util.Date dd = (java.util.Date)o;           
                          java.sql.Date sd = new java.sql.Date(dd.getTime());
                          pre.setDate(i, sd);
                    }else{
                          pre.setObject(i, o);
       

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章