1. 程式人生 > >Oracle 在Spring+Hibernate中的使用

Oracle 在Spring+Hibernate中的使用

   本文會基於一個搭建好的工程更新配置檔案完成。

1、準備

    您需要一個搭建好的Spring+Hibernate工程。

2、jdbc驅動

    若已安裝Oracle,在Oracle主目錄中有,比如本人的為:C:\app\iamanxpp\product\12.1.0\dbhome_1\jdbc。

    把ojdbc7.jar新增到工程中即可。

    因為為Maven工程,新增jar包方式如下:

  1. <dependency>
  2. <groupId>com.oracle</groupId>
  3. <artifactId>ojdbc14</artifactId>
  4. <version>10.2.0.4.0</version>
  5. <scope>system</scope>
  6. <systemPath>C:\java\workspace\web\Oracle12JDBC\lib\ojdbc7.jar</systemPath>
  7. </dependency>

    其中systemPath請填入您實際的jdbc地址。

    如果web容器使用tomcat,請將ojdbc7.jar同時新增到tomcat中的lib目錄,比如本人為:

  1. C:\java\apache-tomcat-7.0.61\lib

    下面開始更新專案的配置。

3、配置檔案

    db.properties

    請修改相關引數為您實際的值:

  1. #Oracle
  2. jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
  3. jdbc.url=jdbc:oracle:thin:@//127.0.0.1:1521/orcl
  4. jdbc.username=yourusername
  5. jdbc.password=yourpassword

    applicationContext.xml

    資料來源的配置請保證如下:

  1. <context:property-placeholderlocation="classpath:/db.properties"
    />
  2. <beanid="dataSource"class="org.apache.commons.dbcp.BasicDataSource"
  3. destroy-method="close">
  4. <propertyname="driverClassName"value="${jdbc.driverClassName}"/>
  5. <propertyname="url"value="${jdbc.url}"/>
  6. <propertyname="username"value="${jdbc.username}"/>
  7. <propertyname="password"value="${jdbc.password}"/>
  8. <propertyname="maxActive"value="100"></property>
  9. <propertyname="minIdle"value="20"></property>
  10. <propertyname="maxWait"value="3000"></property>
  11. <propertyname="initialSize"value="30"></property>
  12. </bean>

    各大資料庫sql是有差別的,需要配置方言:

  1. <beanid="sessionFactory"
  2. class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
  3. <propertyname="dataSource"ref="dataSource"/>
  4. <propertyname="packagesToScan">
  5. <list>
  6. <value>com.anxpp.demo.core.entity</value>
  7. </list>
  8. </property>
  9. <propertyname="hibernateProperties">
  10. <props>
  11. <propkey="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
  12. <propkey="hibernate.show_sql">false</prop>
  13. <propkey="hibernate.format_sql">true</prop>
  14. <propkey="hibernate.hbm2ddl.auto">update</prop>
  15. </props>
  16. </property>
  17. </bean>

4、執行測試

    接下來就可以編寫對應的Controller、Service和Dao層程式碼了,因為是基於上面提到的那個工程的,所以這裡簡單修改就能演示了。

    新增程式碼:

  1. @RequestMapping("/oracle")
  2. @ResponseBody
  3. publicString oracleCreateTable(){
  4. logger.trace("oracle");
  5. demoService.save("anxpp");
  6. return demoService.findAll();
  7. }

    執行測試:

    01

    多次請求將多次插入值到資料庫,並返回。

5、更多文章