解决方案 »

  1.   

    我的想法是好像是User里面的Annotation没有起作用,但是我就不知道问题出在哪里。
      

  2.   

     Field 'id' doesn't have a default value  
      

  3.   

    我知道啊。我在User类的id里面加了@GeneratedValue,没理由报这个错啊。我就想啊是不是sessionFactory里面出了错误。我不知道才问的。上面有链接有我的项目在里面。谢谢你的热心。 
      

  4.   

         @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)--策略类型
    @Column(name = "USER_ID", unique = true, nullable = false, precision = 10, scale = 0)--列定义
      

  5.   

    Field 'id' doesn't have a default value 
    ID没有默认值 
    应该是主键生成策略那块的问题 
    也没那么多时间详细帮你看了··
      

  6.   

    at com.bjsxt.dao.impl.UserDAOImpl.save(UserDAOImpl.java:41)at com.bjsxt.service.UserService.add(UserService.java:22)at com.bjsxt.service.UserServiceTest.testAdd(UserServiceTest.java:18)at com.bjsxt.service.UserServiceTest.main(UserServiceTest.java:25)Caused by: java.sql.SQLException: Field 'id' doesn't have a default value
    可能是你给id赋值,在数据库里又设置自动生成了吧,
    还有上面的几个类,设置断点试试看看到底那不错了。
      

  7.   

    不知道你的表DDL是怎么写的,在id这个字段的定义上加上AUTO_INCREMENT
    比如
    ID` int(11) NOT NULL AUTO_INCREMENT,  试一试看看
      

  8.   

    没有ddl,你是c方向的吧。而且ID` int(11) NOT NULL AUTO_INCREMENT,  我知道是这个问题啊。但是我说的是spring整合hibernate的事情。
      

  9.   

    我自己解决了,谢谢大家。就是搞混了@GenevatedValue的用法。以为表里面就不用写auto-increatement了