Spring DataSource 변경

아주 많은 경우는 아니지만 사용자 정보 혹은 조직 정보를 저장하는 데이터베이스의 계정 및 IP 정보를 변경하는 경우가 있습니다.
스프링에서는 프로세스가 구동될 때 Bean을 생성해서 관리하기 때문에 변경하기가 쉽지 않습니다. 그냥 간단하게 사용자가 입력한 데이터베이스 접속 정보로 변경하는 부분을 보겠습니다.

스프링 설정 파일
dataSource.xml

<bean id="dataSource" 

        class="org.apache.commons.dbcp.BasicDataSource" 

Picasa Content
destroy-method="close">

    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>

    <property name="url" value="jdbc:mysql://localhost:3306/Coopzl"/>

    <property name="username" value="coozplz"/>

    <property name="password" value="*****"/>

</bean>

해당 dataSource 를 DAO 클래스에 설정합니다.

<bean id="coozplzService" class="com.blogspot.CoozplzService">

    <property name="dataSource" ref="dataSource" />   

</bean>

파라 미터로 정보를 받습니다.

localhost_20110921_003543

Parameter 를 받는다.

String driverClass = request.getParameter("driverClass");

String url = request.getParameter("url");

String userName = request.getParameter("userName");

String userPass = request.getParameter("userPass");

String userQuery = request.getParameter("userQuery");

String deptQuery = request.getParameter("deptQuery");

CoozplzService 에 DataSource를 설정한다.

BasicDataSource dataSource = new BasicDataSource();

dataSource.setUrl(config.getUrl());                    // URL

dataSource.setUsername(config.getUserName());          // 이름

dataSource.setPassword(config.getUserPass());          // 비번

dataSource.setDriverClassName(config.getDriverClass());// 클래스

coozplzService.setDataSource(dataSource);              // 설정

이상 끝…^^

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중