在将映射文件User.hbm.xml、Role.hbm.xml和Department.hbm.xml文件添加到hibernate.cfg.xml后用于自动生成数据库表的时候抛出以下异常:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'roleDaoImpl': Injection of resource fields failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.InvalidMappingException: Could not parse mapping document from resource com/jxust/oa/domain/User.hbm.xml
抛出此异常的原因:
在User.hbm.xml的映射文件中properties name="phoneNumber"写成了
properties name="phoneNumbers"
<hibernate-mapping package="com.jxust.oa.domain">
<class name="User" table="jxust_user">
<id name="id">
<generator class="native" />
</id>
<property name="loginName" />
<property name="password" />
<property name="name" />
<property name="gender" />
<property name="phoneNumber" />
<property name="email" />
<property name="description" />
<!-- department属性,本类与Department的多对一的关系 -->
<many-to-one name="department" class="Department" column="departmentId"></many-to-one>
<!-- roles属性 ,本类与Role的多对多的关系-->
</class>
</hibernate-mapping>
- 浏览: 220461 次
- 性别:
- 来自: 江西
最新评论
-
闷骚的小老头:
这个和eclipse右什么区别么,都会啊这个
如何在Android Studio中创建一个selector.xml文件 -
闷骚的小老头:
导入Model就ok
如何在Android Studio中导SlidingMenu框架到项目中 -
gaojingsong:
七天玩转oracle,韩顺平玩转oracle,有些东西过时了, ...
oracle表的数据类型
相关推荐
- `validate`:验证现有数据库表结构与映射文件是否一致,如果不一致则抛出异常,但不会做任何修改。 4. **Hibernate.default_schema**:指定默认的数据库模式,如果设置,所有创建的表都会带有指定的前缀。这在...
当Hibernate尝试保存一个实体时,如果该实体中的某个被标记为`@NotNull`或在映射文件中定义为`not-null="true"`的属性值为null或者指向一个尚未持久化的瞬态(transient)对象,就会抛出此异常。解决方法是确保在...
在数据加载时,`Session.load()`和`Session.get()`方法有细微差别:`load()`在找不到匹配对象时会抛出异常,而`get()`则返回null,不会打印错误信息。 4. **XML配置文件(hibernate.cfg.xml)** 另一种配置方式是...
当解析配置或映射文件时,DTD会验证文件是否符合规则,如果存在错误,解析器会抛出异常。 总结,Hibernate 5.2的配置和映射DTD文件是其正常工作的重要组成部分。理解这些文件的结构和内容对于正确配置和使用...
如果未找到配置文件,Hibernate会抛出异常。 - 如果存在`hibernate.properties`,其内容会被加载,并且系统环境变量也会被合并。配置文件中的信息可以被`hibernate.cfg.xml`覆盖。 - `hibernate.cfg.xml`中的`...
在描述中提到的`org.hibernate.PropertyValueException: not-null property references a null or transient value`是Hibernate抛出的一个常见异常,表示尝试保存一个实体时,其某个非空属性为null或未持久化。...
总结来说,Hibernate通过属性文件和XML映射文件来配置数据库连接和对象关系,通过`SessionFactory`和`Session`进行数据操作,而`load()`和`get()`则是两种不同的对象检索方式,适应不同场景的需求。在实际开发中,...
- `proxool.hibernate.max_wait`:最大等待时间(超时后抛出异常)。 3. **配置Hibernate**:在hibernate.cfg.xml中,设置`c3p0`或`dbcp`等默认的连接池为`proxool`,并指定Proxool的配置属性,例如: ```xml ...
- `validate`:验证现有表结构是否符合映射文件,如果不匹配,则抛出异常。 - `none`:不做任何数据库操作。 四、SQL日志 通过`hibernate.show_sql`可以开启或关闭SQL日志,这对于调试和理解执行的SQL语句非常有用...
**问题描述**:在使用Hibernate执行查询语句时,系统抛出`Nodefaultconstructorforentity`错误。 **可能原因**:该错误通常是由于实体类中缺少无参构造函数导致的。在Java中,如果一个类没有显式地定义任何构造函数...
- `load(Class<?> clazz, Serializable id)`:根据ID加载对象(区别在于当找不到对象时,`get`方法会返回null,而`load`方法会抛出异常)。 #### 配置文件详解 - **`hibernate.cfg.xml`配置文件**: - `...
以上代码尝试加载`A.hbm.xml`和`B.hbm.xml`两个映射文件,如果映射文件不存在或格式有误,将会抛出`MappingException`异常。 #### 五、创建SessionFactory 最后一步是根据Configuration对象构建SessionFactory: `...
3. **映射文件整合**:将映射文件的路径添加到`hibernate.cfg.xml`文件中。 #### CRUD操作 1. **创建(Create)**:通过Session对象执行保存或插入操作。 2. **读取(Read)**:通过Session对象执行查询操作。 3. ...
关于工具的使用,Hibernate提供了hibernate.cfg.xml配置文件或基于Java的配置方式来设置数据库连接参数、实体类扫描路径等。同时,它还提供了SessionFactory、Session、Transaction等接口,供开发者进行数据库操作。...
`hibernate.c3p0.timeout`定义了获取连接的超时时间,超过这个时间后,将抛出异常。这个值应根据应用的平均响应时间和数据库服务器的性能来设定。 `hibernate.c3p0.max_statements`限制了预编译的SQL语句数量,这...
如果启用了`validate`,并且发现不匹配的情况,Hibernate会在启动时抛出异常。 - **`create`**:此选项会强制Hibernate在启动时创建新的数据库表结构,并删除现有的表结构。这会导致所有数据丢失,通常用于测试环境...
错误表现:在Session关闭后尝试访问懒加载属性,抛出“org.hibernate.LazyInitializationException: could not initialize proxy - no Session”异常。 解决方案:理解并合理使用Open Session in View(OSIV)模式...
- "validate":检查实体类和表结构是否匹配,如果不匹配则抛出异常。 - "none":不做任何操作,需要手动管理数据库表。 在这个示例中,我们可能将`hibernate.hbm2ddl.auto`设置为"create",以便在Oracle数据库中...
3. 异常处理:理解和处理Hibernate抛出的异常,确保程序稳定性。 通过阅读《深入浅出Hibernate》,开发者可以系统学习Hibernate的各个方面,掌握其精髓,并在实际项目中灵活运用,提高开发质量和效率。书中的案例和...