Hibernate:将列子字符串映射到字段

时间:2014-10-21 13:20:47

标签: java hibernate

我想知道是否可以映射表列" substring"到一个领域,这是一个样本。 最初 - > 列名为' description'包含此字符串' 123456789' 映射后 - > 名为' descSummary'的java类字段包含' 123'。

提前致谢。

2 个答案:

答案 0 :(得分:0)

一种方法是使用Hibernate自定义UserType。

一个粗略的例子(界面中的一些方法被遗漏以便于阅读):

package org.example;

public class SubstringUserType implements UserType {
    @Override
    public Class<String> returnedClass() {
        return String.class;
    }

    @Override
    public Object nullSafeGet(final ResultSet rs, final String[] names, final SessionImplementor    session, final Object owner) throws HibernateException, SQLException {
        if (rs != null || names.length != 0 || null != names[0]) {
            String desc = rs.getString(names[0]);
            return desc.substring(0, 3);
        }
    }
}

并在字段上使用以下注释。

@Type(type = "org.example.SubstringUserType")

答案 1 :(得分:0)

是使用Column Transformer