Было очень интересно, когда я использовал рамки от Craftsman. Эта платформа очень полезна для ведения журнала JDBC.
Craftsman Spy — это открытый и бесплатный фреймворк для ведения журнала JDBC, это реализация драйвера JDBC, вы можете скачать его с http://zer0.free.fr/craftsman/spy.php , а также связать его в своем локальном репозитории для Maven: как это работает? Я объясню это в моей следующей статье.
Каковы преимущества мастера Spy?
Шпионский журнал регистрирует все соединения и обработку SQL с выполненным затраченным временем, все хранимые процедуры с аргументами, все пакетные обработки и наборы результатов. Craftsman SPY Framework очень полезен для всех JunitTests, потому что вы видите, что работает под крышей и все скрытые процессы. Вы не можете найти все эти возможности в Spring JDBC Framework, жалко!
Как Spring-JDBC работает без Spy Framework?
Вы можете использовать стандартный JDBCTemplate из Spring, как показано в следующей конфигурации, которую я взял из Spring Data для доступа к JDBC:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <bean id="corporateEventDao" class="com.example.JdbcCorporateEventDao"> <property name="dataSource" ref="dataSource"/> </bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driverClassName}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </bean> <context:property-placeholder location="jdbc.properties"/> </beans>
И теперь вы можете работать с источником данных следующим образом:
public class JdbcCorporateEventDao implements CorporateEventDao { private JdbcTemplate jdbcTemplate; public void setDataSource(DataSource dataSource) { this.jdbcTemplate = new JdbcTemplate(dataSource); } }
Как Spring-JDBC работает со средой Spy
Связать шпион Craftsman и среду Spring JDBC очень просто. Вы должны только связать загрузку JAR-файлов SPY с http://zer0.free.fr/craftsman/spy.php или использовать Maven для получения Jars из вашего локального репозитория. Во-вторых, вы должны изменить только конфигурацию Spring-JDBC:
- Измените имя драйвераClassName на craftsman.spy.SpyDriver
- И вы также должны изменить URL-адрес для способных Spy Framework
Как это:
Перед:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/></bean>
После:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="craftsman.spy.SpyDriver" <property name="url" value="jdbc:spy:mysql://server.com:5000/database"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </bean>
Надеюсь это был полезный пост.