public class BadLogger {<br />private Logger m_log = null;<br /> public BadLogger(Level l){<br /> FileHandler fh = null;<br /> ConsoleHandler ch = new ConsoleHandler();<br /> m_log = Logger.getLogger("no2.BadLogger.logger");<br /> try{<br /> fh = new FileHandler("F://log.xml");//儲存記錄檔<br /> m_log.addHandler(fh);//與記錄檔綁定<br /> }catch(IOException e){<br /> e.printStackTrace();<br /> }<br /> m_log.addHandler(ch);//與控制台資訊綁定<br /> m_log.setLevel(l);<br /> m_log.setUseParentHandlers(false);<br /> ch.setLevel(l);<br /> }<br /> public void test(){<br /> System.out.println("The level for the log is: "+ m_log.getLevel());<br /> m_log.finest("This is a test for finest");<br /> m_log.finer("This is a test for finer");<br /> m_log.fine("This is a test for fine");<br /> m_log.info("This is a test for info");<br /> m_log.warning("This is a warning test");<br /> m_log.severe("This is a severe test");<br /> }<br /> public static void main(String[] args){<br /> Level loglevel = Level.INFO;<br /> //根據輸入參數來決定用那種level來顯示日誌<br /> if ( args.length !=0 ){<br /> if ( args[0].equals("ALL") ){<br /> loglevel = Level.ALL;<br /> }<br /> else if ( args[0].equals("FINE") ){<br /> loglevel = Level.FINE;<br /> }<br /> else if ( args[0].equals("FINEST") ){<br /> loglevel = Level.FINEST;<br /> }<br /> else if ( args[0].equals("WARNING") ){<br /> loglevel = Level.WARNING;<br /> }<br /> else if ( args[0].equals("SEVERE") ) {<br /> loglevel = Level.SEVERE;<br /> }<br /> }<br /> BadLogger logex = new BadLogger(loglevel);<br /> logex.test();<br /> }<br />}