<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 閱讀(872) 評論(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

    搜索

    •  

    最新評論

    閱讀排行榜

    校園夢網網絡電話,中國最優秀的網絡電話
    主站蜘蛛池模板: 免费人成视频在线观看网站| 你是我的城池营垒免费看| 97视频免费在线| 亚洲女人18毛片水真多| 99热在线精品免费全部my| 亚洲 欧洲 日韩 综合在线| 成人免费视频小说| 国产精品手机在线亚洲| www.91亚洲| 国产一级黄片儿免费看| 久久亚洲精品无码| 免费v片在线观看视频网站| 亚洲AV无码一区二区三区在线| 毛片高清视频在线看免费观看| 国产亚洲精品美女| 亚洲精品和日本精品| 中文字幕免费人成乱码中国| 久久亚洲精品中文字幕无码| 6080午夜一级毛片免费看6080夜福利 | 亚洲精品成人在线| 中文在线免费视频| 亚洲精品91在线| 国产精品无码免费视频二三区| fc2成年免费共享视频网站| 亚洲AV色香蕉一区二区| 97视频热人人精品免费| 处破女第一次亚洲18分钟| 色噜噜亚洲精品中文字幕 | 一个人免费视频在线观看www | 亚洲av综合av一区二区三区| 久久精品国产亚洲AV不卡| 最近中文字幕mv免费高清视频8| 成人亚洲国产va天堂| 亚洲最大av无码网址| 亚洲欧洲免费视频| 久久久久亚洲精品无码网址色欲| 亚洲色成人中文字幕网站 | 国产精品另类激情久久久免费| 一级做a爰片久久免费| 精品亚洲国产成AV人片传媒| 免费毛片在线视频|