0
我在嵌入式模式下使用h2數據庫,我也使用休眠來訪問它。這是我的春天配置我使用初始化休眠:緩慢的嵌入式數據庫處理與休眠
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.H2Dialect</prop>
<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
<property name="annotatedClasses">
<list>
<value>classname1</value>
<value>classname2</value>
<value>classname3</value>
</list>
</property>
</bean>
當我嘗試插入數據的數據庫中運行非常,非常慢,我有非常巨大的IO流(快硬盤是可以的)。我認爲每次調用
getHibernateTemplate().save(question);時都會打開和關閉數據庫。有趣的是,如果我將連接字符串更改爲使用獨立服務器,則此問題會消失,並且所有工作都很好。
我的嵌入式數據庫配置有什麼問題?
UPD
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.h2.jdbcx.JdbcDataSource" />
<property name="url" value="jdbc:h2:file:C:\temp\data.db" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>
你的'dataSource'是怎麼樣的?你使用連接池和什麼是配置參數? –
@ benjamin-muschko我爲數據源添加了配置文件 –
您是否在數據庫URL中添加'; DB_CLOSE_DELAY = 1'?我不太瞭解Spring,但如果它是'DriverManagerDataSource',爲什麼不使用'org.h2.Driver'? –