休眠返回 null 列表



我正在尝试使用Hibernate,但是当我执行查询时,我收到一个实体列表,其中所有属性都是NULL。问题是,当我直接使用 jdbc 时,我能够从我的 DB 中检索值。我阅读了有关 NULL 值的类似文章,但无法弄清楚我的情况出了什么问题。下面你看到:1) 我的实体:网上商店

public class Eshop  implements java.io.Serializable {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    public Eshop() {}
    public Eshop(int eshopId, String code, String name, String lastModified) {
    this.eshopId = eshopId;
    this.code = code;
    this.name = name;
    this.lastModified = lastModified;
}
    public int eshopId;
    public String code;
    public String name;
    public String lastModified;
    public int getEshopId() {
        return eshopId;
    }
    public void setEshopId(int eshopId) {
        eshopId = eshopId;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        code = code;
    }

    public String getName() {
        return name;
    }
    public void setName(String name) {
        name = name;
    }

    public String getLastModified() {
        return lastModified;
    }
    public void setLastModified(String lastModified) {
        lastModified = lastModified;
    }

2)冬眠映射

<hibernate-mapping>
   <class name="dataModel.Eshop" table="Eshop">
      <meta attribute="class-description">
         This class contains the Eshop details. 
      </meta>
      <id name="eshopId" type="int" column="EshopId">
         <generator class="native"/>
      </id>
      <property name="code" column="Code" type="string"/>
      <property name="name" column="Name" type="string"/>
      <property name="lastModified" column="LastModified" type="string"/>
   </class>
</hibernate-mapping>

这就是我运行查询的方式:

Configuration config = new Configuration().configure(); 
SessionFactory sessionFactory = config.buildSessionFactory();
Session session = sessionFactory.getCurrentSession();
session.beginTransaction();
Query hibernateQuery = session.createQuery("from Eshop");
List<Eshop> Eshops = hibernateQuery.list();

因此,当我运行查询时,我收到我的 Db 中的确切数量的电子商店,但它们的所有属性值均为空!!一个想法??谢谢

你所有的二传手都是错的:

public void setEshopId(int eshopId) {
    eshopId = eshopId;
}

这是个呜。它应该是

public void setEshopId(int eshopId) {
    this.eshopId = eshopId;
}

尝试像这样添加hibernate.cfg.xml

   Configuration config = new Configuration().configure("hibernate.cfg.xml"); 

最新更新