728x90
JNDI 룩업
web application 에서 기본적으로 jndi 를 사용할려면 tomcat은 최소 5.5 이상이 필요하다
web application 의 META-INF 파일안에 context.xml 을 넣고 이를 was 에서 인식하기 위해서 최소버전이 저때부터
가능 했다고 한다.
기본적으로 context.xml 파일을 was 가 읽고 해당 jndi 연결을 하면 web application 은 해당 룩업 주소만 콜 하면 된다.
나머진 다 was 에서 연결을 맺어 둔 상황이니까
context.xml 은 아래와 같다.
<!-- oracle ConnectionPool -->
<!--
<Resource type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
auth="Container"
initialSize="3"
maxTotal="3"
maxIdle="3"
minIdle="3"
maxWaitMills="-1"
defaultAutoCommit="true"
testOnBorrow="true"
testOnReturn="false"
testWhileIdle="false"
validationQuery="SELECT 1 FROM DUAL"
name="jdbc/callDB"
username="계정"
password="비번"
url="jdbc:oracle:thin:@localhost:3306/Test"
driverClassName="oracle.jdbc.driver.OracleDriver"
/>
-->
<Resource type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
auth="Container"
initialSize="3"
maxTotal="3"
maxIdle="3"
minIdle="3"
maxWaitMills="-1"
defaultAutoCommit="true"
testOnBorrow="true"
testOnReturn="false"
testWhileIdle="false"
validationQuery="SELECT 1"
name="jdbc/baseDB"
username="계정"
password="비번"
url="jdbc:mariadb://디비ip:디비port/webAtgwTest"
driverClassName="org.mariadb.jdbc.Driver"
/>
다음 블로그 업뎃하고 대체 왜 마크 다운 색깔은 저따윈지....
암튼 저렇게 먼저 호출을 해주는데 max값하고 idle 값은 운영시에 잘 잡아야 된다 50 정도면??
저거 그대로 쓰면 3개만 호출 하니 참고 꼭 하기 바란다.
저렇게 하고 스프링 같은 경우 context-datasource.xml
<!-- ======================================================================= -->
<bean id="baseDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="${BaseWebApp.JndiName}" />
<property name="resourceRef" value="true" />
</bean>
중요한건 저기에 property name이 jndiName으로 가져가고 저 이름이 context 의 name 을 호출하면 된다는거다
${BaseWebApp.JndiName} 부부은 당연히 properties 파일에 명시되있다
BaseWebApp.JndiName=java:/comp/env/jdbc/baseDB
근데 보면 호출 네임앞에 java:/comp/env 가 더붙는다. 저게 없어도 되는지는 미처 확인 못햇다.
728x90
'java' 카테고리의 다른 글
lombok @Slf4j 사용시 maven 추가 dependency (0) | 2020.06.11 |
---|---|
nestableruntimeexception apache commons cannot be resolved (0) | 2019.05.31 |
java 공백 개행문자 탭 삭제 (0) | 2018.06.01 |
java override must a method 오류 (0) | 2018.05.08 |
javadoc error 및 no description 그리고 unmappable character for encoding ms949 문제 (0) | 2018.04.16 |