解决hibernate异常:Connection cannot be null when 'hibernate.dialect' not set
最近使用最新的Hibernate,在获取SessionFactory的时候,原来的那种方法已经过时了被提示,不过仍然可以用。原来的写法如下:
Configuration cfg = new Configuration().configure();
SessionFactory factory = cfg.buildSessionFactory();
Session s = factory.openSession();
s.beginTransaction();
//这里是数据库操作代码
s.getTransaction().commit();
4.0以后改为使用ServiceRegistry 注册了。
在刚开始使用ServiceRegistry的时候报异常:
HibernateException: Connection cannot be null when 'hibernate.dialect' not set
是因为使用方法不正确,正确的方法如下:
Configuration cfg = new Configuration().configure();
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry();
SessionFactory factory = cfg.buildSessionFactory(serviceRegistry);
Session s = factory.openSession();
s.beginTransaction();
//这里是数据库操作代码
s.getTransaction().commit();
分享到:
相关推荐
《深入剖析Hibernate 4.1.4.Final源码》 Hibernate,作为一款著名的Java对象关系映射(ORM)框架,极大地简化了Java开发者在数据库操作中的工作。它通过提供对象化的数据访问接口,使得开发者可以更加专注于业务...
Hibernate 4.1.4.Final 是一个广泛使用的对象关系映射(ORM)框架,它为Java开发者提供了方便的数据持久化服务。这个版本的API、开发手册和开发指南是理解和应用Hibernate的核心参考资料,对于深入学习和高效开发至...
Hibernate,版本4.1.4,是一个对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库。Hibernate通过XML或注解定义对象与表之间的映射,提供了丰富的查询语言HQL,使得数据库操作更加便捷,同时也...
13. **延迟加载(Lazy Loading)**:默认情况下,关联的对象不会立即加载,只有在真正需要时才从数据库获取,有效避免了大数据量的加载。 14. **事件监听器**:允许开发者自定义事件处理,如对象保存、更新、删除...
在这个“hibernate-release-4.1.4.Final核心jar包”中,包含了Hibernate 4.1最终稳定版的所有核心组件,这个版本在2012年发布,提供了许多新特性和改进。 1. **Hibernate ORM核心**:这是Hibernate的核心库,包含了...
2. **SessionFactory**:SessionFactory是Hibernate的主要入口点,它是线程安全的,负责创建Session对象。SessionFactory在应用程序启动时初始化一次,然后在整个应用生命周期中重用。 3. **Session**:Session是与...
在这个`hibernate-release-4.1.4.Final`版本中,包含了完整的Hibernate源码以及所有必要的jar包,使得我们可以深入理解其工作原理并进行定制开发。 首先,让我们探讨一下Hibernate的核心概念。Hibernate的核心是...
详细讲解如何创建和获取 SessionFactory 实例,这是使用 Hibernate 必不可少的一步。 - **3.3 JDBC 连接** 解释如何配置 Hibernate 以使用特定的 JDBC 数据库驱动和连接池。 - **3.4 可选配置属性** 列举了...
在描述中提到的"SpringMVC开发所需jar包"包含了两个关键的库:Spring 4.3.10发布版和Hibernate 4.1.4发布版。Spring 4.3.10是Spring框架的一个稳定版本,它提供了许多改进和增强,包括更好的类型安全支持、更多的...
- 讲解如何创建和管理`SessionFactory`实例,它是Hibernate的核心工厂类。 - **3.3 JDBC连接** - 解释如何配置JDBC连接池以优化性能。 - **3.4 可选的配置属性** - **3.4.1 SQL方言** - 介绍如何根据使用的...
SSH4标签表明这是一个基于Struts2.3.16.1、Hibernate4.1.4和Spring3.1.1的最新集成版本。 **Struts2** 是一个强大的MVC框架,它在Struts1的基础上进行了许多改进,提供了更灵活的控制流和更强大的插件体系。Struts...
1. **hibernate-core-4.1.4.Final.jar**:这是Hibernate框架的核心库,包含了所有必要的API和实现,如Session接口、SessionFactory、Entity映射等。这个版本是4.1.4.Final,意味着它是一个稳定版本,适用于大多数...
- **1.2.5 启动与辅助类**:讲解如何初始化Hibernate SessionFactory以及常用的一些辅助类和工具方法。 - **1.2.6 加载与存储对象**:阐述如何使用Hibernate API来加载、保存、更新或删除持久化对象。 **1.3 映射...
4.1.4. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators)(可选) 4.2. 实现继承(Inheritance) 4.3. 实现equals()和hashCode() 4.4. 动态模型(Dynamic models) 4.5. 元组片断映射(Tuplizers) 5. ...
Hibernate架构主要包括以下几个组件:`SessionFactory`、`Session`、`Transaction`等。 - **2.2 实例状态** Hibernate支持三种实例状态:瞬态、持久和游离。 - **2.3 JMX集成** 提供与Java Management ...
SessionFactory 是 Hibernate 中的核心组件之一,负责创建 Session 并管理映射元数据。 - **3.3 JDBC 连接** 详细介绍了如何配置数据库连接,包括驱动程序、URL、用户名和密码等。 - **3.4 可选配置属性** - **...
- 讲述了如何启动 Hibernate 并使用一些辅助工具进行开发,例如 SessionFactory 的创建方式。 - **1.2.6 加载和存储对象** - 描述了如何使用 Hibernate 加载和保存 Java 对象到数据库中,涉及基本的 CRUD 操作。 ...
- **SessionFactory 创建**:讲解如何创建 Hibernate 的 SessionFactory。 - **配置参数**:列出创建 SessionFactory 时所需的配置参数。 ##### 3.3 JDBC 连接 - **连接池**:介绍如何配置 JDBC 连接池。 - **连接...
4.1.4. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators)(可选) 4.2. 实现继承(Inheritance) 4.3. 实现equals()和hashCode() 4.4. 动态模型(Dynamic models) 4.5. 元组片断映射(Tuplizers) 5. ...
获取SessionFactory 3.3. 用户自行提供JDBC连接 3.4. Hibernate提供的JDBC连接 3.5. 可选配置属性 3.5.1. SQL Dialects SQL 方言 3.5.2. 外连接抓取(Outer Join Fetching ) 3.5.3. 二进制流...