1下载hibernate-3.6.0 Final.zip到任意目录,解压缩后得到hibernate目录

2下载slf4j-1.7.13.zip到任意目录,解压缩后得到slf4j-1.7.13

3操作数据库

sqlplus system/Oracle

创建表

create table Student

(
 Student_ID  number(6) NOT NULLPRIMARY KEY,
 Student_Name varchar2(10) NOT NULL,
 Student_Age number(2) NOT NULL
);

创建序列号用于给表Student的Student_ID赋值

CREATE SEQUENCEstudent_sequence 
INCREMENT BY 1
START WITH 1000
NOMAXVALUE
NOCYCLE
CACHE 10;

4新建一个名为Hiber的工程

5添加包

添加hibernate\jar中的所有包

添加slf4j-1.7.13中的slf4j-nop-1.7.13.jar

添加oracle的jdbc驱动程序ojdbc6.jar

添加完成后

6 添加两个配置文件和两个类

(1)hibernate.cfg.xml

  1. <!DOCTYPE hibernate-configuration PUBLIC
  2. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
  3. "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  4. <hibernate-configuration>
  5. <session-factory>
  6. <!--程序执行的时候是否显示真正的sql语句-->
  7. <property name="show_sql">true</property>
  8. <!--使用的SQL对应的“方言”,此处是Oracle11的“方言”-->
  9. <property name="dialect">org.hibernate.dialect.OracleDialect
  10. </property>
  11. <!--连接数据库的Driver-->
  12. <property name="connection.driver_class">
  13. oracle.jdbc.driver.OracleDriver
  14. </property>
  15. <!--数据库连接url-->
  16. <property name="connection.url">
  17. jdbc:oracle:thin:@localhost:1521:orcl
  18. </property>
  19. <!--用户名-->
  20. <property name="connection.username">system</property>
  21. <!--密码-->
  22. <property name="connection.password">oracle</property>
  23. <mapping resource="Student.hbm.xml"/>
  24. </session-factory>
  25. </hibernate-configuration>

(2)Student.Java

  1. public class Student
  2. {
  3. private int student_id;
  4. private String student_name;
  5. private int student_age;
  6. public int getStudent_id()
  7. {
  8. return student_id;
  9. }
  10. public String getStudent_name()
  11. {
  12. return student_name;
  13. }
  14. public int getStudent_age()
  15. {
  16. return student_age;
  17. }
  18. public void setStudent_id(int id)
  19. {
  20. this.student_id = id;
  21. }
  22. public void setStudent_name(String name)
  23. {
  24. this.student_name = name;
  25. }
  26. public void setStudent_age(int age)
  27. {
  28. this.student_age = age;
  29. }
  30. }

(3)Student.hbm.xml

  1. <?xml version="1.0"encoding="utf-8"?>
  2. <!DOCTYPEhibernate-mapping
  3. PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
  5. <hibernate-mapping>
  6. <classname="Student"table="Student">
  7. <idname="student_id"column="student_id"type="java.lang.Integer">
  8. <generatorclass="native">
  9. <paramname="sequence">student_sequence</param>
  10. </generator>
  11. </id>
  12. <propertyname="student_name"column="Student_Name"
  13. type="java.lang.String"/>
  14. <propertyname="student_age"column="Student_Age"
  15. type="java.lang.Integer"/>
  16. </class>
  17. </hibernate-mapping>

(4)Test.java

  1. importorg.hibernate.*;
  2. import org.hibernate.cfg.*;
  3. public class Test
  4. {
  5. public static voidmain(String[]args)
  6. {
  7. try
  8. {
  9. //通过Configuration获得一个SessionFactory对象
  10. SessionFactory sf = new Configuration().configure().buildSessionFactory();
  11. //打开一个Session
  12. Session session= sf.openSession();
  13. //开始一个事务
  14. Transaction tx =session.beginTransaction();
  15. //创建一个Student对象
  16. Student stu =new Student();
  17. //通过Student的setter方法改变它的属性
  18. //注意student_id不用我们设置
  19. stu.setStudent_name("zhangsan");
  20. stu.setStudent_age(18);
  21. //通过session的save()方法将Student对象保存到数据库中
  22. session.save(stu);
  23. //提交事务
  24. tx.commit();
  25. //关闭会话
  26. session.close();
  27. }
  28. catch(Exception e)
  29. {
  30. e.printStackTrace();
  31. }
  32. }
  33. }

7 验证

(1)运行Test.java,结果为

Hibernate: select student_sequence.nextvalfrom dual

Hibernate: insert into Student(Student_Name, Student_Age, student_id) values (?, ?, ?)

(2)从Oracle数据库中查询

Java笔记8:Hibernate连接Oracle的更多相关文章

  1. Java JDBC Thin Driver 连接 Oracle 三种方法说明(转载)

    一.JDBC 连接Oracle 说明 JDBC 的应用连接Oracle 遇到问题,错误如下: ORA-12505,TNS:listener does not currently know of SID ...

  2. 【JDBC】java程序通过jdbc连接oracle数据库方法

    版权声明:本文为博主原创文章(原文:blog.csdn.net/clark_xu 徐长亮的专栏).未经博主同意不得转载. https://blog.csdn.net/u011538954/articl ...

  3. hibernate 连接 oracle数据库

    前言:以下所有的操作都是基于你已经成功安装了oracle数据库并且java的开发环境正常的情况下进行的. 如果没有完善请先配置基础环境. 第一步:配置需要的环境(下载并导入需要的包). 我的百度云盘里 ...

  4. hibernate连接Oracle rac

    连接方式与普通的数据库不一样.connection.url 中使用了LOAD-BALANCE = yes 要不然会报错 <hibernate-configuration> <sess ...

  5. hibernate连接oracle数据库

    前言:以下所有的操作都是基于你已经成功安装了oracle数据库并且java的开发环境正常的情况下进行的. 如果没有完善请先配置基础环境. 第一步:配置需要的环境(下载并导入需要的包). 下载链接:ht ...

  6. 使用Hibernate连接Oracle 无法识别生成的SQL问题

    问题: 在JAVA工程中,数据库使用的是OracleXE(Oracle10g Express Edition). 使用hibernate.reveng.xml创建了实体类及其DAO类,如: tt.my ...

  7. hibernate连接oracle

    <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC           & ...

  8. Java使用数据库连接池连接Oracle数据库

    第一步:导入tomcat\lib 下的一个tomcat-dbcp.jar包第二步:在web\META-INF下新建一个context.xml文件,文件内容如下: <?xml version=&q ...

  9. hibernate 连接oracle数据库的配置 (参考)

    <?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC          &qu ...

随机推荐

  1. poj 1330(初探LCA)

    Nearest Common Ancestors Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 23795   Accept ...

  2. GZIP压缩占用CPU大吗?

    http://blog.csdn.net/hguisu/article/details/7793038 Filter之——GZIP全站压缩 http://www.cnblogs.com/jbelial ...

  3. ubuntu上安装mysql及导入导出

    ubuntu上安装mysql:  1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client3. sudo apt-get ...

  4. 使用css让文字两端对齐

    text-align:justify; text-justify:distribute-all-lines; text-align-last:justify;可以让文字实现两端对齐

  5. CentOS7安装和配置samba

    (1)samba简介 CIFS:通用的internet文件系统,windows和unix系统之间共享文件的一种协议;客户端主要是windows:支持多节点同时挂载以及并发写入 (2)samba主配置文 ...

  6. SpringMVC调用过程

    SpringMVC中的四大组件: 1.前端控制器(DispatcherServlet)      =>[无需程序员开发] 主要是负责request和response对象的转发和响应. 2.处理器 ...

  7. HDU 1829 A Bug's Life 【带权并查集/补集法/向量法】

    Background Professor Hopper is researching the sexual behavior of a rare species of bugs. He assumes ...

  8. shell 指定行插入

    #如果知道行号可以用下面的方法 sed -i '88 r b.file' a.file    #在a.txt的第88行插入文件b.txt awk '1;NR==88{system("cat ...

  9. Spring事务传播性

    事务是逻辑处理原子性的保证手段,通过使用事务控制,可以极大的避免出现逻辑处理失败导致的脏数据等问题.事务最重要的两个特性,是事务的传播级别和数据隔离级别.传播级别定义的是事务的控制范围,事务隔离级别定 ...

  10. [POJ1980]Unit Fraction Partition(搜索)

    Unit Fraction Partition Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 4571   Accepted ...