<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 97,  comments - 93,  trackbacks - 0

    //*******************The Log class
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.uitl.Date;
    import java.text.DateFormat;

    public class Log{
       private static final String filePath = PropertyReader.getResource("Log_File_Path");//Supposing we have define in the last ProperyReader class and the file
      
       public static final String EXCEPTION                  =   "Exception";
       public static final String CREATE_STAFF           =   "Create Staff";
       public static final String EDIT_STAFF                 =   "Edit Staff";
       public static final String DELETE_STAFF            =   "Delete Staff";
       public static final String RECORD_HAS_EXIST  =   "Record Has Exist";

       public static void log(String msg_type, Exception e){
          StringBuffer errMsg = new StringBuffer(e.toString);
         
          for(int i=0;i<e.getStackTrace().length;i++){
             errMsg.append("\n\t at");
             errMsg.append(e.getStackTrace()[i].toString);
          }
          log(msg_type,errMsg.toString());
          OptionPanel.showErrMsg("Sorry,System may have an error \n System will exit");
          System.exit(-1);
       }

      public static void log(String msg.type,Staff staff){
         String msg = null;
         if(msg_type == CREATE_STAFF){
             msg = staff.toString() + "has benn created";
         }else if(msg_type == EDIT_STAFF){
             msg = staff.toString() + "has been Changed";
         }else if(msg_type == DELETE_STAFF){
             msg = staff.toString() + "has been Deleted";
         }else if(msg_type == RECORD_HAS_EXIST){
             msg = staff.toString() + "has exist in the database";
         }
         log(msg_type,msg);
      }

      private static void log(String msg_type,String msg){
          BufferedWriter out = null;
          DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
         
          try{
            out = new BufferedWriter(new FileWriter(getLogFilePath(),true));//如果為 true,則將字節寫入文件末尾處,而不是寫入文件開始處
            out.write("["+df.format(new Date()) + "] <" + msg_type + "> :" + msg);
            out.newline();
            out.newline();
          }catch(IOException e){
              e.printStackTrace();
          }finally{
             try{
               if(out!=null){
                  out.close();
               }
             }catch(IOException e){
                e.printStackTrace();
             }
          }
      }

      private static String getLogFilePath(){
         File logDir = new File(filePath);
         if(!logDir.exists()){
           logDir.mkdir();
         }
        
         int i = 1;
         String fileName = filePath + "log_";
         File file = new File(fileName + i + ".txt");
       
         while(file.exists() && file.length() > 30000L) {
             i++;
             file = new File(fileName + i + ".txt");
         }
       
          return fileName + i + ".txt"
      }
    }

    //*****************************The OptionPanel Dialog Class for the Log Class
    import javax.swing.JOptionPane;

    public class OptionPanel {
       private static final String appTitle = PropertyReader.getResource("App_Title");//suposing the file has been established and the property app-title stands for the name of application
       private static final MainFrame frame = MainFrame.getMainFrame();

       public static void showWarningMsg(String msg){
          JOptionPane.showMessageDialog(frame,msg,appTitle,JOptionPane.WARNING_MESSAGE);
       }
       public static void showErrMsg(String msg){
           JOptionPane.showMessageDialog(frame,msg,appTitle,JOptionPane.Error_MESSAGE);
       }
       public static int showConfirmMsg(String msg){
            return JOptionPane.showConfirmDialog(frame,msg,appTitle,JOptionPane.YES_NO_OPTON,JOptionPane.QUESTION_MESSAGE);
       }
    }

    posted on 2007-04-05 10:01 wqwqwqwqwq 閱讀(876) 評論(1)  編輯  收藏 所屬分類: Simple Java

    FeedBack:
    # re: Write a Log && Use the Properties
    2007-04-07 18:29 | 曲強
    我也叫曲強,我QQ139876554,有時間加我吧  回復  更多評論
      
    <2007年4月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345




    常用鏈接

    留言簿(10)

    隨筆分類(95)

    隨筆檔案(97)

    文章檔案(10)

    相冊

    J2ME技術網站

    java技術相關

    mess

    搜索

    •  

    最新評論

    閱讀排行榜

    校園夢網網絡電話,中國最優秀的網絡電話
    主站蜘蛛池模板: 日本阿v免费费视频完整版| 苍井空亚洲精品AA片在线播放| 国产激情久久久久影院老熟女免费| 两个人的视频高清在线观看免费| 亚洲校园春色小说| 欧洲精品99毛片免费高清观看| 久久精品国产亚洲网站| 久久精品成人免费看| 亚洲ⅴ国产v天堂a无码二区| 久久青草国产免费观看| 亚洲国产综合91精品麻豆| 亚洲免费在线播放| 亚洲国产午夜电影在线入口| 99国产精品永久免费视频| 亚洲制服丝袜第一页| 在线jyzzjyzz免费视频| 国产综合激情在线亚洲第一页 | 亚洲中文字幕无码一区| 一级有奶水毛片免费看| 亚洲视频在线一区| 无码国产精品一区二区免费I6| 亚洲色大成网站WWW国产| 日韩一区二区在线免费观看| 日韩大片免费观看视频播放| 亚洲中文字幕无码久久2017 | 亚洲AV第一页国产精品| 国产精品免费观看| 亚洲AV无码之国产精品| 亚洲无码在线播放| 久热中文字幕在线精品免费| 亚洲av无码一区二区三区在线播放| 亚洲成网777777国产精品| 免费观看成人久久网免费观看| 亚洲另类视频在线观看| 亚洲Av无码国产情品久久 | 国内精品乱码卡1卡2卡3免费| 亚洲AV无码之国产精品| 亚洲αv久久久噜噜噜噜噜| 毛片免费在线视频| 丁香花在线观看免费观看图片| 亚洲综合久久成人69|