文档章节

hibernate笔记1

fire-fly
 fire-fly
发布于 2015/11/11 09:12
字数 502
阅读 6
收藏 0

hibernate配置

  1. 导入hibernate的jar包

  2. 编写hibernate配置文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?xml version= "1.0"   encoding= "UTF-8" ?>
    <!DOCTYPE hibernate-configuration PUBLIC
             "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
             "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd" >
    <hibernate-configuration>
         <session-factory>
             <!-- 数据库的方言,每个数据库都有自己的方言 -->
             <property name= "dialect" >org.hibernate.dialect.MySQLDialect</property>
             <property name= "connection.url" >jdbc:mysql: //127.0.0.1:3306/hibernate</property>
             <property name= "connection.username" >root</property>
             <property name= "connection.password" ></property>
             <property name= "connection.driver_class" >com.mysql.jdbc.Driver</property>
             <!-- 是否在控制台输出对应的sql语句 -->
             <property name= "show_sql" > true </property>
             <!-- 数据库更新方案,update是更新,还有覆盖之类的东西,用到时候去查找 -->
             <property name= "hbm2ddl.auto" >update</property>
             <!-- 加载映射文件 -->
             <mapping resource= "com/firefly/hibernate/domain/First.hbm.xml" />
         </session-factory>
    </hibernate-configuration>
  3. 编写实体类,并未实体类加载映射文件,记得倒回去修改配置文件中的加载映射文件语句。

  4. 编写java文件对数据库进行操作


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    package   com.firefly.hibernate.hibernate;
     
    import   org.hibernate.Session;
    import   org.hibernate.SessionFactory;
    import   org.hibernate.Transaction;
    import   org.hibernate.cfg.Configuration;
     
    import   com.firefly.hibernate.domain.First;
     
    public   class   News {
         public   static   void   main( String [] args) throws Exception {
             //获得configuration对象
             Configuration conf =  new   Configuration().configure();
             //创建session工厂
             SessionFactory sf = conf.buildSessionFactory();
             //打开session
             Session sess = sf.openSession();
             //开始事务
             Transaction tx =sess.beginTransaction();
             First f =  new   First(); 
             f.setId( 1 );
             f.setTitle( "我是第一条数据!" );
             f.setContent( "I'm content" );
             sess.save(f);
             //提交事务
             tx.commit();
             //关闭session
             sess.close();
             //关闭session工厂
             sf.close();
         }
    }


        以上是向数据库中添加一条数据

    

关于hibernate运行流程:

            hibernate的思想是将对关系型数据库的操作改变为符合java面向对象编程思想的操作。

            hibernate将数据库中的数据映射成为对象通过与实体类对应的映射文件实现;而对对象的操作是放在session容器中的,而session对象的获取是通过session工厂生产的,session工厂是通过configuration对象的来的,在获得configuration对象过程中关联了相关的实体类映射文件。


© 著作权归作者所有

上一篇: hibernate笔记2
下一篇: Spring学习笔记5
fire-fly
粉丝 0
博文 7
码字总数 3619
作品 0
朝阳
私信 提问
《JavaEE基础实用教程》笔记说明

“《JavaEE基础实用教程》笔记”分类中的文章是本人学习《JavaEE基础实用教程》时所做的笔记。 该书作者:郑阿奇 著。ISBN:9787121091360。 这里整理出第3、4、5章的笔记,主要内容是Strut...

JerryPan
2016/02/19
1K
1
Hibernater学习笔记(四)

今天学习了hibernate的查询,创建的实体类如下 Customer.java(销售员信息) Salesperson.java(客户信息) 1.一对多映射配置 Customer.hbm.xml Salesperson.hbm.xml 配置完两个文件后,需要...

Mr_欢先生
2017/12/10
0
0
Hibernate 学习资料汇总

1.Hibernate系列——总结篇(http://blog.csdn.net/jiuqiyuliang/article/details/41318751) 2.Hibernate框架简述(http://www.cnblogs.com/eflylab/archive/2007/01/09/615338.html) 3.Hiber......

IT追寻者
2016/08/06
30
0
Hibernater学习笔记(五)

上次学习一对多查询,今天学习多对多查询 场景:用户和角色的关系,一个用户可以是多个角色,一个角色可以有多个用户 pojo类 User.java Role.java 配置文件 User.hbm.xml Role.hbm.xml 创建成...

Mr_欢先生
2017/12/13
0
0
Hibernate 第一天笔记

Hibernate 第一天笔记 * javaEE企业级开发分层 表现层 业务层 持久层 表现层:struts2 业务层:spring 持久层:hibernate----操作数据库 * hibernate框架称为ORM(Object Relational Mapping...

dh_
2014/04/11
70
0

没有更多内容

加载失败,请刷新页面

加载更多

Raspberry Pi 树莓派 搭建java8环境

更新软件源 apt-get upgradeapt-get update 移除自带的openjdk(如果有的话) apt-get remove openjdk* 安装oracle jdk,地址: https://www.oracle.com/technetwork/java/javase/downl......

ChangeZ
29分钟前
79
0
树莓派3b 安装openwrt

https://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2710/openwrt-19.07.0-brcm2708-bcm2710-rpi-3-squashfs-factory.img.gz 插入并启动树莓派3B+,顺便接上键盘和显示器,......

FalconChen
48分钟前
71
0
OSChina 周一乱弹 —— 有些运动也常用到膝盖

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《火宵の月・テーマ~ピアノソロ》- 中村由利子 手机党少年们想听歌,请使劲儿戳(...

小小编辑
今天
109
0
Redis持久化机制

RDB存储 RDB方式的持久化是通过快照完成的,当符合一定条件时Redis会自动将内存中的所有数据生成一份副本并存储在硬盘上。 Redis会在一下集中情况下对数据进行快照: 根据配置规则进行快照;...

XuePeng77
今天
81
0
float精度计算测试

package mainimport ("fmt""github.com/go-ozzo/ozzo-dbx"_ "github.com/go-sql-driver/mysql")type DecimalDemo struct {Id intAmount float64}func main() {db, _......

醉人的笑容你有没有
今天
127
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部