Exception in thread "main" org.hibernate.TypeMismatchException: Provided id of the wrong type. Expected: class java.lang.Long, got class java.lang.Integer
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:86)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
at org.hibernate.impl.SessionImpl.load(SessionImpl.java:795)
at org.hibernate.impl.SessionImpl.load(SessionImpl.java:788)
at com.sinmo.hibernate.dao.Test.main(Test.java:21)
hibernate 3.2查询 主要代码如下:
File fileinfo=(File)session.load(File.class, 3);
用main方法测试:出现Exception in thread "main" org.hibernate.TypeMismatchException: Provided id of the wrong type. Expected: class java.lang.Long, got class java.lang.Integer 错误。
oracle 10g 数据库中主键的类型是number
错误原因:
session.load(File.class,3);方法中的参数3为Int类型,会被自动转换为Integer,而File类中的FIleId属性是Long,它对应的配置文件中也是java.lang.Long,所以出现java.lang.Integer cannot be cast to java.lang.Long异常。
解决方法:
代码改成File fileinfo=(File)session.load(File.class, 3L);在参数中给3加L,表示它是long类型,会自动转换成Long,或者File fileinfo=(File)session.load(File.class, new Long(3));
分享到:
相关推荐
在Java编程语言中,我们使用各种数据...正确选择和配置这些类型可以避免许多潜在的问题,如数据溢出、格式错误和不兼容性。因此,开发者在设计数据库模型时,必须考虑这些映射关系,以便于创建高效且健壮的应用程序。
### Hibernate常见错误解决方案 在开发基于Hibernate框架的应用程序时,我们经常会遇到各种各样的异常情况。这些异常不仅会影响系统的正常运行,还可能增加调试难度。本文将针对几个常见的Hibernate异常进行详细...
Hibernate,作为Java中广泛使用的对象关系映射(ORM)框架,提供了一种优雅的方式来映射枚举类型到数据库。本文将深入探讨Hibernate如何映射枚举类型,并给出实际应用示例。 ### Hibernate枚举映射方式 #### 1. `@...
例如,如果错误地将需要存储大量文本的数据字段映射为一个只适合短字符串的类型(如`VARCHAR(255)`),可能导致数据丢失或存储异常。 同时,了解这些映射还有助于解决可能出现的问题,如数据溢出、类型不匹配导致的...
- **自定义Type**:创建自定义的Hibernate类型,覆盖默认的日期时间处理方式,以满足特定需求。 以上就是关于"解决Hibernate对于Date类型的数据返回结果中时分秒不对的问题"的详细分析和解决方案。在实际开发中,...
### Hibernate 错误解决方案 #### 一、概述 在使用Hibernate框架进行开发的过程中,经常会遇到各种各样的异常问题。这些问题可能会导致程序无法正常运行,甚至影响到系统的稳定性。本文将针对几个常见的Hibernate...
一、Hibernate错误 Hibernate是Java持久层框架,它简化了数据库操作。常见的错误包括: 1. **配置错误**:如XML配置文件中的实体映射错误、数据源配置错误等,可能导致SessionFactory无法创建。 2. **SQL异常**:...
如果遇到错误,例如配置错误导致browse无法选择正确的项目目录,可能需要手动修改`.project`文件的natures部分,确保包含Hibernate的nature。 总的来说,Hibernate是Java开发中的重要工具,它通过ORM解决了数据库...
例如,达梦Hibernate方言会包含对达梦特有的数据类型、函数和存储过程的适配。 对于“达梦Hibernate方言2.0至4.0”,这意味着该方言支持Hibernate框架从2.0到4.0的多个版本。每个新版本的Hibernate都可能引入新的...
解决方案:检查hibernate.cfg.xml文件中的dialect属性,确保其与使用的数据库类型相匹配,例如MySQL应设置为`<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>`。同时,确认项目...
总的来说,解决Hibernate的错误需要仔细检查实体类、映射配置、SQL查询以及参数类型。确保所有元素之间的一致性和正确性,以便于Hibernate能够顺利地执行数据库操作。同时,保持良好的编程习惯,例如使用清晰的命名...
5.6版本还提供了更好的类型安全性和错误检查,减少了运行时错误的可能性。对于大数据量的处理,增加了批量操作和流式API的支持,以提高效率。此外,此版本还增强了对NoSQL数据库的支持,反映了现代应用程序多样化的...
### Hibernate 对 Blob 类型字段进行数据添加 #### 知识点概述 在处理数据库操作时,经常需要存储二进制大对象(Binary Large Object,简称 BLOB),例如图像、视频等非文本数据。BLOB 类型是数据库系统中用于存储...
8. ** Criteria查询**:除了HQL,Hibernate还提供了Criteria API,这是一种更加动态、类型安全的查询方式,可以构建复杂的查询条件。 9. **第二级缓存**:Hibernate支持二级缓存,它可以提高应用程序性能,减少对...
通过使用Hibernate,开发者可以避免手动编写大量的JDBC代码,提高开发效率并减少错误。下面,我们将深入探讨Hibernate 3.3.1框架中的关键知识点: 1. **对象关系映射(ORM)**:ORM是Hibernate的核心,它将数据库表...
在实际应用中,可能还需要考虑错误处理、日志记录、性能优化等问题。整合后的应用可以充分利用Struts 2的MVC优势和Hibernate的ORM功能,提高开发效率,降低维护成本。 在提供的压缩包文件"struts hibernate"中,应...
此外,Hibernate校验支持国际化,可以为不同的语言提供友好的错误消息。 总结 Hibernate校验作为Hibernate框架的一部分,极大地增强了Java对象的数据验证能力。通过使用JSR-303标准,开发者可以方便地在实体类中...
例如,根据数据的实际需求选择合适的类型可以节省存储空间,避免因类型不匹配导致的转换错误,同时也能提高查询效率。在实际开发中,还需要考虑数据库系统的特性,因为不同的数据库系统可能会有不同的类型实现和限制...
理解这些映射关系有助于我们更好地设计实体类,以及正确地配置Hibernate的映射文件(如`.hbm.xml`或使用注解),从而确保数据在Java对象与数据库之间无缝转换,提高开发效率并减少错误。在实际应用中,还需要根据...