Hibernate配置Oracle
Hibernate配置之Oracle篇:
Oracle的安裝我就不說了,網上有很多教程,不得不說有點麻煩(口令管理的地方需要注意,千萬別忘了,要不以後會更麻煩),沒裝明白解除安裝起來就更麻煩了,我來來回回折騰了差不多三遍才差不多弄明白。需要注意的地方是安裝的時候如果選擇的是建立和配置資料庫,那麼安裝完成以後就已經新建了一個資料庫,不需要再次新建資料庫了,而這個資料庫的名字如果沒有手動更改,那麼應該就是預設的orcl了。
因為之前用的eclipse是比較新的oxygen版本,所以有很多外掛已經不支援了,用起來比較麻煩,所以就下載了一個eclipse-jee-juno-SR1-win32-x86_64的64位eclipse,感覺比較好用,廢話說到這裡,下面進入Hibernate的配置:
1、第一步當然是要新建一個專案了(開啟eclipse就算是第零步吧)File —>new—>Java Project—>輸入Project name(FirstHibernate)—>Finish;
需要注意的是JDK版本的選擇,有高版本的儘量選擇高版本的!!!
2、匯入jar包,必需的jar包有Hibernate安裝目錄下的lib資料夾下的required資料夾中的所有jar包以及連線Oracle資料庫的驅動,連線Oracle資料庫的驅動在Oracle安裝目錄下的jdbc下的lib( E:\app\root\product\12.1.0\dbhome_1\jdbc\lib,此處為我的目錄 )資料夾裡,方便起見,附上目錄圖片和匯入的jar包圖片:
還有日誌檔案的jar包,不是執行所必需的,但是要顯示專案的日誌資訊就需要匯入。
3、編寫實體類User.java(為了隱藏專案複雜性,在src目錄下新建org.User包):
package org.User;
public class User {
private int id;
private int age;
private String name;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
4、編寫配置檔案(用來配置Oracle資料庫,此檔案要放在src目錄下)hibernate.cfg.xml():
<!--
~ Hibernate, Relational Persistence for Idiomatic Java
~
~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.
~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
-->
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="show_sql">true</property>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle9iDialect</property>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.username">system</property>
<property name="hibernate.connection.password">123456</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property>
<mapping resource="org/User/hibernate.hbm.xml"/>
</session-factory>
</hibernate-configuration>
這裡可以用Data Source Explorer測試一下配置是否成功!
5、在資料庫中新建表(t_user),此處為資料庫操作不進行詳細介紹,需要注意的是Oracle表的重新整理是要寫SQL語句的,之前因為不知道這個事Gd我愣是把配置好的Hibernate又折騰了一遍:
6、編寫對映檔案hibernate.hbm.xml(實體類和資料庫表之間的對映,和實體類放在同一個包下):
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2017-8-22 10:37:16 by Hibernate Tools 3.5.0.Final -->
<hibernate-mapping>
<class name="org.User.User" table="T_USER">
<id name="id" type="int">
<column name="ID" />
<generator class="increment" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property>
<property name="password" type="java.lang.String">
<column name="PASSWORD" />
</property>
<property name="age" type="int">
<column name="AGE" />
</property>
</class>
</hibernate-mapping>
這裡主要是實體類和資料庫表之間的對應關係!
7、新建包(org.Test),編寫測試類(用於執行和驗證整體配置是否成功):
package org.Test;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.User.User;
public class Test{
public void testIncrease(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
User u = new User();
u.setName("小巴");
u.setPassword("aiweigege");
session.save(u);
tx.commit();
} catch (Exception e)
{
// TODO: handle exception
if(null!=tx){tx.rollback();}
e.printStackTrace();
}
}
public static void main(String[] args) {
Test test = new Test();
test.testIncrease();
//test.testDelete();
}
}
這裡需要掌握java裡的一些關於session類的知識了!
8、執行Test.java,檢視是否配置成功:
如果出現以下結果,證明配置成功!
此時在資料庫中的表已經被更新:
Hibernate和Oracle搭橋成功,大功告成!!!
相關文章
- 01、Hibernate安裝配置
- Spring中如何配置Hibernate事務Spring
- java中Hibernate的環境配置Java
- 在Hibernate中關於Oracle sequence的使用KHOracle
- Hibernate配置檔案中對映元素詳解
- Oracle安全配置Oracle
- Hibernate中二級快取(sessionFactory)的配置及其使用。快取Session
- Hibernate SQL方言 (hibernate.dialect)SQL
- [Oracle] -- 配置Oracle環境變數Oracle變數
- 11. Oracle for Linux安裝和配置—11.3. Oracle安裝和配置—11.3.3. Oracle net配置OracleLinux
- Hibernate
- oracle安裝配置Oracle
- 寶付oracle配置Oracle
- oracle dataguard broker 配置Oracle
- hibernate一對多、多對多的實體設計和配置檔案配置
- hibernate使用
- Hibernate框架框架
- Oracle Stream概述與配置Oracle
- 九、Oracle網路配置Oracle
- oracle手動配置互信Oracle
- 4.1.5 Oracle 重啟配置Oracle
- Oracle資料庫配置Oracle資料庫
- Oracle DG管理Broker配置Oracle
- Oracle 單機配置DataGuardOracle
- hibernate 自定義表名與列名 - 增刪改查分頁 - 相容Mysql和OracleMySqlOracle
- 使用ORACLE ASMFD配置ORACLE儲存標準化OracleASM
- 手寫 Hibernate ORM 框架 00-hibernate 簡介ORM框架
- 【BUILD_ORACLE】Oracle RAC配置ASM Filter Driver(ASMFD)(二)詳細配置步驟UIOracleASMFilter
- hibernate詳解
- Spring 整合 HibernateSpring
- Hibernate填坑
- Hibernate 查詢
- oracle RAC手動配置互信Oracle
- Oracle listener log配置與管理Oracle
- 4.2.1 關於配置Oracle RestartOracleREST
- Oracle 19c Broker配置Oracle
- JAVA spring&hibernate資料來源配置不當報錯key postgresIsPoolJavaSpring
- 11. Oracle for Linux安裝和配置—11.3. Oracle安裝和配置—11.3.1. Oracle軟體安裝OracleLinux