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环境搭建架包,里面包含了所需的架包,可以直接拿来使用
本人也是初学者,初次建造hibernate开发环境,幸运的是成功了,现在那出来分享下。内有hibernate运行说需的jar包(asm.zip, cglib-2.1_2jboss.jar, dom4j-1.6.1.jar ,hibernate3.jar, jta.jar)
最近在群里好多朋友,不管认识还是不认识的,都问到SSH2框架整合搭建的问题。于是乎,抽了个空,理了个文档出来,里面是整合搭建的详细步骤以及截图,并附上了使用到的相应jar包。新手的最佳选择。
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。
例如,配置C3P0时的provider_class有Hibernate2环境下使用net.sf.hibernate.connection.C3P0ConnectionProvider,在Hibernate3环境下使用org.hibernate.connection.C3P0ConnectionProvider。 下面是Hibernate环境下...
最新 struts2 spring3 hibernate4 环境增删查改web开发 在开发环境:eclipse4+tomcat7+struts2+spring3+hibernate4+SQL2005 增删查改web开发简单示例,所括所有的包。下载后修改applicationContext.xml连接数据库的...
1、 加载Hibernate类库和依赖库 2、 创建hibernate.cfg.xml文件 3、 创建持久化类和映射文件 4、 创建Hibernate连接工具类
hibernate手动搭建环境必须包,antlr.jar commons-collection.jar dom4j.jar hibernate3.jar javassist.jar jta.jra slf4j.jar slf4j.jar slf4j-api.jar
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.properties,用于搭建hibernate开发环境
SpringMVC+Spring3+Hibernate4开发环境搭建
1、 掌握 Hibernate 开发环境搭建的基本步骤; 2、 观察持久化类与数据库表的映射关系,观察相应的 Hibernate 映射文件 (.hbm.xml)配置,并能够做简单应用; 3、 观察 Hibernate 配置文件(hibernate.cfg.xml)中...
本程序是struts spring hibernate的完整环境配置, 包括: struts1.3 spring 2.0 hibernate 3.1 的所有完整的包。 BeanNameAutoProxyCreator事务处理 中文乱码解决 MD5程序加密 AJAX验证码等 ...
多关键字,模糊查询,排序等6,支持Clustering7,支持直接访问Lucene API8,对Lucene索引,API的高效管理Hibernate Search运行的环境如下:1、JDK或JRE 5.0以上2、Hibernate-Search以及相应的依赖包3、Hibernate ...
本书分为5篇共21章,包括环境准备篇、Struts 2篇、Hibernate 3篇、Spring 2篇和实战篇。本书实例丰富、内容知识全面,浅显易懂,能够帮助读者尽快掌握这3种框架技术的使用。 本书适合作为Java/Java EE开发的初...
flex 4.5+BlazseDS+Spring3+Hibernate3.3开发环境搭建
本书分为5篇共21章,包括环境准备篇、Struts 2篇、Hibernate 3篇、Spring 2篇和实战篇。本书实例丰富、内容知识全面,浅显易懂,能够帮助读者尽快掌握这3种框架技术的使用。 本书适合作为Java/Java EE开发的初...
第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环境搭建:下载了Hibernate包后,在目录下找到hibernate3.jar和lib包下的required下的所有jar包。由于Hibernate框架中没有集成Log4J和slf4J包,所以还需要下载slf4j的jar和log4J.jar包。