Hibernate(2)
Hibernate(2)
学而时习之 发表于3年前
Hibernate(2)
  • 发表于 3年前
  • 阅读 77
  • 收藏 8
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: 实体对象的生命周期

1、概述

2、实体对象的生命周期

 

 3、VO与 PO

4、session接口

 session管理方案:

第二种方法:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
 xmlns:tx="http://www.springframework.org/schema/tx"
 xsi:schemaLocation="
 http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans.xsd
 http://www.springframework.org/schema/tx
 http://www.springframework.org/schema/tx/spring-tx.xsd
 http://www.springframework.org/schema/aop
 http://www.springframework.org/schema/aop/spring-aop.xsd">
 <bean id="sessionFactory"
  class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
  <property name="dataSource" ref="dataSource" />
  <property name="packagesToScan">
   <list>
    <value>com.isoftstone.persistance.bean</value>
    <value>com.iss.cloud.portal.modules</value>
   </list>
  </property>
  <property name="hibernateProperties">
   <props>
    <prop key="hibernate.dialect">${hibernate.dialect}</prop>
    <prop key="hibernate.show_sql">true</prop>
    <prop key="hibernate.format_sql">true</prop>
    <prop key="hibernate.hbm2ddl.auto">none</prop>
    <prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext</prop>
    <prop key="hibernate.cache.use_query_cache">true</prop>
                <prop key="cache.use_second_level_cache">true</prop>
                <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>
   </props>
  <!-- 
   <value>
    hibernate.dialect=org.hibernate.dialect.HSQLDialect
    hibernate.format_sql=true
    hibernate.show_sql=true
    hibernate.hbm2ddl.auto=update<# # spaces here for exception>
   </value>
   -->
  <!-- 
    hibernate.dialect=org.hibernate.dialect.MySQLDialect
    hibernate.current_session_context_class=org.hibernate.context.internal.JTASessionContext
    hibernate.transaction.jta.platform=org.hibernate.service.jta.platform.internal.SunOneJtaPlatform  
   -->
  </property>
  <!--<property name="jtaTransactionManager">
   <ref bean="transactionManager"/> 
  </property> -->
 </bean>
</beans>

 5、session的使用

执行save方法时得3种操作:

执行save方法后,

执行commit方法后,

 

 

    1)

    2)

 

 

6、hibernate的映射类型

来灵活定制客户化映射类型。了解

 

底层数据库使用数据类型访问数据库,而hibernate使用JDBC驱动访问数据库,jdbc驱动程序对底层数据库使用标准SQL类型进行封装,向上提供标准SQL类型接口,那么hibernate就可以使用标准

SQL类型来生成DML

 

也可以定义为byte[]

或者:

 

根据此返回值读取该内容

 

也可以是String类型

 7、值类型集合的映射方法

结果为:2

插入时,会把对象插入有序的对象序列,支持两种排序方式,自然排序和客户化排序,默认自然排序,当使用自然排序时,

只能向TreeSet中加入相同类型的对象,并且这些对象的类型必须实现了Comparable接口;而客户化排序必须实现Comparator

接口,此接口定义了compare方法,实现这个方法,定义自己的排序规则,当创建TreeSet对象时,就把我们对Comparator接口的实现类的实例化对象作为其初始化参数,调用添加方法时,就会使用客户化排序规则排序。

创建users表和images表

 联合主键:

 

 主要实现类有LinkedList和ArrayList,LinkedList采用链表数据结构,ArrayList代表大小可变的数组,List接口还有一个实现类Vector,Vector类的实现采用了同步机制,而ArrayList没有使用同步机制。

List对集合中的对象按索引位置排序,允许按照对象在集合中的索引位置添加和查找对象,

修改联合主键

无需设置position属性。

 

小结:

 

共有 人打赏支持
粉丝 30
博文 92
码字总数 42877
×
学而时习之
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: