21:52:32,263  INFO SettingsFactory:259 - Cache region prefix: hibernate.test
21:52:32,263  INFO SettingsFactory:263 - Structured second-level cache entries: disabled
21:52:32,283  INFO SettingsFactory:283 - Echoing all SQL to stdout
21:52:32,293  INFO SettingsFactory:290 - Statistics: disabled
21:52:32,293  INFO SettingsFactory:294 - Deleted entity synthetic identifier rollback: disabled
21:52:32,293  INFO SettingsFactory:309 - Default entity-mode: pojo
21:52:32,293  INFO SettingsFactory:313 - Named query checking : enabled
21:52:32,393  INFO SessionFactoryImpl:161 - building session factory
21:52:33,284  INFO SessionFactoryObjectFactory:82 - Not binding factory to JNDI, no JNDI name configured
Hibernate: insert into st (name, id) values (?, ?)
21:52:33,494  WARN JDBCExceptionReporter:77 - SQL Error: 1406, SQLState: 22001
21:52:33,494 ERROR JDBCExceptionReporter:78 - Data too long for column 'id' at row 1
21:52:33,504 ERROR AbstractFlushingEventListener:301 - Could not synchronize database state with session
org.hibernate.exception.DataException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:77)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:253)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:237)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at org.apache.jsp.jsp1_jsp._jspService(org.apache.jsp.jsp1_jsp:64)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.BatchUpdateException: Data too long for column 'id' at row 1
at com.mysql.jdbc.ServerPreparedStatement.executeBatch(ServerPreparedStatement.java:853)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
... 28 more

解决方案 »

  1.   

    Data too long for column 'id' at row 1
    我也在吐血,怎么能贴这么长,找错误的地方贴阿,别的贴有什么用。
    你看看你数据库里面定义的是不是太短了(id)
      

  2.   

    Caused by: java.sql.BatchUpdateException: Data too long for column 'id' at row 1
      

  3.   

    看完很累up 楼上的
    id 插入出问题
    查看数据库下
      

  4.   

    id
    已经很长了啊好像 ,这种id用Long的比较好
      

  5.   

    http://blog.csdn.net/qiudawei115,有个小例子