Hibernate映射问题

时间:2011-08-20 16:56:11

标签: hibernate hibernate-mapping

这里非常简单的问题......但是我无法解决这个问题。 我的模型中有一个简单的类

public class Catalogazione extends ModelEntity {

private String nome;
private int showBox;

public int getShowBox() {
    return showBox;
}

public void setShowBox(int showBox) {
}

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}
}

请注意,ModelEntity还定义了一个id属性,整数也是如此。 它使用此映射文件映射到oracle表:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
<hibernate-mapping>
    <class name="alekso.npe.model.Catalogazione" table="Catalogazione" lazy="false">
        <id name="id" column="ID">           
        </id>       
        <property name="nome" column="Nome" />  
        <property name="showBox" column="ShowBox" type="integer"/>  

    </class>
</hibernate-mapping>

很简单。 从数据库中检索对象时,showBox属性始终为0。 这是用于检索对象列表的代码

public List<Catalogazione> getAll() throws Exception {
    List<Catalogazione> catalogazioni = new ArrayList<Catalogazione>();
    Session session = null;
    try {
        session = SessionFactoryUtil.getInstance().openSession();
        String query = "from Catalogazione as cat";
        catalogazioni = session.createQuery(query).list();
        return catalogazioni;
    } catch (Exception ex) {
        // log error
    } finally {
        session.close();
    }
}

就是这样。 Catalogazioni的每个实例都有showBox = 0,即使在db中有多个值。 谁能告诉我为什么?此外,id同样映射到db上的整数字段,它工作正常......我缺少什么?

1 个答案:

答案 0 :(得分:0)

你的二传手没有做任何事情:

public void setShowBox(int showBox) {
}
^---