Spring same dataSource for different JdbcTemplates -
i have different dao's have same class require different jdbctemplates use same type of datasources. there way consolidate code, don't need use copy , paste.
an example of have in xml is:
<bean id="jdbctemplate1" class="org.springframework.jdbc.core.jdbctemplate"> <property name="datasource" ref="jdbcdatasource1" /> </bean> <bean id="jdbcdatasource1" class="com.zaxxer.hikari.hikaridatasource" destroy-method="shutdown"> <constructor-arg> <bean class="com.zaxxer.hikari.hikariconfig"> <constructor-arg> <props> <prop key="datasource.url">datasourceurl </prop> <prop key="datasource.user">user</prop> <prop key="datasource.password">password</prop> </props> </constructor-arg> <property name="datasourceclassname" value="com.mysql.jdbc.jdbc2.optional.mysqldatasource" /> </bean> </constructor-arg> </bean> <bean id="jdbctemplate2" class="org.springframework.jdbc.core.jdbctemplate"> <property name="datasource" ref="jdbcdatasource2" /> </bean> <bean id="jdbcdatasource2" class="com.zaxxer.hikari.hikaridatasource" destroy-method="shutdown"> <constructor-arg> <bean class="com.zaxxer.hikari.hikariconfig"> <constructor-arg> <props> <prop key="datasource.url">datasourceurl </prop> <prop key="datasource.user">user</prop> <prop key="datasource.password">password</prop> </props> </constructor-arg> <property name="datasourceclassname" value="com.mysql.jdbc.jdbc2.optional.mysqldatasource" /> </bean> </constructor-arg> </bean>
as seen code, jdbcdatasource1
, jdbcdatasource2
same. there way consolidate two?
this way pass same datasource 2 jdbc templates:
<bean id="jdbctemplate1" class="org.springframework.jdbc.core.jdbctemplate"> <property name="datasource" ref="jdbcdatasource" /> </bean> <bean id="jdbctemplate2" class="org.springframework.jdbc.core.jdbctemplate"> <property name="datasource" ref="jdbcdatasource" /> </bean> <bean id="jdbcdatasource" class="com.zaxxer.hikari.hikaridatasource" destroy-method="shutdown"> <constructor-arg> <bean class="com.zaxxer.hikari.hikariconfig"> <constructor-arg> <props> <prop key="datasource.url">datasourceurl </prop> <prop key="datasource.user">user</prop> <prop key="datasource.password">password</prop> </props> </constructor-arg> <property name="datasourceclassname" value="com.mysql.jdbc.jdbc2.optional.mysqldatasource" /> </bean> </constructor-arg> </bean>
Comments
Post a Comment