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搭橋成功,大功告成!!!
相關文章
- hibernate基礎配置
- 01、Hibernate安裝配置
- Hibernate連線池配置
- 如何配置Hibernate支援MySqlMySql
- Hibernate配置檔案詳解
- Hibernate的配置檔案解析
- java中Hibernate的環境配置Java
- 學習Hibernate原始碼三_Hibernate中的配置檔案解析原始碼
- Spring的DataSource配置、將Hibernate配置全部寫到Spring配置Spring
- Spring中如何配置Hibernate事務Spring
- 關於Hibernate在Jbuilder中的配置UI
- eclipse 配置hibernate自動生成工具Eclipse
- eclipse+hibernate 連線Oracle (-)EclipseOracle
- Struts2,Hibernate,Spring 環境配置Spring
- 使用maven搭建hibernate的pom檔案配置Maven
- eclipse+hibernate 連線Oracle (二)EclipseOracle
- hibernate中oracle的問題,,急啊?Oracle
- Hibernate配置檔案中對映元素詳解
- Hibernate 3.6.1 配置檔案dtd URL改變了
- Struts +Spring + Hibernate 的配置問題,謝謝!Spring
- Hibernate配置連線SQL SERVER2000SQLServer
- Hibernate中二級快取(sessionFactory)的配置及其使用。快取Session
- Struts2+hibernate+spring配置程式整合下載Spring
- jdon+hibernate+ sql server 2000 怎麼配置SQLServer
- strut+hibernate+tomcat資料池配置問題Tomcat
- hibernate一對多、多對多的實體設計和配置檔案配置
- 在Hibernate中關於Oracle sequence的使用KHOracle
- Hibernate呼叫oracle儲存過程的問題Oracle儲存過程
- struts string和hibernate 如何配置dataSource為連線池
- Oracle安全配置Oracle
- oracle MTS 配置Oracle
- oracle 配置 oemOracle
- oracle時間欄位預設值,hibernate對映Oracle
- 現有表設計如下 如何生成hibernate的配置檔案???
- 將Hibernate配置到Weblogic JNDI上的詳細步驟Web
- Hibernate SQL方言 (hibernate.dialect)SQL
- Hibernate學習:初識hibernate
- 寶付oracle配置Oracle