`
lee79
  • 浏览: 104021 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hibernate3环境

阅读更多

1. 相关JAR包

    hibernate3.jar
    antlr.jar
    asm.jar
    asm-attrs.jars
    cglib.jar
    commons-collections.jar
    commons-logging.jar
    dom4j.jar
    ehcache.jar
    jta.jar
    log4j.jar 

 

2. 获取SessionFactory时报异常:net/sf/ehcache/CacheException

代码

Configuration configuration = new Configuration()
    .addResource("com/metaarchit/bookshop/Book.hbm.xml")
    .setProperty("hibernate.dialect", "org.hibernate.dialect.HSQLDialect")
    .setProperty("hibernate.connection.driver_class", "org.hsqldb.jdbcDriver")
    .setProperty("hibernate.connection.url", "jdbc:hsqldb:hsql://localhost/BookShopDB")
    .setProperty("hibernate.connection.username", "sa")
    .setProperty("hibernate.connection.password", "")

    .setProperty("hibernate.cache.provider_class", "org.hibernate.cache.EhCacheProvider");


SessionFactory factory = configuration.buildSessionFactory();

 

异常:

Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/ehcache/CacheException
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
    at java.lang.Class.getConstructor0(Class.java:2640)
    at java.lang.Class.newInstance0(Class.java:321)
    at java.lang.Class.newInstance(Class.java:303)
    at org.hibernate.cfg.SettingsFactory.createCacheProvider(SettingsFactory.java:358)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:232)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:1933)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1216)

 

原因:少了ehcache.jar

 

3. iterate(), list()

Hibernate3 取消 2中的Session 中 find()、iterate() 方法,find()必須使用Session的createQuery()建立Query實例,並使用list()方法來取代。terate()被取消了,由Query介面上的iterator()來取代,詳請看 Query.list()、iterator()。

 

遇到一个很奇怪的问题,Hibernate3中iterate()属性为空

Iterator it = db().createQuery("from Book").iterate();
while (it.hasNext()) {
    Object o = it.next(); //在IDEA中的调试窗口中看到的对像的属性值竞然为空(试了下hibernate2:db().iterate("from Book")却正常的),但如果强制类型转换后,System.println(((Book)o).getName());却是有值的
    ...
    }
}

 

但如果是list()方法,则是正常的

List list = db().createQuery(query).list();
for (int i = 0; i < list.size(); i++) {
    Object o =  list.get(i);
    ...
}

 

4. 批量删除

Hibernate2:

    sessionFactory.openSession().delete("from Book");

Hibernate3:

    sessionFactory.createQuery("delete from Book").executeUpdate();

 

5. 批量更新

Hibernate2:

    for (...) {

        Book book = sessionFactory.openSession().load(id);

        sessionFactory.openSession().delete(book);

    }

 

Hibernate3:

    sessionFactory.createQuery("update Book b set b.price = b.price + 1 where b.price < 20").executeUpdate();

分享到:
评论

相关推荐

    springmvc3.1+hibernate3环境搭建架包

    springmvc3.1+hibernate3环境搭建架包,里面包含了所需的架包,可以直接拿来使用

    hibernate3运行环境jar包

    本人也是初学者,初次建造hibernate开发环境,幸运的是成功了,现在那出来分享下。内有hibernate运行说需的jar包(asm.zip, cglib-2.1_2jboss.jar, dom4j-1.6.1.jar ,hibernate3.jar, jta.jar)

    一步一步教你Strus2+Spring3+Hibernate3环境整合搭建

    最近在群里好多朋友,不管认识还是不认识的,都问到SSH2框架整合搭建的问题。于是乎,抽了个空,理了个文档出来,里面是整合搭建的详细步骤以及截图,并附上了使用到的相应jar包。新手的最佳选择。

    hibernate连接池.doc

    Hibernate支持第三方的...例如,配置C3P0时的provider_class有Hibernate2环境下使用net.sf.hibernate.connection.C3P0ConnectionProvider,在Hibernate3环境下使用org.hibernate.connection.C3P0ConnectionProvider。

    hibernate连接池配置

    Hibernate支持第三方的...例如,配置C3P0时的provider_class有Hibernate2环境下使用net.sf.hibernate.connection.C3P0ConnectionProvider,在Hibernate3环境下使用org.hibernate.connection.C3P0ConnectionProvider。

    Hibernate的连接池和数据源配置

    例如,配置C3P0时的provider_class有Hibernate2环境下使用net.sf.hibernate.connection.C3P0ConnectionProvider,在Hibernate3环境下使用org.hibernate.connection.C3P0ConnectionProvider。 下面是Hibernate环境下...

    最新eclipse struts2 spring3 hibernate4环境 增删查改JAVA WEB例子

    最新 struts2 spring3 hibernate4 环境增删查改web开发 在开发环境:eclipse4+tomcat7+struts2+spring3+hibernate4+SQL2005 增删查改web开发简单示例,所括所有的包。下载后修改applicationContext.xml连接数据库的...

    搭建Hibernate项目环境步骤

    1、 加载Hibernate类库和依赖库 2、 创建hibernate.cfg.xml文件 3、 创建持久化类和映射文件 4、 创建Hibernate连接工具类

    hibernate3.5.6搭建环境必须包

    hibernate手动搭建环境必须包,antlr.jar commons-collection.jar dom4j.jar hibernate3.jar javassist.jar jta.jra slf4j.jar slf4j.jar slf4j-api.jar

    达梦数据库java驱动包、hibernate方言包

    5. DmDialect-for-hibernate3.6.jar 对应 Jdk1.5及以上, hibernate3.6 -- 3.X 环境 6. DmDialect-for-hibernate4.0.jar 对应 Jdk1.6及以上, hibernate4.0 -- 4.X 环境 7. DmDialect-for-hibernate5.0.jar 对应 Jdk...

    hibernate架包+c3p0+

    hibernate+c3p0匹配架包+hibernate.properties,用于搭建hibernate开发环境

    SpringMVC+Spring3+Hibernate4

    SpringMVC+Spring3+Hibernate4开发环境搭建

    javaee实验五 大学本科生 hibernate

    1、 掌握 Hibernate 开发环境搭建的基本步骤; 2、 观察持久化类与数据库表的映射关系,观察相应的 Hibernate 映射文件 (.hbm.xml)配置,并能够做简单应用; 3、 观察 Hibernate 配置文件(hibernate.cfg.xml)中...

    struts spring hibernate完整环境配置3/4

    本程序是struts spring hibernate的完整环境配置, 包括: struts1.3 spring 2.0 hibernate 3.1 的所有完整的包。 BeanNameAutoProxyCreator事务处理 中文乱码解决 MD5程序加密 AJAX验证码等 ...

    Hibernate搜索框架HibernateSearch.zip

    多关键字,模糊查询,排序等6,支持Clustering7,支持直接访问Lucene API8,对Lucene索引,API的高效管理Hibernate Search运行的环境如下:1、JDK或JRE 5.0以上2、Hibernate-Search以及相应的依赖包3、Hibernate ...

    企业应用架构设计---struts2+hibernate3+spring2【3】

     本书分为5篇共21章,包括环境准备篇、Struts 2篇、Hibernate 3篇、Spring 2篇和实战篇。本书实例丰富、内容知识全面,浅显易懂,能够帮助读者尽快掌握这3种框架技术的使用。  本书适合作为Java/Java EE开发的初...

    flex 4.5+BlazseDS+Spring3+Hibernate3.3开发环境搭建

    flex 4.5+BlazseDS+Spring3+Hibernate3.3开发环境搭建

    企业应用架构设计---struts2+hibernate3+spring2【1】

     本书分为5篇共21章,包括环境准备篇、Struts 2篇、Hibernate 3篇、Spring 2篇和实战篇。本书实例丰富、内容知识全面,浅显易懂,能够帮助读者尽快掌握这3种框架技术的使用。  本书适合作为Java/Java EE开发的初...

    Hibernate笔记 马士兵

    第2课 Hibernate UML图 6 第3课 风格 7 第4课 资源 7 第5课 环境准备 7 第6课 第一个示例Hibernate HelloWorld 7 第7课 建立Annotation版本的HellWorld 9 第8课 什么是O/R Mapping 11 一、 定义: 11 二、 Hibernate...

    Hibernate环境搭建jar包

    Hibernate环境搭建:下载了Hibernate包后,在目录下找到hibernate3.jar和lib包下的required下的所有jar包。由于Hibernate框架中没有集成Log4J和slf4J包,所以还需要下载slf4j的jar和log4J.jar包。

Global site tag (gtag.js) - Google Analytics