(1)如果数据库表中存储的数据为NULL
(2)POJO中属性的类型为原生态类型(int,long,double...)
那么我们就会抛出如下错误:
java.lang.IllegalArgumentException: Can not set long field com.crm.model.card.BOCrmCardOperate.newCardInsId to null value
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source)
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source)
at sun.reflect.UnsafeLongFieldAccessorImpl.set(Unknown Source)
at java.lang.reflect.Field.set(Unknown Source)
at org.hibernate.property.DirectPropertyAccessor$DirectSetter.set(DirectPropertyAccessor.java:139)
at org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:710)
at org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:371)
at org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:4499)
at org.hibernate.engine.internal.TwoPhaseLoad.doInitializeEntity(TwoPhaseLoad.java:185)
at org.hibernate.engine.internal.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:137)
at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:1103)
at org.hibernate.loader.Loader.processResultSet(Loader.java:960)
at org.hibernate.loader.Loader.doQuery(Loader.java:910)
错误分析:
字段为空值,但是POJO的属性是原生态类型,Hibernate无法将NULL赋值到一个原生态类型
There's no way for Hibernate to store null into a primitive type field.
这个时候的解决方案:
(1)将POJO中的属性修改成对象类型(Integer,Long...)
相关推荐
### Hibernate生成POJO详解 #### 一、简介 在Java开发中,Hibernate作为一个流行的ORM(Object Relational Mapping)框架,极大地简化了数据持久化的复杂度。通过Hibernate,开发者可以将对象模型映射到关系型...
在开发过程中,手动创建所有对应的Java POJO(Plain Old Java Object,简单Java对象)类可能会非常耗时,尤其是在面对大型数据库时。为此,Hibernate 提供了反向工程(Reverse Engineering)工具,可以自动生成基于...
在Java编程中,Pojo(Plain Old Java Object)是一种简单的对象模型,通常用于表示数据实体。Map接口则是Java集合框架的一部分,它提供了键值对的数据存储方式,方便数据的存取。将Pojo对象转换为Map,可以简化数据...
在百灵报表(BIRT)中访问Hibernate POJO是一个常见的需求,特别是在Java/J2EE Web应用程序中,因为Hibernate提供了一种高效的对象关系映射(ORM)解决方案,使得开发者可以更方便地操作数据库。BIRT(Business ...
本篇文章主要关注的是如何在Hibernate 3.0版本中,通过它提供的工具自动生成POJO(Plain Old Java Object)类,这些类可以直接映射到数据库表,实现数据的存取。 1. **什么是POJO类**: POJO类是Java中简单、无...
总的来说,Hibernate Tools是Java开发中的一个强大辅助工具,尤其在处理大量数据库表映射时,它的POJO生成功能能够显著提高开发效率。熟练掌握其使用,不仅能够提升开发速度,还能保证代码质量,是每个Hibernate...
在Java编程领域,POJO(Plain Old Java Object)是一个通俗的术语,用来描述那些没有特殊要求,不依赖任何特定框架的简单Java对象。POJOs通常用于数据存储、传输或者作为业务逻辑层的对象,它们是Java应用程序中的...
为了提高开发效率,开发者经常使用Hibernate Tools来反向工程数据库模式,自动生成POJO(Plain Old Java Object)类,这些类可以直接用于数据操作。本文将详细讲解如何在Eclipse中配置Hibernate Tools以实现注解方式...
在这个场景中,我们讨论的是如何使用MyEclipse工具来生成Hibernate的映射文件以及对应的POJO(Plain Old Java Object)类,这些类是数据库表的Java表示形式。 首先,映射文件是Hibernate的核心组成部分,它是XML...
Hibernate是Java领域内最受欢迎的对象关系映射(ORM)框架之一,它简化了Java应用程序与关系型数据库之间的交互,使得开发人员能够用面向对象的方式处理数据库操作,而无需深入了解SQL语法或数据库API。通过将Java...
2. 实体类和映射文件:讲解如何创建 Java POJO(Plain Old Java Object)作为数据库表的映射,并通过 Hibernate 映射文件(.hbm.xml)来定义对象与表的关系。 3. Session 和 Transaction:解释 Hibernate 中的会话...
MyEclipse中自动生成Hibernate的POJO、DAO和hbm.xml文件 MyEclipse是一款功能强大且流行的集成开发环境(IDE),它提供了许多实用的功能来帮助开发者快速构建和维护项目。其中,MyEclipse提供了对Hibernate的支持,...
"hcg.rar_ant hibernate po_pojo code g" 提供的资源显然是一个利用Ant构建工具和Hibernate ORM框架,自动生成POJO(Plain Old Java Object)和Hibernate映射文件的过程。下面我们将详细探讨这两个关键概念以及它们...
- 表字段到POJO属性:数据库表的每一列映射为POJO类的一个私有成员变量,列的数据类型对应属性的Java类型。 - 主键处理:主键字段在POJO中通常会标记为@Id,以表明其特殊地位。 - 关联关系:如果有外键关联,POJO...
连oracle 数据库,将指定表转为java pojo 类 的 java demo
总结来说,PO-VO-DAO-BO-POJO这些概念在Java开发中非常常见,每种类型的对象都有其特定的作用和应用场景。理解这些概念有助于更好地设计系统架构,提高代码的可维护性和扩展性。在实际开发过程中,根据项目的具体...
### 使用PD(PowerDesigner)自动生成Hibernate的POJO文件及xml配置文件 #### 知识点解析 **一、Hibernate框架简介** Hibernate是一个强大的对象关系映射(ORM)框架,它简化了Java应用程序与数据库之间的交互。...
本篇文章将详细讲解如何根据`hibernate.cfg.xml`文件生成与数据库表对应的POJO(Plain Old Java Object)类,以简化开发过程。 首先,我们需要理解`hibernate.cfg.xml`文件的内容。这个文件通常包含数据库连接信息...
于是试着动手写了一个可以把数据库表自动写成pojo类,并且产生hibernate配置文件。虽然不是什么比较高级的程序,但是我希望也能对大家有一些帮助。不要吃我当时的闭门羹,算是给朋友们,提供一个思路吧。 备注:运行...