Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationEx_csdnZCjava的博客-程序员秘密_error updating database. cause: org.springframewor

技术标签: 项目异常  

     Error updating database.  Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null

HTTP Status 500 - Request processing failed; nested exception is org.springframework.dao.DataIntegrityViolationException:


type Exception report

message Request processing failed; nested exception is org.springframework.dao.DataIntegrityViolationException:

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.dao.DataIntegrityViolationException: 
### Error updating database.  Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
### The error may involve com.heitian.ssm.dao.UserDao.insertUser-Inline
### The error occurred while setting parameters
### SQL: INSERT INTO t_user(id,user_name,user_phone,user_email,user_pwd,pwd_salt,create_time,modify_time,is_delete)         VALUES (?,?,?,?,?,?,?,?,?)
### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
; SQL []; Column 'id' cannot be null; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:980)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

root cause

org.springframework.dao.DataIntegrityViolationException: 
### Error updating database.  Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
### The error may involve com.heitian.ssm.dao.UserDao.insertUser-Inline
### The error occurred while setting parameters
### SQL: INSERT INTO t_user(id,user_name,user_phone,user_email,user_pwd,pwd_salt,create_time,modify_time,is_delete)         VALUES (?,?,?,?,?,?,?,?,?)
### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
; SQL []; Column 'id' cannot be null; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
	org.springframework.jdbc.support.SQLExceptionSubclassTranslator.doTranslate(SQLExceptionSubclassTranslator.java:85)
	org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
	org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
	org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
	org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:371)
	com.sun.proxy.$Proxy14.insert(Unknown Source)
	org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:240)
	org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:51)
	org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
	com.sun.proxy.$Proxy15.insertUser(Unknown Source)
	com.heitian.ssm.service.impl.UserServiceImpl.insertUser(UserServiceImpl.java:29)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	java.lang.reflect.Method.invoke(Method.java:606)
	org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
	org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
	org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
	org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
	org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
	org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
	org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
	org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
	com.sun.proxy.$Proxy20.insertUser(Unknown Source)
	com.heitian.ssm.controller.UserController.addUser(UserController.java:36)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	java.lang.reflect.Method.invoke(Method.java:606)
	org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:178)
	org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:444)
	org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:432)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

root cause

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'id' cannot be null
	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:526)
	com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
	com.mysql.jdbc.Util.getInstance(Util.java:386)
	com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1041)
	com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4237)
	com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4169)
	com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2617)
	com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2778)
	com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2834)
	com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2156)
	com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1379)
	org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:169)
	org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:44)
	org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:69)
	org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:48)
	org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:105)
	org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:71)
	org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:152)
	org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:141)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	java.lang.reflect.Method.invoke(Method.java:606)
	org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:358)
	com.sun.proxy.$Proxy14.insert(Unknown Source)
	org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:240)
	org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:51)
	org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
	com.sun.proxy.$Proxy15.insertUser(Unknown Source)
	com.heitian.ssm.service.impl.UserServiceImpl.insertUser(UserServiceImpl.java:29)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	java.lang.reflect.Method.invoke(Method.java:606)
	org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
	org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
	org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
	org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
	org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
	org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
	org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
	org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
	com.sun.proxy.$Proxy20.insertUser(Unknown Source)
	com.heitian.ssm.controller.UserController.addUser(UserController.java:36)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	java.lang.reflect.Method.invoke(Method.java:606)
	org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:178)
	org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:444)
	org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:432)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.78 logs.


Apache Tomcat/7.0.78


注;这是一个很小的问题,却卡了我两天,脑袋发蒙

解决办法:

1.首先看下你的sql语句有没有写错,创建表的时候有没有给id主键,自增长

2.就是可以在数据库可视化工具中看下自动增长有没有打勾,如果没有,打上勾如图:

重新启动代码,运行就OK了.



版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/csdnZCjava/article/details/75253381

智能推荐

linux使用xshell远程上传文件_linux系统通过xshell上传文件_鱼大虾的博客-程序员秘密

1.安装服务yum -y install lrzsz2.上传命令:rz 选择文件进行上传即可.上传的文件默认保存linux当前所在目录3.下载命令:sz

nginx+uwsgi+django+python环境部署文档_django分布式部署_KISSING_hu的博客-程序员秘密

