异常为:
严重: Servlet.service() for servlet action threw exception
org.hibernate.MappingException: Unknown entity: java.lang.Long
程序走到action类红色这一行的时候抛了异常:
public ActionForward delete(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String id = request.getParameter("id");
manager.deleteById(id);
return list(mapping, form, request, response);
}
相关类在这:
- Java code
public void deleteById(String id) { Long idl=new Long(id); dao.delete(idl); }
然后dao实现:
- Java code
public void delete(Long id) { getHibernateTemplate().delete(id); }
还有POJO
- Java code
private Long id; public Long getId() { return id; } public void setId(Long id) { this.id = id; }
最后POJO类的映射文件:
- XML code
<hibernate-mapping> <class name="com.sa.models.Users" table="Users" schema="sa_db"> <id name="id" column="ID" type="java.lang.Long"> <generator class="native"></generator> </id>
[code=XML][/code]
另外,getHibernateTemplate().find和getHibernateTemplate().save 也就是查询和保存方法都可以正常执行
希望大家能帮下忙了,网上找了很多方法都对不上号...
------解决方案--------------------
是不是类型不对啊。
------解决方案--------------------
是你数据表的id类型有问题