Hibernate知识点总结

2021-07-14 11:05

阅读:344

标签:创建表   update   统计   factor   基于   factory   步骤   tac   ssi   

一、    Hibernate
    1    Hibernate    简化JDBC    (ORM)
        使用Hibernate的步骤
        1    将第三方包加入到项目当中
        2    编写核心配置文件    hibernate.cfg.xml
            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.Oracle9Dialectproperty>
                
                property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:orclproperty>
                
                property name="connection.username">martproperty>
                
                property name="connection.password">javaproperty>
                
                property name="connection.driver_class">oracle.jdbc.driver.OracleDriverproperty>

                
                property name="hbm2ddl.auto">updateproperty>
                
                property name="show_sql">trueproperty>


                session-factory>

            hibernate-configuration>
        3    编写实体类
            public class User implements Serializable{
        
                private Integer id;    //ID  Hibernate要求每个实体都必须有一个主键
                private String uname;
                private String gender;
                private Integer age;
                ....    省略get/set方法
            }
        4    编写实体类对应的映射文件    User.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">
            hibernate-mapping>

                
                class name="com.zhaolong.bean.User" table="HUQB_USER">
                    
                    id name="id">
                        
                        generator class="sequence">
                            
                            param name="sequence">SEQ_HUQB_USERparam>
                        generator>
                    id>
                    
                    
                    property name="uname" column="HUQB_UNAME"/>
                    property name="gender"/>
                    property name="age">
                        column name="HUQB_AGE" not-null="true">column>
                    property>
                    
                class>
            hibernate-mapping>
        5    将实体类的映射文件,添加到核心配置文件当中
            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>
                ...省略基础配置信息

                 
                 mapping resource="com/zhaolong/bean/User.hbm.xml"/>
                session-factory>

            hibernate-configuration>
        6    使用Hibernate实现增删改查
            //加载配置文件
            Configuration cfg=new Configuration();
            cfg.configure();
            //创建SessionFactory
            SessionFactory fatory = cfg.buildSessionFactory();
            //获取session
            Session session = fatory.openSession();
            //打开事物
            Transaction tx = session.beginTransaction();
            //执行增删改查操作
            User u=new User();
            u.setUname("张三");
            u.setGender("男");
            u.setAge(22);
            session.save(u);
            //提交事务
            tx.commit();
            //关闭session
            session.close();
        
    2    Hibernate    表与表之间关系映射
        1对多
            1    java类当中要有一个Set属性
            2    映射文件通过Set标签进行配置
        多对1
            1    java类当中要有一个关联需要的属性
            2    映射文件当中通过many-to-one>标签进行配置

        1对1
            1    java类当中要有一个关联需要的属性
            2    映射文件当中通过one-to-one>标签进行配置
                映射文件当中通过many-to-one    unique=true> 指定唯一 
        多对多
            1    java类当中要有一个Set属性
            2    映射文件通过Set标签进行配置
            注意:多对多映射会生成第三张映射表

            
    3    Hibernate查询
        1    HQL    基于对象的查询语言
            将sql当中的表名修改成对象名    将sql当中列名修改成属性名
        2    Criteria    面向对象的查询
            Restrictions    添加限制条件
            Projections    聚合查询
            Projections.projectionList()    添加多个统计结果
        3    DetachedCriteria    离线查询
    4    Hibernate缓存
        1    一级缓存    session
        2    二级缓存    SessionFactory    (需要配置)
        3    查询缓存

    5    其他信息
        inverse
        cascade
        lazy

 

Hibernate知识点总结

标签:创建表   update   统计   factor   基于   factory   步骤   tac   ssi   

原文地址:http://www.cnblogs.com/hackxiyu/p/7076285.html


评论


亲,登录后才可以留言!