`
linliangyi2007
  • 浏览: 1013010 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

一个无奈的Hibernate问题

阅读更多
背景:
1.数据库使用Oracle,表字段 ColA 被定义为 char(10)(字段类型不能修改,这个是接口方定的)
2.hibernate使用NativeSQL查询(由于项目种种原因,不能使用标准Hibernate的OO方式)。

问题:
从list中返回了List<Object[]>对象,but每行的Object[]中, ColA被Hibernate转成了Character对象,只有一位,后面的char都被截断了.
查了hibernate的文档,知道可以设定每个字段的转化类型,but我们的sql是动态配置的,并不能确定某个字段一定是那种类型,因此此方法不能用了。

暂时的方案:
退回jdbc时代,直接读取DB的META,然后在读数据。


这里的疑问是,为啥Hibernate对Char字段的映射只能是1位嘛,觉得这个转换有问题!!

大家说说,又或者是本人太菜,学艺不精

分享到:
评论
3 楼 linliangyi2007 2009-09-18  
魔力猫咪 写道
没有OO还不如不用Hibernate。
Char(1)的问题没遇到过。因为没见过你们这种用法。典型把简单往麻烦里搞。


你说的很对,单从这个功能讲是不用Hibernate的。但是,这个功能只是整个大应用的很小一部分。而整个大系统是基于Hibernate上的,其他的模块是标准的OO建模。因此,目前只能从hibernate中获取jdbc的connection对象,来解决这个问题。
2 楼 erotica 2009-09-18  
通过
   public SQLQuery addScalar(String columnAlias, Type type) 限定他返回String就行
1 楼 魔力猫咪 2009-09-18  
没有OO还不如不用Hibernate。
Char(1)的问题没遇到过。因为没见过你们这种用法。典型把简单往麻烦里搞。

相关推荐

    hibernate的第一个例子

    **标题解析:**“hibernate的第一个例子”表明这是一个关于Hibernate框架的基础教程,主要目标是展示如何使用Hibernate进行数据持久化操作。 **描述分析:**描述提到这是一个超级简单的例子,包含一个持久化对象...

    hibernate第一个hibernate

    《Hibernate入门:初识与实践》 ...总之,"hibernate第一个hibernate"项目是一个绝佳的起点,它将引导你了解并掌握Hibernate的基本概念和操作。通过实践,你可以逐步熟悉ORM思想,为后续的Java开发奠定坚实的基础。

    第一个手写Hibernate

    "第一个手写Hibernate"项目旨在帮助开发者深入理解Hibernate的工作原理,通过手动编写相关代码,以实践的方式来学习和掌握Hibernate的核心概念。 **一、Hibernate简介** Hibernate是一个开源的ORM框架,它允许...

    菜鸟快速运行第一个hibernate

    ”表达了这个教程的目标是避免新手在学习过程中遇到常见问题,确保他们能够顺利地完成第一个Hibernate应用的搭建和运行。 **知识点详解** 1. **Hibernate简介**:Hibernate是一个开源的ORM框架,它将Java对象与...

    springMvc+Hibernate实现的一个问题管理系统

    本文将深入探讨如何使用SpringMvc和Hibernate这两个强大的框架,构建一个功能完善的问题管理系统。首先,我们来看看SpringMvc和Hibernate的核心概念及其在项目中的作用。 SpringMvc是Spring框架的一个模块,专门...

    hibernate第一个例子

    【hibernate第一个例子】 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作。本示例将引导初学者了解如何使用Hibernate进行简单的数据库连接和操作。 首先,我们需要...

    Hibernate面试题专栏 - 最全的Hibernate面试题, Hibernate笔试题, Hibernate问题

    Hibernate是一个用于简化Java数据库编程的开源框架,它提供了一种在Java应用程序中持久化对象的方式,避免了直接编写SQL语句,提高了开发效率。 **1. Hibernate基本概念** - **对象关系映射(ORM)**: ORM是将...

    hibernate完整的一个项目

    **hibernate完整的一个项目** 本项目旨在提供一个完整的Hibernate框架的实现,涵盖了从环境搭建到实际应用的全过程。Hibernate是Java开发中的一个强大的对象关系映射(ORM)框架,它简化了数据库与Java对象之间的...

    Hibernate 配置各种数据库

    Hibernate 是一个基于 Java 的持久层框架,提供了一个抽象的数据访问层,能够与多种数据库进行集成。在 Hibernate 的配置文件中,我们可以配置不同的数据库连接,包括驱动程序、URL 等信息。 配置 Hibernate 连接...

    hibernate需要的10个jar

    在Java开发领域,Hibernate是一个非常重要的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以使用面向对象的方式来处理数据。当涉及到Hibernate项目时,为了使其正常运行,通常需要一系列的JAR(Java ...

    Hibernate Hibernate5 讲义 PDF

    Hibernate是一个开源的对象关系映射(ORM)框架,它封装了JDBC(Java Database Connectivity)的复杂性,并允许Java开发者以面向对象的方式操作数据库。Hibernate框架被广泛应用于企业级Java应用程序中,可以与...

    Hibernate实践例子程序

    Hibernate 是一个开源的O/R mappimg的框架,基于JDBC提供了一种持久性数据管理的方案,相对于EntityBean来说是相当轻量级的。由于Hibernate是基于 JDBC的,所以它的数据库查寻的能力相对于CMP来说也是异常强大的,...

    我的第一个hibernate例子

    # Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的...

    Hibernate入门到精通

    Hibernate 是一个基于Java的ORM(Object-Relational Mapping,对象关系映射)框架,它提供了一种简洁高效的方式来访问和操作关系数据库。下面是 Hibernate 的主要知识点: Hibernate 简介 Hibernate 是一个开源的...

    Hibernate相关jar包括新版本jdk不兼容旧版本的jar.zip

    因此,"解决Hibernate与jdk新版本不兼容的jar问题"可能是提供了一个升级后的Hibernate库,或者是包含了特定的补丁或者配置,使得Hibernate能够在新JDK环境下正常工作。 在"lib"目录下,可能包含了所有必要的...

    Hibernate update问题

    Hibernate,一个强大的Java对象关系映射(ORM)框架,极大地简化了数据库操作。在处理数据更新时,Hibernate提供了多种方法,但同时也可能会遇到一些常见问题。本篇文章将深入探讨Hibernate更新机制及其可能遇到的...

    第一个Hibernate代码, Hello Hibernate

    "第一个Hibernate代码, Hello Hibernate" 这个标题表明我们将要探讨的是一个初学者级别的Hibernate教程,可能是通过一个简单的项目或示例来介绍如何使用Hibernate框架。Hibernate是一个开源的对象关系映射(ORM)...

    一个好的hibernate源代码有server2008数据库

    标题提到的是“一个好的hibernate源代码有server2008数据库”。这里我们可以理解为,这是一个关于Hibernate框架的示例项目,它使用了Microsoft SQL Server 2008作为后端数据库。Hibernate是Java开发中常用的一个对象...

    JSP+Hibernate实现留言板

    Hibernate是一个流行的开源对象关系映射(ORM)框架,它简化了Java应用与关系型数据库之间的交互。通过Hibernate,开发者可以使用面向对象的方式处理数据库操作,而无需关心底层SQL语句的编写。 在留言板系统中,...

    Hibernate,hibernate笔记

    Hibernate 是一个开源的对象关系映射(ORM)框架,它允许Java开发者使用面向对象的方式来操作数据库。这个框架将数据库操作转化为对Java对象的操作,简化了数据持久化的复杂度。以下是对Hibernate的一些关键知识点的...

Global site tag (gtag.js) - Google Analytics