首页 新闻 搜索 专区 学院

SpringMVC接收参数封装实体插入数据库导致字段超长报错求解

0
悬赏园豆:40 [已解决问题] 解决于 2014-08-30 15:41
 
1 @RequestMapping(value = "/addgoods.jspx", method = RequestMethod.POST)
2     public String stockin(GoodsInfo goods) {
3         boolean flag =  miShopService.addgoods(goods);
4         return null;
5     }


将页面数据封装到GoodsInfo实体,然后插入数据库
INSERT INTO mishop.goods (NAME,CODE) VALUES (?,?)

报错:
HTTP Status 500 - Request processing failed; nested exception is org.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL [INSERT INTO mishop.goods (NAME,CODE) VALUES (?,?)]; Data truncation: Data too long for column 'code' at row 1; nested exception is com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'code' at row 1

数据库code字段的为varchar(100),页面接收的是数据是"0001",明显没有超长。GoodsInfo实体中code的类型也是String

页面编码格式为:
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

数据库和数据库表的编码格式都是UTF-8  utf8_general_ci,引擎为InnoDB.

求教大神这是怎么回事?求解决方法,叩谢。

青青草原抓羊小能手的主页 青青草原抓羊小能手 | 初学一级 | 园豆:118
提问于:2014-08-09 13:48
< >
分享
最佳答案
0

你在这个函数里面打印一下code的值或者debug看一下code传过来的有没有问题,如果没有的话,应该不是springmvc的问题,得看你用的orm框架了,看你用的spring-dao,这个倒是没用过,如果code传过来没问题,就检查一下orm的配置吧

收获园豆:40
琴剑飘零 | 菜鸟二级 |园豆:409 | 2014-08-11 10:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册