是否可以映射名称与表列不同的POJO字段?

时间:2013-08-19 21:04:15

标签: java xml ibatis

我对ibatis比较陌生。我知道它已经升级到mybatis,但出于某种原因我必须使用ibatis。我的问题是“是否可以映射名称与表格列不同的POJO字段?”

我有一个表,映射文件和POJO类。如果我的POJO类的名称与表中的列完全相同,我可以成功读取数据,但是如果我将该字段命名为其他内容,则它不起作用。我更改了相应的getter并在映射文件中定义了一个resultMap,如下所示

<resultMap id="result" class="Subscriber">
    <result column="AdvisorId" property="id" jdbcType="INTEGER"/>
    <result column="FirstName" property="FirstName" jdbcType="VARCHAR"/> 
    <result column="LastName" property="LastName" jdbcType="VARCHAR"/> 
    <result column="EmailId" property="EmailId222" jdbcType="VARCHAR"/>
</resultMap>

<select id="getAll" resultMap="result">
    SELECT AdvisorId,FirstName,LastName,EmailId FROM communication
</select>

这里举个例子,我试图将POJO字段中的EmailId重命名为EmailId222

1 个答案:

答案 0 :(得分:0)

Subscriber 类中,您必须为该字段定义 getter setter 方法。如有必要,请小心使用大写字母。然后,您必须重新启动应用程序才能使更改生效。在您的情况下,您应该实现:

getEmailId222(){...}

setEmailId222(String EmailId222){...}