0

我的 Java 应用程序使用 Oracle 10g 作为数据库的休眠。我遇到了一个问题,无法继续,我需要你的帮助。以下是我面临的问题。

我的一个 Oracle 表中有一个列,其数据类型为Varchar2(1 byte). 我想知道我需要在我的 pojo 类中使用的正确数据类型。同样在休眠映射文件中,同一属性的数据类型应该是什么。当我运行文件时,hibernate 不断给出错误,例如无法进行转换。下面是我的pojo和.hbm文件

public class destination implements Serializable{

    private String configId;        
    private String isCurrent;        
    //other properties and getter, setters

}

目的地.hbm.xml

<class name="com.testing" table="configuration">
    <id name="configID" type="java.lang.Integer">
        <column name="configuration_id" />
        <generator class="identity" />
    </id>
   <property name="isCurrent" type="Not-SURE">
        <column name="is_current" not-null="true" />
    </property>

我正在谈论的专栏是isCurrentpojo 和.hbm.xml文件中的属性。Varchar2(1 byte)它在分贝中定义。我不确定数据类型并将其标记为 aString但问题仍然存在。

我已经搜索了网络,但没有找到任何适当的解决方案来解决这个问题。

你能帮帮我吗,因为它真的很吃我的头。

4

2 回答 2

1

我将专注于您在类中将其声明为 String 但在 xml 中声明为 Integer 的 configId。

<id name="configID" type="java.lang.Integer">
于 2012-08-10T19:04:10.213 回答
0

我猜你想在记录中存储当前标志。在这种情况下,你可以做

public class destination implements Serializable{

    private String configId;        
    private boolean current;        

    public boolean isCurrent() {
        return current;
    } 

}

和 hbm 映射之类的

<property name="current" type="yes_no">
        <column name="is_current" not-null="true" />
    </property>
于 2012-08-10T22:45:11.597 回答