쓰레드 로컬
사용법
- 값 저장 : ThreadLocal.set(xxx)
- 값 조회 : ThreadLocal.get()
- 값 제거 : ThreadLocal.remove()
쓰레드 로컬 주의 사항
- 쓰레드 로컬의 값을 사용 후 제거하지 않으면 WAS(톰캣)처럼 쓰레드 풀을 사용하는 경우 심각한 문제가 발생할 수 있다.
템플릿 메서드 패턴
- 추상클래스로
- 두 개를 만들고 자식 클래스에서 추상 메서드를 구현한다.
- 상속과 다형성으로 중복 문제를 해결하는 패턴
// Template 추상 클래스
public abstract class MyTemplate {
public void execute() {
System.out.println("시작");
call();
System.out.println("종료");
}
protected abstract void call();
}
// 구현체
public class MyTemplateImpl extends MyTemplate {
@Override
protected void call() {
System.out.println("실행");
}
}
// Client
Mytemplate template = new MyTemplateImpl();
template.execute();