hibernate unknown entity EnhancerByCGLIB
我是新手,麻烦高手指点一下下面是错误代码:
具体的代码如下:
Java code?12345678 org.springframework.orm.hibernate3.HibernateSystemException: Unknown entity: com.oa.model.Organization$$EnhancerByCGLIB$$40141085; nested exception is org.hibernate.MappingException: Unknown entity: com.oa.model.Organization$$EnhancerByCGLIB$$40141085 org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:676) org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412) org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:424) org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374) org.springframework.orm.hibernate3.HibernateTemplate.save(HibernateTemplate.java:694) com.oa.dao.imp.OrgDaoImp.addOrg(OrgDaoImp.java:15)
Organization.hbm.xml
Java code?12345678910111213141516171819202122 <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="com.oa.model.Organization" table="t_organization"> <id name="id"> <generator class="native"/> </id> <property name="name"/> <property name="sn"/> <property name="description"/> <many-to-one name="parent" column="pid"></many-to-one> <set name="children" > <key column="pid"></key> <one-to-many class="com.oa.model.Organization"/> </set> </class> </hibernate-mapping>
action 代码:
Java code?12345678910111213141516171819202122 package com.oa.web; import javax.annotation.Resource; import com.oa.model.Organization; import com.oa.service.OrgService; public class OrgAction { @Resource OrgService orgService; private Organization organization; public Organization getOrganization() { return organization; } public void setOrganization(Organization organization) { this.organization = organization; } public void add() { this.orgService.addOrg(this.organization,0); } }
application代码:
Java code?12345678910111213141516171819202122232425262728293031323334353637383940 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" /> <property name="url" value="jdbc:sqlserver://localhost:1433;DataBaseName=moa" /> <property name="username" value="sa" /> <property name="password" value="yczn" /> <!-- 连接池启动时的初始值 --> <property name="initialSize" value="1" /> <!-- 连接池的最大值 --> <property name="maxActive" value="500" /> <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 --> <property name="maxIdle" value="2" /> <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 --> <property name="minIdle" value="1" /> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mappingDirectoryLocations"> <list> <value>classpath:/com/oa/vo</value> </list> </property> <property name="hibernateProperties"> <value> hibernate.dialect=org.hibernate.dialect.SQLServerDialect hibernate.hbm2ddl.auto=updata hibernate.show_sql=true hibernate.format_sql=true </value> </property> </bean> <bean id="orgService" class="com.oa.service.imp.OrgServicImp" > </bean> <bean id="orgAction" class="com.oa.web.OrgAction"> </bean>
现在是能得到页面的数据,但是添加时出现上述错误,望高手解答:
还有就是,如果是new一个实体类进行添加时,是没有问题的.... unknown entity --------------------编程问答-------------------- 添加的时候 好像就得 new 一个 实体类吧
你没 new 你是怎么添加的? --------------------编程问答-------------------- private Organization organization;没有加@Resource或者在配置文件内配置
hibernate.hbm2ddl.auto=updata update --------------------编程问答-------------------- 顶楼上。。 --------------------编程问答-------------------- 谢谢各位 还是不行1问题的关键是hibernate 识别不了 被代理的类 插入就有问题
org.hibernate.MappingException: Unknown entity: com.hopsun.icenter.entity.IcSubscribeChannelType$$EnhancerByCGLIB$$97e31e13 --------------------编程问答-------------------- 楼主啊 我也遇到了这个问题,请教楼主你是怎么解决的 --------------------编程问答-------------------- 我也是这个问题 怎么解决呀!! --------------------编程问答-------------------- 看看applicationContest.xml中有没有映射描述文件如:
<property name="mappingResources">
<list>
<value>org/tarena/dang/entity/User.hbm.xml</value>
<value>org/tarena/dang/entity/Category.hbm.xml</value>
<value>org/tarena/dang/entity/Product.hbm.xml</value>
<value>org/tarena/dang/entity/Book.hbm.xml</value>
</list>
</property>
补充:Java , Web 开发