nginx+uwsgi+django+python环境部署文档 为获得更好的阅读效果,请下载本文PDF文档:python+django+nginx+uwsgi环境部署文档下载地址:http://www.linuxyw.com/download/python_django_nginx_uwsgi.pdf环境:系统:Centos

Elasticsearch的实际使用场景案例_elasticsearch实际用法_清思越的博客-程序员秘密

京东到家订单中心系统业务中,无论是外部商家的订单生产,或是内部上下游系统的依赖,订单查询的调用量都非常大,造成了订单数据读多写少的情况。我们把订单数据存储在MySQL中,但显然只通过DB来支撑大量的查询是不可取的。同时对于一些复杂的查询,MySQL支持得不够友好,所以订单中心系统使用了Elasticsearch来承载订单查询的主要压力。

Intall a perfect Ubuntu_silentvoid的博客-程序员秘密

 推荐breezy server安装,再手动安装X-Window等等,否则会装上一大堆乱七八糟的东西1.修改源,下面是我的source,注意的是有些要做gpg key~#sudo vi /etc/apt/source.listps:推荐使用vi,gedit对我等的低配置机器是种折磨#deb cdrom:[Ubuntu 5.10 _Breezy Badger_ - Release i386 (2

Jar混淆打包_jar包混淆_ONE_PUNCH_Ge的博客-程序员秘密

混淆工具jar包混淆工具挺多的,实现原理不尽相同,这里使用的classfinal,classfinal介绍ClassFinal是一款java class文件安全加密工具,支持直接加密jar包或war包,无需修改任何项目代码,兼容spring-framework;可避免源码泄漏或字节码被反编译。Gitee:ClassFinal: Java字节码加密工具项目模块说明classfinal-core:ClassFinal的核心模块,几乎所有加密的代码都在这里; classfinal-f..

linux启动mysql_mcxiaochi的博客-程序员秘密

启动1、使用 service 启动:service mysql start2、使用 mysqld 脚本启动:/etc/inint.d/mysql start3、使用 safe_mysqld 启动:safe_mysql&停止1、使用 service 启动:service mysql stop2、使用 mysqld 脚本启动:/etc/inint.d/mysql stop3、...

随便推点

swfupload用法总结_aoyunlian9546的博客-程序员秘密

<script src="${base}/thirdparty/swfupload/swfupload.js" type="text/javascript"></script><script src="${base}/thirdparty/swfupload/swfupload.queue.js" type="text/javascript">...

signature=f5167628093410e761b6253525a5940b,Code Signing Tasks_weixin_39956182的博客-程序员秘密

Code Signing TasksTypically, Xcode handles most code signing tasks for you, helping you manage your code signing identity, and applying your code signature to apps that you build and distribute. Letti...

如何在云服务器上跑深度学习的代码?(ResNet50为例)_怎么在服务器上跑代码_一支王同学的博客-程序员秘密

关键字:如何租用云服务器、如何租用网上的GPU、如何把代码上传到云服务器、如何把数据集上传到云服务器、如何在云服务器上训练ResNet50。

python自动监控日志,发邮件通知_q279838089的博客-程序员秘密

python_log用途:服务器运维功能:自动读取日志文件,如果文件有新增内容,自动发送内容到指定邮箱用例:ci日志文件,laravel日志文件,apache日志文件,php日志文件语言:python3.5安装:git clone [email protected]:279838089/python_log.gitcrontab -e* * * * * python3 /path/log_mai

jdk1.4 1.5 1.6区别_iteye_6056的博客-程序员秘密

jdk6和jdk5相比的新特性有: 1、instrumentation 在 Java SE 6 里面,instrumentation 包被赋予了更强大的功能:启动后的 instrument、本地代码 instrument,以及动态改变 classpath 等等。 2、Http有所增强 3、 Java 管理扩展(JMX) 架构及其框架,以及在 Java SE 5 中新引入的 JMX API...

avod报错:AttributeError: module ‘google.protobuf.internal.containers‘ has no attribute ‘MutableMapping_木琦的博客-程序员秘密

报错;AttributeError: module ‘google.protobuf.internal.containers’ has no attribute ‘MutableMapping’解决方案:版本不一致(avod) [[email protected] avod]# protoc --versionlibprotoc 3.3.0(avod) [[email protected] avod]# pip show protobufName: protobufVersion: 3.19.1Sum