https://gitlab.com/Youngju-Jang/javacoursework/-/tree/master/Chapter6/6-11
MyLogger 예제 : 싱글톤 패턴임
package ch6;
import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.logging.SimpleFormatter;
public class MyLogger {
Logger logger = Logger.getLogger("mylogger");
private static MyLogger instance = new MyLogger();
public static final String errorLog = "log.txt";
public static final String warningLog = "warning.txt";
public static final String fineLog = "fine.txt";
private FileHandler logFile = null;
private FileHandler warningFile = null;
private FileHandler fineFile = null;
private MyLogger(){
try {
logFile = new FileHandler(errorLog, true);
warningFile = new FileHandler(warningLog, true);
fineFile = new FileHandler(fineLog, true);
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
logFile.setFormatter(new SimpleFormatter());
warningFile.setFormatter(new SimpleFormatter());
fineFile.setFormatter(new SimpleFormatter());
logger.setLevel(Level.ALL); //finest 부터 다찍으라는 것
fineFile.setLevel(Level.FINE); //이건 fine레벨부터 찍으라
warningFile.setLevel(Level.WARNING); // 이건 warning부터 찍으라
logger.addHandler(logFile);
logger.addHandler(warningFile);
logger.addHandler(fineFile);
}
public static MyLogger getLogger(){
return instance;
}
public void log(String msg){
logger.finest(msg);
logger.finer(msg);
logger.fine(msg);
logger.config(msg);
logger.info(msg);
logger.warning(msg);
logger.severe(msg);
}
public void fine(String msg){
logger.fine(msg);
}
public void warning(String msg){
logger.warning(msg);
}
}
package ch6;
public class LoggerTest {
public static void main(String[] args) {
MyLogger logger = MyLogger.getLogger();
logger.log("log test");
}
}
몰러슈벌 ㅇㅅㅇ
예제하나 더있음 위에링크가서 보셈 ㅇㅅㅇ
ch6.16~ 보조스트림, 직렬화, 그외 여러 입출력클래스 (0) | 2022.07.13 |
---|---|
6.12 입출력스트림~ (0) | 2022.07.12 |
ch6.9~.10 예외처리 (0) | 2022.07.10 |
ch6.7 스트림을 활용하여 패키지 여행 비용 계산하기 (0) | 2022.07.07 |
ch6.5 stream (0) | 2022.07.07 |
댓글 영역