测试时报错但测试可正常运行
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getNameParser(Unknown Source)
at net.sf.hibernate.util.NamingHelper.bind(NamingHelper.java:52)
at net.sf.hibernate.impl.SessionFactoryObjectFactory.addInstance(SessionFactoryObjectFactory.java:90)
at net.sf.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:172)
at net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:796)
at TestMain.main(TestMain.java:22)
在hibernate.cfg.xml中session-factory设置了name属性,hibernate会试图把这个sessionfacotry注册到jndi中去
将name属性去掉即可解决
分享到:
相关推荐
1. **配置加载**:Hibernate启动时会读取`hibernate.cfg.xml`配置文件,该文件定义了数据库连接信息、实体类、缓存等设置。配置文件可以通过API动态加载,也可以通过Spring等框架集成。 2. **SessionFactory创建**...
在深入探讨Hibernate框架的启动过程之前,我们首先需要了解几个核心的概念和类,它们是Hibernate启动流程的基石。 ### 1. 关键类与接口 #### Environment类 `Environment`类扮演着系统环境变量的关键角色,它定义...
它是Hibernate启动时加载的第一个配置文件。 2. **实体类的XML映射文件**: 对应数据库表的Java类,每个类通常有一个对应的`.hbm.xml`文件,用于描述类与表之间的映射关系。 样例代码通常包括以下部分: 1. **...
**Hibernate是最流行的Java ORM...综上所述,"Hibernate最小功能包"是针对那些希望在项目中快速实现基础ORM功能的开发者设计的,它提供了一个简洁、高效的解决方案,让开发者能专注于业务逻辑,而不是底层数据库操作。
这个小项目旨在帮助初学者理解如何将这三个框架整合在一起,搭建一个完整的工作流程。 首先,Spring是Java领域的一个核心框架,它提供了一种依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented ...
"第一个手写Hibernate"项目旨在帮助开发者深入理解Hibernate的工作原理,通过手动编写相关代码,以实践的方式来学习和掌握Hibernate的核心概念。 **一、Hibernate简介** Hibernate是一个开源的ORM框架,它允许...
在应用启动时,通常会创建一个SessionFactory实例并保持其在整个应用生命周期内的唯一性。 6. **持久化操作** - **保存(Save)**:使用Session的`save()`方法将新对象插入数据库。 - **更新(Update)**:调用`...
NULL 博文链接:https://cici9898-007.iteye.com/blog/1888997
Hibernate是一个用于简化Java数据库编程的开源框架,它提供了一种在Java应用程序中持久化对象的方式,避免了直接编写SQL语句,提高了开发效率。 **1. Hibernate基本概念** - **对象关系映射(ORM)**: ORM是将...
这个“springMVC+hibernate搭建的一个demo”旨在为初学者提供一个快速入门的实例,帮助他们理解和配置这些技术的集成环境。 SpringMVC是Spring框架的一部分,它提供了处理HTTP请求、管理控制器、数据绑定、视图解析...
Hibernate3 是一个强大的Java持久化框架,用于简化数据库与对象之间的交互。它是对象关系映射(ORM)工具的典范,允许开发人员使用面向对象的编程模型来操作数据库,而无需直接编写SQL语句。在本篇文章中,我们将...
- **一级缓存**:Session 自带一级缓存功能,这意味着对于同一个 Session 来说,如果两次查询同一个对象,则第二次查询时将直接从缓存中获取数据,而不会再次访问数据库。 - **与 HTTP Session 的关联**:在 Web ...
在描述中提到的`org.hibernate.PropertyValueException: not-null property references a null or transient value`是Hibernate抛出的一个常见异常,表示尝试保存一个实体时,其某个非空属性为null或未持久化。...
在应用启动时,我们会创建一个SessionFactory实例,它是线程安全的,用于创建Session。Session是与数据库交互的主要接口,用于执行查询、保存或更新对象。 ```java Configuration config = new Configuration()....
Hibernate是一个开放源代码的ORM(Object Relational Mapping)框架,它对JDBC进行了轻量级的对象封装,使得Java开发者能够以面向对象的方式来操作数据库。Hibernate可以自动生成SQL语句,自动执行,使得Java开发者...
**一个Hibernate的简单实例** 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作。本实例旨在为初学者提供一个基础的Hibernate使用教程,帮助理解其基本概念和工作流程。...
Hibernate,作为一款流行的Java持久化框架,其启动过程的复杂性和精妙之处一直是开发者深入理解的重点。本文基于Hibernate 3.3.2 GA版本,对启动流程进行了详细的剖析,以期帮助读者更好地掌握Hibernate的工作原理。...
3. **SessionFactory的创建**:根据配置文件初始化SessionFactory,它是线程安全的,建议在应用启动时创建一次。 4. **Session的使用**:SessionFactory用于创建Session实例,Session是操作数据库的单线程上下文。...
`Middlegen-Hibernate-r5.rar`是Middlegen-Hibernate的一个版本,包含了工具本身及其依赖,而`hibernate-extensions-2[1].1.3.zip`则是hibernate-extensions的某个版本,提供了扩展的工具和库。 总结来说,...