首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >spring hibernate hibernate.connection.provider_class未被调用

spring hibernate hibernate.connection.provider_class未被调用
EN

Stack Overflow用户
提问于 2013-04-12 14:28:52
回答 1查看 1.3K关注 0票数 2

我在application.My配置文件中使用了Spring3和hibernate 3.x和mule 3.x

代码语言:javascript
运行
复制
<spring:bean id="sessionFactory"
            class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
            <spring:property name="dataSource" ref="dataSource" />
            <spring:property name="packagesToScan" value="${hibernate.packagesToScan}" />
            <spring:property name="eventListeners">
                <spring:map>
                    <spring:entry key="pre-insert">
                        <spring:bean
                            class="com.myapp.listener.PreInsertOrUpdateEventListener"
                            id="preInsertOrUpdateEventListener" />
                    </spring:entry>
                    <spring:entry key="pre-update">
                        <spring:bean
                            class="com.myapp.listener.PreInsertOrUpdateEventListener"
                            id="preInsertOrUpdateEventListener" />
                    </spring:entry>
                </spring:map>
            </spring:property>
            <spring:property name="hibernateProperties">
                <spring:props>
                    <spring:prop key="hibernate.dialect">${hibernate.dialect}</spring:prop>
                    <spring:prop key="hibernate.show_sql">${hibernate.show_sql}</spring:prop>
                    <spring:prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}
                    </spring:prop>
                    <spring:prop key="hibernate.temp.use_jdbc_metadata_defaults">${hibernate.temp.use_jdbc_metadata_defaults}
                    </spring:prop>
                    <spring:prop key="hibernate.connection.provider_class">${hibernate.connection.provider_class}
                    </spring:prop>
                    <spring:prop key="hibernate.dbcp.initialSize">${hibernate.dbcp.initialSize}
                    </spring:prop>
                    <spring:prop key="hibernate.dbcp.maxActive">${hibernate.dbcp.maxActive}
                    </spring:prop>
                    <spring:prop key="hibernate.dbcp.maxIdle">${hibernate.dbcp.maxIdle}
                    </spring:prop>
                    <spring:prop key="hibernate.dbcp.minIdle">${hibernate.dbcp.minIdle}
                    </spring:prop>
                </spring:props>
            </spring:property>
        </spring:bean>

<spring:bean id="dataSource" name="dataSource"
            class="org.apache.commons.dbcp.BasicDataSource">
            <spring:property name="driverClassName" value="${db.driverClassName}" />
            <spring:property name="url" value="${db.url}" />
            <spring:property name="username" value="${db.username}" />
            <spring:property name="password" value="${db.password}" />
        </spring:bean>

我想为连接池调用我的自定义连接提供程序类,但它没有被调用。有谁能告诉我问题出在哪里?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-04-30 20:59:14

AnnotationSessionFactoryBeanLocalSessionFactoryBean用spring提供的LocalDataSourceConnectionProvider替换了连接提供程序。所以要么你必须使用它,要么通过扩展它来创建你自己的自定义LocalSessionFactoryBean

查看LocalSessionFactoryBean源代码,了解它是如何设置connectionProvider值的。

希望能有所帮助。我也在寻找一个很好的解决方案。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15964546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档