hibernate报错
错误如下:
org.hibernate.exception.ConstraintViolationException: could not insert: [orm.Userinfo]
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43
Userinfo.hbm.xml代码:
<hibernate-mapping>
<class name="orm.Userinfo" table="Userinfo" schema="dbo" catalog="woniu">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="native" />
</id>
<property name="username" type="java.lang.String">
<column name="username" length="50" not-null="true" />
</property>
<property name="password" type="java.lang.String">
<column name="password" length="50" not-null="true" />
</property>
<property name="age" type="java.lang.Integer">
<column name="age" />
</property>
</class>
</hibernate-mapping>
package controller;Hibernate Java
import orm.Userinfo;
import orm.UserinfoDAO;
public class Insert {
public String execute(){
Userinfo userinfo = new Userinfo();
userinfo.setUsername("woniu");
userinfo.setPassword("000123");
userinfo.setAge(10);
UserinfoDAO userinfoDAO = new UserinfoDAO();
userinfoDAO.getSession().beginTransaction();
userinfoDAO.attachDirty(userinfo);
userinfoDAO.getSession().getTransaction().commit();
userinfoDAO.getSession().close();
return "";
}
}
[解决办法]
id应该没生成
[解决办法]
违反了约束条件,看看你的数据库定义了什么约束;
或者你先直接用sql执行看看会不会报错,报什么错
[解决办法]
主键方面可能有些小问题,给你个链接,这个参考下吧http://blog.csdn.net/badyflf/article/details/8093342
[解决办法]
如果使用的是oracle数据库,必须创建一个名为 hibernate_sequence的序列