글
ThreadLocal 클래스
J/Java
2012. 1. 6. 12:40
자바 1.2 버전부터 제공되고 있지만 아직 다수의 개발자들이 잘 몰라서 활용을 잘 못하는 기능이 하나 있는데, 그 기능이 바로 쓰레드 단위로 로컬 변수를 할당하는 기능이다. 이 기능은 ThreadLocal 클래스를 통해서 제공되는데
...
ThreadLocal을 이용하면 쓰레드 영역에 변수를 설정할 수 있기 때문에, 특정 쓰레드가 실행하는 모든 코드에서 그 쓰레드에 설정된 변수 값을 사용할 수 있게 된다.
...
아래는 트랜잭션처리를 위해 ThreadLocal을 이용해서 동일한 Connection을 얻기 위한 예제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 |
public class ConnectionUtil .... {
...
/*
threadLocal을 이용해서 같은 connection을 끊지 않는 이상은 공유
*/
public static final ThreadLocal<Connection> threadLocal = new ThreadLocal<Connection>();
public Connection getConnection(){
Connection connection = (Connection)threadLocal.get();
try {
if (connection == null ){
connection = dataSource.getConnection();
threadLocal.set(connection);
}
return connection;
} catch (SQLException e){
e.printStackTrace();
throw new DAOException(e.getMessage());
}
}
... } |
'J > Java' 카테고리의 다른 글
final 키워드의 중요성 (0) | 2014.03.16 |
---|---|
Java 7의 새로운 특징 : Java7에서의 중요한 변화들과 업데이트된 항목에 대한 조사. (0) | 2012.01.24 |
UIManager.setLookAndFeel ( 자바 스윙 룩앤필 설정 ) (0) | 2011.11.17 |
자바 키워드 접근자?(수정자??) (0) | 2011.11.10 |
SDK, JDK, J2SDK, J2SE, J2EE, J2ME, JRE 용어정리 (0) | 2011.11.09 |