1. Local Tomcat 설정
1.1 Tomcat 폴더의 server.xml 설정
1.1.1 GlobalNamingResources 추가
driverClassName엔 사용하는 드라이버를 입력하면된다.
오라클일 경우 : oracle.jdbc.driver.OracleDriver 등.
global과, name 변수에는 똑같은 이름을 넣어준다.
url이 오라클일 경우 : jdbc:oracle:thin:@IP:PORT:스키마이름
<GlobalNamingResources>
...
<Resource
auth="Container"
driverClassName="com.mysql.jdbc.Driver" // mysql, oracle, mariadb, tibero 등등 드라이버입력
global="global과 name 똑같은 이름"
maxActive="8"
maxIdle="8"
maxWait="-1"
minIdle="0"
name="global과 name 똑같은 이름"
password="DB패스워드"
type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/myDB" username="DB아이디"/>
</GlobalNamingResources>
1.2 Tomcat 폴더의 context.xml 설정
1.2.1 ResourceLink 추가
name과 global 변수엔 server.xml에서 설정한 name,과 global 이름을 똑같이 넣는다.
<Context>
...
<ResourceLink name="위에 설정한 name, global이름과 동일" global="위에 설정한 name, global이름과 동일"
auth="Container" type="javax.sql.DataSource" />
</Context
2. 개발 프로젝트(Eclipse 설정)
2.1 xml 파일에 설정
2.1.1 root-context.xml or context-datasource.xml
root-context.xml 또는 context-datasource.xml에 기존 DB접근하는 설정들을 지우거나 주석처리하고 아래의 코드를 추가한다.
또한, <value>에는 java:comp/env/jdbc/를 붙이고 server.xml에서 설정한 name, global이름과 동일하게 작성한다.
ex) server.xml에서 설정한 이름이 test라면 - java:comp/env/jdbc/test
<bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/name,global 이름과 동일</value>
</property>
</bean>
3. 에러 발생 시 처리
3.1 DB Connection 에러
3.1.1 DB connector lib 가 없을 경우
만약 실행 시 connector에러가 발생한다면, Tomcat 폴더에 각 DB의 connector 라이브러리를 추가한다.
톰캣의 lib폴더에 접근한다.
경로 - apache-tomcat-8.5.59\lib
MySQL을 사용한다면 아래의 jar 파일을 톰캣의 lib폴더에 넣는다.
MySQL - mysql-connector-java.jar
3.2 UserDatabaseRealm 에러
3.2.1 org.apache.catalina.realm.UserDatabaseRealm Start 에러
만약 시작시 org.apache.catalina.realm.UserDatabaseRealm Start 에러가 발생한다면
Tomcat의 server.xml에 Realm부분의 className="org.apache.catalina.realm.UserDatabaseRealm" 을 아래와 같이 주석 처리한다.
<Realm className="org.apache.catalina.realm.LockOutRealm">
<!-- <Realm className="org.apache.catalina.realm.UserDatabaseRealm" -->
<!-- resourceName="UserDatabase" /> -->
</Realm>
'Develop > Spring' 카테고리의 다른 글
Spring Security URL login (0) | 2021.01.22 |
---|---|
Spring Security Custom Filter (0) | 2020.11.09 |
Spring security 로그인(DB에 있는 아이디 조회) (0) | 2019.11.02 |
Spring Mybatis + MariaDB(HikariCP) 설정 (0) | 2019.10.24 |
Spring 3 에서 4로 migration (0) | 2019.10.22 |