Hibernate_day1

/****************
**Hibernate_day1
**2011_04_25
**/
课程安排:
    <1>:Hibernate概念和Hibernate编程
    <2>:Hibernate的主键生成策略和对象状态
    <3>:Hibernate的映射关系
    <4>:Hibernate的继承映射,事务
    <5>:Hiberante的锁机制
知识点:
    掌握对象持久化的概念
    理解ORM的作用
    比较几种常用的ORM框架
    掌握Hibernate的体系结构
    分析Hibernate的API
    编写简单的Hibernate程序
Open Source:开源框架
        (1):把通用的步骤以project形式发布到网上。
        (2):开发人员可以修改源代码。
        (3):个人或者是基金组织
规范:SUN发布,每个开发人员和厂商必须遵循的。
ORM(Object Relational Mapping):
    <1>:Java应用程序中持久化对象到关系数据库表之间的映射
    <2>:映射原则:
        <1>:实体名 ============  表名
        <2>:属性===============     列
        <3>:关系    ==============     外键
            继承映射

ORM产品:
    Hibernate 全自动 sql  select
    ibatis    半自动 sql
JPA(规范): Java Persistence Api
    java  ===== jdbc  ===db
    java=======hibernate====db
    java=======ibaits====db
                    JDBC
    java     ====== JPA        HIBETANTE    DB
                    IBATIS
   
Hibernate配置:
            hibernate.cfg.xml 描述数据库相关信息
            *.hbm.xml:描述实体属性到关系数据库表之间的具体映射原则
User实体                    表User
id 1        id=ttt            ttt1
name lili    name=email        email lili
password 6868    password=userpwd    userpwd 6868

Hibernate对javabean的要求:
    <1>:set|get
    <2>:必须有唯一标识
    <3>:无参数构造函数
    <4>:集合类型必须声明为接口类型
Configuration
    概述:Configuration 类负责管理Hibernate 的配置信息。它包括如下内容:
    Hibernate运行的底层信息:数据库的URL、用户名、密码、JDBC驱动类,数据库Dialect,数据库连接池等。
    Hibernate映射文件(*.hbm.xml)。
SessionFactory
概述:应用程序从SessionFactory(会话工厂)里获得Session(会话)实例。它在多个应用线程间进行共享。通常情况下,整个应用只有唯一的一个会话工厂——例如在应用初始化时被创建。然而,如果你使用Hibernate访问多个数据库,你需要对每一个数据库使用一个会话工厂。
     会话工厂缓存了生成的SQL语句和Hibernate在运行时使用的映射元数据。
Session
Session不是线程安全的,它代表与数据库之间的一次操作,它的概念介于Connection和Transaction之间。
 Session也称为持久化管理器,因为它是与持久化有关的操作接口。
 Session通过SessionFactory打开,在所有的工作完成后,需要关闭。
它与Web层的HttpSession没有任何关系。
Transaction
概述:
      它将应用代码从底层的事务实现中抽象出来——
    这可能是一个JDBC事务,一个JTA用户事务或者甚至是
    一个公共对象请求代理结构(CORBA)——允许应用通过
    一组一致的API控制事务边界。这有助于保持Hibernate
    应用在不同类型的执行环境或容器中的可移植性。
Query:
Query(查询)接口允许你在数据库上执行查询并控制查询如何执行。
查询语句使用HQL或者本地数据库的SQL方言编写。



Session注意点:
    1:get  有结果都返回  无结果 返回NULL
    2:load 有结果都返回  无结果 抛异常





session


Configuration cfg = new Configuration().configure();
SessionFactory sessionFactory = cfg.buildSessionFactory();
Session session = sessionFactory.openSession();
  Transaction tx = session.beginTransaction();
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值