• hibernate总结


    hibernate主要用于连接数据,是基于ORM的持久层框架。

    持久层:用于操作数据库。

    ORM(object relation map):对象关系映射。

    hibernate的基本步骤:

    三拷三配:拷JDBC驱动,拷log4j,拷hibernate开发包

         配pojo对象,配映射文件,配总的配置文件。

    注意:在hibernate中时间date统一用util包中的。

    单表操作配置映射文件:

    <hibernate-mapping>
    <!-- 类和表的映射 -->
     <class name="com.pojo.Student" table="student">
     <!-- 字段映射之主键映射 -->
      <id name="sid" column="sid">
       <generator class="native"></generator>
      </id>
      <!-- 其它的字段 -->
      <property name="sname" column="sname"></property>
      <property name="ssex" column="ssex"></property>
     </class>
    </hibernate-mapping>

    七个步骤:

      1.得到总的配置文件

      2.建立session工厂(sessionFactory)

      3.打开session

      4.开启事物

      5.写HQL语句

      6.事物提交/回滚

      7.关闭session

    表:一对多操作

    在主表的pojo中要加一个private Set<字表pojo> tname=new HashSet<字表pojo>();

    在子表的pojo中要加一个private 主表 name,即添加一个主表对象,用于得到主表主键

    在主表映射文件中:

    <hibernate-mapping>
     <class name="com.pojo.Dep" table="dep">
      <id name="did" column="did">
       <generator class="native"></generator>
      </id>
      <property name="dname" column="dname"></property>
      <!-- 级联,主表改变字表也改变 -->
      <set name="emps" cascade="save-update,delete">
       <key column="did"></key>
       <one-to-many class="com.pojo.Emp"></one-to-many>
      </set>
     </class>
    </hibernate-mapping>

    在子表映射文件中:

    <hibernate-mapping>
     <class name="com.pojo.Emp" table="emp">
      <id name="eid" column="eid">
       <generator class="native"></generator>
      </id>
      <property name="ename" column="ename"></property>
      <many-to-one name="dep" column="did"></many-to-one>
     </class>
    </hibernate-mapping>

    表:多对多

    映射文件中应该这样写:

    <hibernate-mapping>
     <class name="com.pojo.Course" table="couser">
      <id name="cid" column="cid">
       <generator class="native"></generator>
      </id>
      <property name="cname" column="cname"></property>
      <set name="students" table="sc" inverse="false">
       <key column="cid"></key>
       <many-to-many class="com.pojo.Student" column="sid"></many-to-many>
      </set>
     </class>
    </hibernate-mapping>

     使用工具代替手工拷包和配置文件

    1.让myclipse连接数据库(切换到视图myeclipse database explore视图)

    2.添加hibernate开发包(切换到myeclpse jre 视图)

    3.生成pojo及映射文件(切换到myeclipse database视图)

    4.测试

    缓存:一级缓存(session):限自己用

         二级缓存(sessionFactory):大家都可以用

         查询缓存

    缓存实为map;一二级缓存就用对象id作为键,查询缓存以HQL语句为键。

  • 相关阅读:
    给元素查索引
    数组的反转和排序
    本地修改文件到git
    +new Date()
    文字双层投影
    表格组件 自定义宽度 设置 span 内容 超出省略号
    iframe的使用
    分页获取列表进行索引累加
    日期时间格式化
    柱状echarts 自定义图例设置
  • 原文地址:https://www.cnblogs.com/xinxinjava/p/2860448.html
Copyright © 2020-2023  润新知