[SPRING] Spring applicationContext.xml에서 데이터 소스로 P6Spy 사용
SPRINGSpring applicationContext.xml에서 데이터 소스로 P6Spy 사용
저는 Hibernate 4, Spring 3, JSF 2.0 및 Weblogic 10.3.6을 서버로 사용하고 있습니다.
Weblogic 서버 및 applicationContext.xml에서 datasource를 다음과 같이 정의했습니다.
<!-- Data Source Declaration -->
<bean id="DataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="jdbc/myDS"/>
</bean>
SQL 매개 변수 로깅을 위해 P6Spy를 사용하려면 applicationcontext.xml에서 다음을 어떻게 추가해야합니까?
<property name="hibernate.connection.driver_class">com.p6spy.engine.spy.
P6SpyDriver</property>
어떤 도움이라도 대단히 중요합니다.
감사
해결법
-
==============================
1.스프링을 사용하여 p6spy를 통합하는 가장 쉬운 방법은 P6DataSource 클래스를 사용하는 것입니다. P6DataSource 클래스는 실제 데이터 소스의 프록시 일뿐입니다. 이를 통해 스프링 데이터 소스 팩토리 구현을 사용하여 실제 데이터 소스를 얻을 수 있습니다.
스프링을 사용하여 p6spy를 통합하는 가장 쉬운 방법은 P6DataSource 클래스를 사용하는 것입니다. P6DataSource 클래스는 실제 데이터 소스의 프록시 일뿐입니다. 이를 통해 스프링 데이터 소스 팩토리 구현을 사용하여 실제 데이터 소스를 얻을 수 있습니다.
<bean id="dataSource" class="com.p6spy.engine.spy.P6DataSource"> <constructor-arg> <bean id="DataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="jdbc/myDS"/> </bean> </constructor-arg> </bean>
XADatasource를 사용하는 경우 클래스 이름을 아래와 같이 P6ConnectionPoolDataSource로 변경하십시오. 참고 : P6ConnectionPoolDataSource는 ConnectionPoolDataSource 및 XADataSource 인터페이스를 구현합니다.
<bean id="dataSource" class="com.p6spy.engine.spy.P6ConnectionPoolDataSource"> <constructor-arg> <bean id="DataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="jdbc/myDS"/> </bean> </constructor-arg> </bean>
-
==============================
2.applicationContext.xml 파일에 세션 팩의 bean을 다음과 같이 생성해야한다.
applicationContext.xml 파일에 세션 팩의 bean을 다음과 같이 생성해야한다.
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.p6spy.engine.spy. P6SpyDriver" /> <property name="url" value="jdbc\:mysql\://localhost\:3306/testdb" /> <property name="username" value="my_username" /> <property name="password" value="my_password" /> </bean>
P6Spy 라이브러리에 대한 자세한 내용은 http://www.mkyong.com/hibernate/how-to-display-hibernate-sql-parameter-values-solution/를 참조하십시오.
우리는 "dataSource"빈을 생략하고 직접 속성을 작성할 수 있습니다. 심판 : SQL Server를위한 최대 절전 모드 구성 파일을 구성하는 방법
from https://stackoverflow.com/questions/14706029/usage-of-p6spy-with-datasource-in-spring-applicationcontext-xml by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 배치 항목 판독기가 한 번만 실행됩니다. (0) | 2019.04.01 |
---|---|
[SPRING] 스프링에서 JSON 응답을 래핑하는 방법은 무엇입니까? (0) | 2019.04.01 |
[SPRING] Spring을 사용하는 CXF에서 다중 resouceBean 구성 (0) | 2019.04.01 |
[SPRING] 그것은 나를 500 던졌습니다 봄 보안에 표현 'ROLE_USER'을 평가하지 못했습니다 (0) | 2019.04.01 |
[SPRING] 스프링 부트 JAX-WS 웹 서비스를 bean으로 등록 (0) | 2019.04.01 |