实体类
package org.test.entity;import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;@Entity
@Table(name = "back")
public class Back implements java.io.Serializable { /**
 * 
 */
private static final long serialVersionUID = 970929164209819495L;
/**
 * 
 */
private Integer id; public Back() {
} public Back(Integer id) {
this.id = id;
} @Id
@GeneratedValue(strategy = GenerationType.TABLE)
public Integer getId() {
return this.id;
} public void setId(Integer id) {
this.id = id;
}
}application.xml配置文件
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="hibernateProperties">
<props>
<prop key="hibernate.connection.autocommit">true</prop>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="hibernate.cglib.use_reflection_optimizer">
true
</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
<prop key="hibernate.proxool.xml">proxool.xml</prop>
<prop key="hibernate.proxool.pool_alias">DBPool</prop>
</props>
</property>
<!-- <property name="mappingResources">
<list>
<value>org/test/entity/Back.hbm.xml</value>
</list>
</property>-->
<property name="packagesToScan" value="org.test.entity.*" />
</bean>
dao文件package org.dao.impl;import java.util.List;import javax.annotation.Resource;import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import org.dao.HibernateBaseDao;public class HibernateBaseDaoImpl extends HibernateDaoSupport implements
HibernateBaseDao {  
public Object getEntityById(Class clazz, Integer id) {
  return getHibernateTemplate().get(clazz, id);
} public boolean saveOrUpdate(Object o) {
  getHibernateTemplate().save(o);
return false;
}}一执行dao里的方法就报如下错误org.springframework.orm.hibernate3.HibernateSystemException: Unknown entity: org.test.entity.Back; nested exception is org.hibernate.MappingException: Unknown entity: org.test.entity.Back
at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:676)
at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:424)
at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
at org.springframework.orm.hibernate3.HibernateTemplate.save(HibernateTemplate.java:694)

解决方案 »

  1.   

    <property name="packagesToScan" value="org.test.entity.*" /> 你将上面的 改成下面配置 试试:<property name="annotatedClasses">
    <list>
    <value>org.test.entity.Back</value>
    </list>
    </property>
      

  2.   

    Back.hbm.xml 
    这文件发下看看
      

  3.   

    <value>org/test/entity/Back.hbm.xml </value> 既然是注解,为什么还会出现映射配置文件??给个例子:<!-- 使用Annotation映射的sessionFactory -->
    <bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean ">
    <property name="dataSource" ref="dataSource" />
    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">${hibernate.dialect}</prop>
    <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
    <prop key="hibernate.cache.use_query_cache">${hibernate.cache.use_query_cache}
    </prop>
    <prop key="hibernate.cache.provider_class">${hibernate.cache.provider_class}
    </prop>
    <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}
    </prop>
    </props>
    </property>
    <property name="annotatedClasses">
    <list>
    <value>ssh.demo.model.Child</value>
    <value>ssh.demo.model.Parent</value>
    </list>
    </property>
    </bean>
      

  4.   

    使用annotation就是为了简化配置的!
      

  5.   

    <property name="packagesToScan">
    <list>
    <value>com.duxiu.server.entity.*</value>
    </list>
    </property>将name 属性改为 packagesToScan