我有一个使用Hibernate的持久性的现有Java Web应用程序。有人告诉我,我必须与加密的DB进行对话- 所以我的第一个想法是将其设置为通过SSL进行通信-并研究了如何设置Oracle以通过SSL侦听JDBC-
http://www.oracle.com/technology/tech/java/sqlj_jdbc/pdf/wp-oracle- jdbc_thin_ssl_2007.pdf
并编写了一个快速测试类来验证它是否已设置并且可以正常工作(通过标准JDBC连接)。这给我带来了配置Hibernate的问题- 不幸的是,我看不到hibernate如何支持它?
Hibernate使用标准的JDBC数据源,因此不需要特定于Hibernate的配置。
这是一个在使用Spring配置Hibernate时应该起作用的简单示例:
<bean id="dataSource" class="oracle.jdbc.pool.OracleDataSource"> <property name="URL"><value><!-- JDBC URL that specifies SSL connection --></value></property> <!-- other relevant properties, like user and password --> <property name="connectionProperties> <value> oracle.net.ssl_cipher_suites: (ssl_rsa_export_with_rc4_40_md5, ssl_rsa_export_with_des40_cbc_sha) oracle.net.ssl_client_authentication: false oracle.net.ssl_version: 3.0 oracle.net.encryption_client: REJECTED oracle.net.crypto_checksum_client: REJECTED </value> </property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- classes etc --> </bean>