实际存储长度超过mysql字段定义长度 报错了怎么还存储成功了?

lt_iuao 2016-12-28 01:14:35
我用的ssm框架 在界面input输入一个超过数据库字段定义长度的内容,然后他跳到我自定义的报错页面,我去数据库看 ,存储成功了,数据被截留了,我想让他超过长度报错,不让数据库存储成功怎么弄?
...全文
999 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
pxfinal 2018-02-28
  • 打赏
  • 举报
回复
配置文件中有 length="50" 把这个长度去掉, 就会报错了。
GrayHJX 2016-12-28
  • 打赏
  • 举报
回复
引用 13 楼 lt_iuao 的回复:
[quote=引用 4 楼 donggua3694857 的回复:] 在你进行数据库操作的地方加上@Transactional
兄弟 你这方法也好使 也可以 谢啦[/quote] 一般来说最好写到updateuser的serviceImpl具体实现那边去啦,contrlloer里面写数据库操作怪怪的
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 4 楼 donggua3694857 的回复:
在你进行数据库操作的地方加上@Transactional
兄弟 你这方法也好使 也可以 谢啦
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 9 楼 qnmdcsdn 的回复:
事务配置中insert下边加个update试试
解决了 加个update就好了 原来我事务有用我还以为没用呢 谢了
魔都 2016-12-28
  • 打赏
  • 举报
回复
超过长度报错 前后台都加校验 后台JSR-222
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 4 楼 donggua3694857 的回复:
在你进行数据库操作的地方加上@Transactional
//修改操作 @Transactional @RequestMapping("/upda") public String xiugai(String newuid,String fpwd,String sex, String newname,String newbirthday,String edu,String pay, String city,String aname,HttpServletRequest request) throws ParseException{ String pwd=Encrypt.md5str(fpwd);//加密后的密码 SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd"); Date d=s.parse(newbirthday); String bir=s.format(d);//转换后的日期 UserInfo upu=new UserInfo(); upu.setU_id(newuid); upu.setPwd(pwd); upu.setSex(sex); upu.setUname(newname); upu.setBirthday(bir); upu.setEducation(edu); upu.setPay(pay); upu.setCity(city); upu.setPlayer(aname); userInfoService.updateuser(upu);//这边是更新操作 //更新再次查询显示 List<UserInfo> uinfo=userInfoService.selectuser(); request.setAttribute("lguinfo",uinfo); return "userInfo"; } 这样么 ?在这个方法上面加么??
  • 打赏
  • 举报
回复
事务配置中insert下边加个update试试
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 6 楼 dksy891028 的回复:
插入前做数据有效性校验
你的意思判断要处理的数据的长度是不是超过数据库定义的?
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 5 楼 qnmdcsdn 的回复:
[quote=引用 2 楼 lt_iuao 的回复:] [quote=引用 1 楼 qnmdcsdn 的回复:] 事务回滚
我在conller里面处理数据的 <aop:config> <aop:pointcut id="fooServiceOperation" expression="execution(* com.stw.test.service.*.*(..))" /> <aop:advisor advice-ref="txAdvice" pointcut-ref="fooServiceOperation" /> </aop:config> 配置中这样写的 是不是就不能事物回滚了?要我娶service层写操作数据才可以么 ?[/quote] controller里边是怎么处理的[/quote] //修改操作 @RequestMapping("/upda") public String xiugai(String newuid,String fpwd,String sex, String newname,String newbirthday,String edu,String pay, String city,String aname,HttpServletRequest request) throws ParseException{ String pwd=Encrypt.md5str(fpwd);//加密后的密码 SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd"); Date d=s.parse(newbirthday); String bir=s.format(d);//转换后的日期 UserInfo upu=new UserInfo(); upu.setU_id(newuid); upu.setPwd(pwd); upu.setSex(sex); upu.setUname(newname); upu.setBirthday(bir); upu.setEducation(edu); upu.setPay(pay); upu.setCity(city); upu.setPlayer(aname); userInfoService.updateuser(upu);//这边是更新操作 //更新再次查询显示 List<UserInfo> uinfo=userInfoService.selectuser(); request.setAttribute("lguinfo",uinfo); return "userInfo"; }
LinkRay 2016-12-28
  • 打赏
  • 举报
回复
插入前做数据有效性校验
  • 打赏
  • 举报
回复
引用 2 楼 lt_iuao 的回复:
[quote=引用 1 楼 qnmdcsdn 的回复:] 事务回滚
我在conller里面处理数据的 <aop:config> <aop:pointcut id="fooServiceOperation" expression="execution(* com.stw.test.service.*.*(..))" /> <aop:advisor advice-ref="txAdvice" pointcut-ref="fooServiceOperation" /> </aop:config> 配置中这样写的 是不是就不能事物回滚了?要我娶service层写操作数据才可以么 ?[/quote] controller里边是怎么处理的
GrayHJX 2016-12-28
  • 打赏
  • 举报
回复
在你进行数据库操作的地方加上@Transactional
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 1 楼 qnmdcsdn 的回复:
事务回滚
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <tx:advice id="txAdvice" transaction-manager="txManager"> <tx:attributes> <tx:method name="get*" read-only="true" rollback-for="Exception" /> <tx:method name="insert*" read-only="false" rollback-for="Exception" /> <tx:method name="*" /> </tx:attributes> </tx:advice> <!-- <tx:annotation-driven transaction-manager="txManager"/> --> <aop:config> <aop:pointcut id="fooServiceOperation" expression="execution(* com.stw.test.service.*.*(..))" /> <aop:advisor advice-ref="txAdvice" pointcut-ref="fooServiceOperation" /> </aop:config> 这是整个事务配置
lt_iuao 2016-12-28
  • 打赏
  • 举报
回复
引用 1 楼 qnmdcsdn 的回复:
事务回滚
我在conller里面处理数据的 <aop:config> <aop:pointcut id="fooServiceOperation" expression="execution(* com.stw.test.service.*.*(..))" /> <aop:advisor advice-ref="txAdvice" pointcut-ref="fooServiceOperation" /> </aop:config> 配置中这样写的 是不是就不能事物回滚了?要我娶service层写操作数据才可以么 ?
  • 打赏
  • 举报
回复
事务回滚

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