乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      newerjob論壇

       加菲 2005-12-06

      在Oracle數(shù)據(jù)庫(kù)中時(shí)間的存儲(chǔ)和讀取(讀取時(shí)、分、秒)

      一般數(shù)據(jù)庫(kù)中時(shí)間的格式為DATE類(lèi)型,而我們從頁(yè)面中獲取的時(shí)間往往為String類(lèi)型,這個(gè)就需要類(lèi)型的轉(zhuǎn)換。一般我們會(huì)通過(guò)調(diào)用java.text.SimpleDateFormat JAVA類(lèi)來(lái)對(duì)其進(jìn)行轉(zhuǎn)換。這個(gè)JAVA類(lèi)中我們經(jīng)常用到的方法有兩個(gè),一個(gè)是format(將時(shí)間格式的數(shù)據(jù)轉(zhuǎn)換成String類(lèi)型),另一個(gè)就是parse(將String類(lèi)型轉(zhuǎn)換成DATE類(lèi)型)。我們一般可以將parse封裝到自己的方法中,例:

        /**
         * 方法描述:頁(yè)面中字符串轉(zhuǎn)化為日期類(lèi)型
         *
         * 輸入?yún)?shù):從頁(yè)面中得到的以字符串形式表示的日期數(shù)據(jù)
         * 輸出參數(shù):轉(zhuǎn)換后的日期
        */

       Public class TimeExh{
        public static Date transToDate(String strDateFromPage) {
          Date date = null;

          //此處為yyyy-MM-dd 則為2005-1-13
          SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         
          //建立一個(gè)一定格式的 SimpleDateFormat
          if(strDateFromPage==null) {
            return new Date();
          }
          if (strDateFromPage.length()>10) {
             sdf =  new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
             //此處時(shí)間方式為2005-1-13 20:00:12
          }
          try {
            date = sdf.parse(strDateFromPage);
          } catch (Exception ex) {
            ex.printStackTrace();
          }
          return  date;
        }
       }

      在Oracle數(shù)據(jù)庫(kù)中提供了to_date的方法來(lái)對(duì)String類(lèi)型的時(shí)間來(lái)進(jìn)行轉(zhuǎn)換。而在Oracle數(shù)據(jù)庫(kù)中不能將時(shí)間直接放到VO中傳給數(shù)據(jù)庫(kù),這樣數(shù)據(jù)庫(kù)中的時(shí)間為格林氏時(shí)間,不符合中國(guó)人的時(shí)間習(xí)慣。所以在這里有兩中不同的處理方式進(jìn)行處理。


      第一種:VO中存儲(chǔ)時(shí)間的類(lèi)型為String類(lèi)型。
        我在這里寫(xiě)一個(gè)簡(jiǎn)單的VO為:
       public class DateVO {
         ..........//省略掉定義部分
        public void setStart_Date(String Start_Date){
          start_Date= start_Date
        }

        public String getStart_Date() {
          return this.Start_Date;
        }
        /**
         * 判斷Start_Date是否為空
         */
        public boolean isEmptyStart_Date() {
          if (this.Start_Date == null || this.Start_Date.equals("") ) {
            return true;
          } else {
            return false;
          }
        }
       }
        //A.所傳遞參數(shù)為DATE類(lèi)型
        //獲得當(dāng)前時(shí)間,并將值傳遞給VO:   
          SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
         //將當(dāng)前時(shí)間轉(zhuǎn)換為yyyy-MM-dd hh:mm:ss格式
         String nowDate = sdf.format(new Date());
         //將此String值放進(jìn)VO中的setDate()方法中。
          vo.setDate(nowDate);

          //在組織SQL語(yǔ)句時(shí)從VO中獲得時(shí)間值。
          SQL語(yǔ)句的前部分省略,主要為后部分的時(shí)間的處理。
          sbSQL.append(insert into news (start_date,....) value ();
          if (!vo.isEmptyStart_Date()) {
            sbSQL.append("");
            sbSQL.append("to_date(‘");
           //to_date為Oracle數(shù)據(jù)庫(kù)中轉(zhuǎn)換時(shí)間的函數(shù),處理對(duì)象為String
            sbSQL.append(vo.getStart_Date());
            sbSQL.append("‘,‘yyyy-mm-dd hh24:mi:ss‘)");//注意這行代碼,格式得正確,否則得不到時(shí)、分、秒
          } else {
            sbSQL.append("NULL");
          }
          sbSQL.append(" ....) ");

        //B.所傳遞參數(shù)為String類(lèi)型(從頁(yè)面獲取)
        if (request.getParameter("Start_Date") != null
            && !request.getParameter("Start_Date").equals("")) {
         
          //將此String值放進(jìn)VO中的setDate()方法中。
          vo.setDate(Start_Date);
        }
        后面處理同上
        ........

      第二種:VO中存儲(chǔ)時(shí)間的類(lèi)型為DATE類(lèi)型。
       public class DateVO {
         ..........//省略掉定義部分
        public void setStart_Date(Date Start_Date){
          start_Date= start_Date
        }

        public Date getStart_Date() {
          return this.Start_Date;
        }
        /**
         * 判斷Start_Date是否為空
         */
        public boolean isEmptyStart_Date() {
          if (this.Start_Date == null || this.Start_Date.equals("") ) {
            return true;
          } else {
            return false;
          }
        }
       }
         //A.所傳遞參數(shù)為DATE類(lèi)型
         //獲得當(dāng)前時(shí)間,并將值傳遞給VO:   
          SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
          String nowDate = sdf.format(new Date());//將當(dāng)前時(shí)間轉(zhuǎn)換為yyyy-MM-dd hh:mm:ss格式
          將此String值放進(jìn)VO中的setDate()方法中。
          vo.setDate(TimeExh.transToDate(nowDate));

         
          //在組織SQL語(yǔ)句時(shí)從VO中獲得時(shí)間值。
          SQL語(yǔ)句的前部分省略,主要為后部分的時(shí)間的處理。
          sbSQL.append("insert into news (start_date,....) value (");
          if (!vo.isEmptyStart_Date()) {
            sbSQL.append("");
            sbSQL.append("to_date(‘");
            sbSQL.append(sdf.format(vo.getStart_Date()));
            sbSQL.append("‘,‘yyyy-mm-dd hh24:mi:ss‘)");
          } else {
            sbSQL.append("NULL");
          }

          sbSQL.append(" ....) ");
         
          //B.所傳遞參數(shù)為String類(lèi)型
          if (request.getParameter("Start_Date") != null
              && !request.getParameter("Start_Date").equals("")) {
         
             //將此String值放進(jìn)VO中的setDate()方法中。
             vo.setDate(TimeExh.transToDate(request.getParameter("Start_Date")));
          }   
         
          //后面處理同上
          .........

       

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多