2012-09-02 55 views
0

我是Hibernate的新手。最近,我正在嘗試一個簡單的示例,使用Spring和Hibernate將我的UI與數據庫連接起來。Java - 休眠異常 - 反饋無法映射[來自反饋]

我能夠成功地調用一個方法來通過我的控制器,服務等使用REST獲取數據。 但是我遇到下面的錯誤,每當我運行該應用程序。 這裏「反饋」是數據庫中Table的名稱以及我的Pojo Java類的同名。

注意:爲表和Java類分配不同的名稱也會導致相同的錯誤。

org.springframework.orm.hibernate3.HibernateQueryException:反饋 未映射[來自Feedback];嵌套的異常是 org.hibernate.hql.ast.QuerySyntaxException:反饋未被映射 [從反饋]

爪哇POJO的: -

import javax.persistence.Column; 
import javax.persistence.Entity; 
import javax.persistence.GeneratedValue; 
import javax.persistence.Id; 
import javax.persistence.Table; 

@Entity 
@Table(name="Feedback") 
public class Feedback { 
    private int id; 
    private String title; 
    private String content; 
    private String name; 

    @Id 
    @GeneratedValue 
    @Column(name="id") 
    public int getId() { 
     return id; 
    } 
    public void setId(int id) { 
     this.id = id; 
    } 

    @Column(name="title", nullable=false) 
    public String getTitle() { 
     return title; 
    } 
    public void setTitle(String title) { 
     this.title = title; 
    } 

    @Column(name="content", nullable=false) 
    public String getContent() { 
     return content; 
    } 
    public void setContent(String content) { 
     this.content = content; 
    } 

    @Column(name="name", nullable=false) 
    public String getName() { 
     return name; 
    } 
    public void setName(String name) { 
     this.name = name; 
    } 
    @Override 
    public String toString() { 
     return "Feedback [id=" + id + ", title=" + title + ", content=" 
       + content + ", name=" + name + "]"; 
    } 
} 

FeedbackDAO: -

@Repository 
public class FeedbackDAO implements IFeedbackDAO { 

    private HibernateTemplate hibernateTemplate; 

    public HibernateTemplate getHibernateTemplate() { 
     return hibernateTemplate; 
    } 

    @Autowired 
    public void setSessionFactory(SessionFactory sessionFactory) { 
     hibernateTemplate = new HibernateTemplate(sessionFactory); 
    } 

    @SuppressWarnings("unchecked") 
    public List<Feedback> getFeedbackList() { 

     // This line causes that error. 
     return hibernateTemplate.find("from Feedback"); 

    } 
     ... 
     ... 
} 

db-config.xml的配置

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> 
     <property name="sessionFactory"><ref local="sessionFactory"/></property> 
    </bean> 

這可能是什麼原因造成的?

我在這裏錯過了什麼嗎?

謝謝

+0

如果您需要更多的細節,請讓我知道。 – Daemon

回答

2

您可能錯過了sessionFactory定義中的一件事。

<bean id="sessionFactory" ...> 
    ... 
    <property name="annotatedClasses"> 
     <list> 
      <value><java package name here>.Feedback</value> 
     </list> 
    </property> 
    ... 
</bean> 
+0

就是這樣!我繼續在這裏提到一些其他的軟件包目錄..謝謝!這解決了它.. – Daemon

+0

沒問題。我曾經遇到過同樣的問題。 –