본문 바로가기

WAS/JBoss&WildFly

DB connection pool 적용 우선순위?

728x90

DB 접근 시 소스 레벨 DBCP 설정이 우선이냐, JBoss datasource가 우선이냐

 

1. JBoss 설정을 우선 하고싶다. → JNDI lookup 코드가 있어야 함.

아래 1.1, 1.2 둘 중 하나 선택.

 

//1.1 JNDI lookup

Context ctx = new InitialContext();

DataSource ds = (DataSource) ctx.lookup("java:jboss/datasources/MyDS");

 

//1.2 @Resource 주입

@Resource(lookup = "java:jboss/datasources/MyDS")

private DataSource dataSource;

 

2. 소스 내 DBCP가 우선적으로 동작하길 원한다. → 소스 내에 bean 주입

// Apache DBCP로 직접 생성

BasicDataSource ds = new BasicDataSource();

ds.setUrl("jdbc:oracle:thin:@host:1521:sid");

ds.setUsername("user");

ds.setPassword("pass");

 

// 또는 Spring Bean으로 등록된 DBCP DataSource 주입

@Autowired

private DataSource dataSource;