通过jsp页面反向生成了一个对象  id属性为空,导致后面无法插入数据库
<id name="ids" type="java.lang.Integer">
            <column name="IDS" precision="10" scale="0" />
            <generator class="sequence">
              <param name="sequence">SEQ_NEWS_COMMENT_ID</param>
            </generator>
        </id>
        <many-to-one name="newsDetail" class="com.y09.entity.NewsDetail" update="false" insert="false" fetch="select" lazy="false">
            <column name="IDS" precision="10" scale="0" not-null="true" unique="true" />
        </many-to-one>
页面提示java.sql.BatchUpdateException: ORA-01400: 无法将 NULL 插入 ("BOOLEA"."NEWS_COMMENT"."NEWSID")

解决方案 »

  1.   

    问题应该是出在主键生成策略,用native方式最简单啦,有数据库自动生成。
      

  2.   

    假如你的表PK是自增的,那么 <generator class="sequence">要改为 <generator class="increment">
      

  3.   

    你说错了。。他这个是对的无法将 NULL 插入 ("BOOLEA"."NEWS_COMMENT"."NEWSID")  这是三个字段中有一个配置的不允许为空,但是却传了空值。。
      

  4.   

    你说错了。。他这个是对的无法将 NULL 插入 ("BOOLEA"."NEWS_COMMENT"."NEWSID")  这是三个字段中有一个配置的不允许为空,但是却传了空值。。这个空很有可能是主键没生成哟