zoukankan      html  css  js  c++  java
  • hibernate4与3使用annotation在配置文件中的区别

    让hibernate4与3在配置文件中的区别有几点:

    1、获取sessionfactory的方式:

    在hibernate3中获取sessionfactory的方式:

    <bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">

    在hibernate4中则是使用这种方式:

    <bean id="sessionFactory"
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">

    2、事物的使用:

    hibernate3:

    <bean id="txManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">

    hibernate4:

    <bean id="txManager"
    class="org.springframework.orm.hibernate4.HibernateTransactionManager">

    3、使用缓存机制:

    hibernate3:

    <prop key="hibernate.current_session_context_class">thread</prop>

    hibernate4:

    <prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext</prop>

    4、

    在hibernate3中可以使用hibernate自带的Dao组件,如:HibernateTemplete/HibernateDaoSupport等;

    在hibernate4中这些有取消了,必须使用getCurrentSession()来获取Session;

    5        

       getCurrentSession()事务会自动关闭,所以在有所jsp页面查询数据都会关闭session。要想在jsp查询数据库需要加入:   org.springframework.orm.hibernate4.support.OpenSessionInViewFilter过滤器。

    6、

    Hibernate分页出现 ResultSet may only be accessed in a forward direction 需要设置hibernate结果集滚动

       <prop key="jdbc.use_scrollable_resultset">false</prop>

    7、在单独使用hibernate4的使用:获取工厂的方式变为:

    ServiceRegistry resgistry = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();

    SessionFactory  factory = config.buildSessionFactory(resgistry);

    Session session = factory.openSession();

    当然你也可以通过设置单例的工具类来简便过去方式,具体工具类你可以查阅hibernate4的参考文档;

  • 相关阅读:
    CSS基础学习记录——CSS选择器及其特殊性计算
    CSS基础学习记录——CSS中哪些属性可以继承?
    行内框和行框的概念,line-height和vertical-align的关系理解
    【转】DOM中NodeList、HTMLCollection、NamedNodeMap三个动态集合的理解
    property参数讲解
    CocoaPods安装方法
    ios UITextField 以及键盘显示总结
    Xcode11 在Xib中进行UIScrollView布局
    锁问题总结-同一个线程两次获取同一把锁
    【转载】ARM MMU详解
  • 原文地址:https://www.cnblogs.com/yhiloon/p/3656218.html
Copyright © 2011-2022 走看看