Java笔记8:Hibernate连接Oracle
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
- <!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
- <hibernate-configuration>
- <session-factory>
- <!--程序执行的时候是否显示真正的sql语句-->
- <property name="show_sql">true</property>
- <!--使用的SQL对应的“方言”,此处是Oracle11的“方言”-->
- <property name="dialect">org.hibernate.dialect.OracleDialect
- </property>
- <!--连接数据库的Driver-->
- <property name="connection.driver_class">
- oracle.jdbc.driver.OracleDriver
- </property>
- <!--数据库连接url-->
- <property name="connection.url">
- jdbc:oracle:thin:@localhost:1521:orcl
- </property>
- <!--用户名-->
- <property name="connection.username">system</property>
- <!--密码-->
- <property name="connection.password">oracle</property>
- <mapping resource="Student.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
(2)Student.Java
- public class Student
- {
- private int student_id;
- private String student_name;
- private int student_age;
- public int getStudent_id()
- {
- return student_id;
- }
- public String getStudent_name()
- {
- return student_name;
- }
- public int getStudent_age()
- {
- return student_age;
- }
- public void setStudent_id(int id)
- {
- this.student_id = id;
- }
- public void setStudent_name(String name)
- {
- this.student_name = name;
- }
- public void setStudent_age(int age)
- {
- this.student_age = age;
- }
- }
(3)Student.hbm.xml
- <?xml version="1.0"encoding="utf-8"?>
- <!DOCTYPEhibernate-mapping
- PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
- <hibernate-mapping>
- <classname="Student"table="Student">
- <idname="student_id"column="student_id"type="java.lang.Integer">
- <generatorclass="native">
- <paramname="sequence">student_sequence</param>
- </generator>
- </id>
- <propertyname="student_name"column="Student_Name"
- type="java.lang.String"/>
- <propertyname="student_age"column="Student_Age"
- type="java.lang.Integer"/>
- </class>
- </hibernate-mapping>
(4)Test.java
- importorg.hibernate.*;
- import org.hibernate.cfg.*;
- public class Test
- {
- public static voidmain(String[]args)
- {
- try
- {
- //通过Configuration获得一个SessionFactory对象
- SessionFactory sf = new Configuration().configure().buildSessionFactory();
- //打开一个Session
- Session session= sf.openSession();
- //开始一个事务
- Transaction tx =session.beginTransaction();
- //创建一个Student对象
- Student stu =new Student();
- //通过Student的setter方法改变它的属性
- //注意student_id不用我们设置
- stu.setStudent_name("zhangsan");
- stu.setStudent_age(18);
- //通过session的save()方法将Student对象保存到数据库中
- session.save(stu);
- //提交事务
- tx.commit();
- //关闭会话
- session.close();
- }
- catch(Exception e)
- {
- e.printStackTrace();
- }
- }
- }
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的更多相关文章
- Java JDBC Thin Driver 连接 Oracle 三种方法说明(转载)
一.JDBC 连接Oracle 说明 JDBC 的应用连接Oracle 遇到问题,错误如下: ORA-12505,TNS:listener does not currently know of SID ...
- 【JDBC】java程序通过jdbc连接oracle数据库方法
版权声明:本文为博主原创文章(原文:blog.csdn.net/clark_xu 徐长亮的专栏).未经博主同意不得转载. https://blog.csdn.net/u011538954/articl ...
- hibernate 连接 oracle数据库
前言:以下所有的操作都是基于你已经成功安装了oracle数据库并且java的开发环境正常的情况下进行的. 如果没有完善请先配置基础环境. 第一步:配置需要的环境(下载并导入需要的包). 我的百度云盘里 ...
- hibernate连接Oracle rac
连接方式与普通的数据库不一样.connection.url 中使用了LOAD-BALANCE = yes 要不然会报错 <hibernate-configuration> <sess ...
- hibernate连接oracle数据库
前言:以下所有的操作都是基于你已经成功安装了oracle数据库并且java的开发环境正常的情况下进行的. 如果没有完善请先配置基础环境. 第一步:配置需要的环境(下载并导入需要的包). 下载链接:ht ...
- 使用Hibernate连接Oracle 无法识别生成的SQL问题
问题: 在JAVA工程中,数据库使用的是OracleXE(Oracle10g Express Edition). 使用hibernate.reveng.xml创建了实体类及其DAO类,如: tt.my ...
- hibernate连接oracle
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC & ...
- Java使用数据库连接池连接Oracle数据库
第一步:导入tomcat\lib 下的一个tomcat-dbcp.jar包第二步:在web\META-INF下新建一个context.xml文件,文件内容如下: <?xml version=&q ...
- hibernate 连接oracle数据库的配置 (参考)
<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC &qu ...
随机推荐
- aliyun服务器ubuntu系统+MySQL+SqlDeveloper
首先按照 https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-16-04 https://w ...
- [你必须知道的.NET]第二十七回:interface到底继承于object吗?
发布日期:2009.03.05 作者:Anytao © 2009 Anytao.com ,Anytao原创作品,转贴请注明作者和出处. 说在,开篇之前 在.NET世界里,我们常常听到的一句话莫过于“S ...
- 寻找与网页内容相关的图片(三)网易新闻与qq空间的做法
寻找与网页相关的图片现在看来无非有两种方式,第一种是网页自己指定,第二种是通过算法推断. 对于网站的内容提供者来说,他自己知道相关的图片在哪,正如前文所述可以在HTML的头部加上META标签,也可以像 ...
- H264与AAC ES打包成MP4
注意 设置图像的sps pps MP4AddH264SequenceParameterSet(file,video,sps,sizeof(sps)); MP4AddH264PictureParamet ...
- python模块安装路径
Unix(Linux): prefix/lib/pythonX.Y/site-packages 默认路径:/usr/local/lib/pythonX.Y/site-packages 另外,在Unix ...
- 剑指offer-链表中倒数第 K 个结点
输入一个链表,输出该链表中倒数第k个结点. /* public class ListNode { int val; ListNode next = null; ListNode(int val) { ...
- Linux操作命令(二)
本次实验将介绍 Linux 命令中 mkdir.rm.mv.cp.cat.nl 命令的用法. 1.mkdir mkdir命令用来创建指定名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的 ...
- 腾讯QQ的聊天记录中的图片记录造假
前不久和朋友在群里聊天时,突然出现了一个BUG,就是一个群友发了A图片,但在我这边显示得却是B图片.当时就猜测,腾讯为了节省流量或者手机资源的原因,给每一张图片弄了个唯一ID,遇到相同ID的就直接从本 ...
- (转)求质数算法的N种境界[1] - 试除法和初级筛法
★引子 前天,俺在<俺的招聘经验[4]:通过笔试答题能看出啥?>一文,以"求质数"作为例子,介绍了一些考察应聘者的经验.由于本文没有政治敏感内容,顺便就转贴到俺在CSD ...
- BestCoder Round #65 (ZYB's Premutation)
ZYB's Premutation Accepts: 220 Submissions: 983 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: ...