mybatis添加数据是的报错集合(大概是我太手残,不过已全部解决)

初次学习mybaits,今天学习了添加数据的案例。但是呢由于手残的原因错误特多,不过经过一番“挣扎”还是解决了。
问题一:查看用户详情中,ID报错。
在这里插入图片描述
解决方案:
眼神不好,添加id构造参数时竟然把id的setter方法删掉了。加上即可。

问题二:填写好用户信息后一直出现
Column “username” not null问题
在这里插入图片描述
解决方案:
这种情况可能是两种原因:一是username字段或属性的问题;二是可能整条数据插入时本身逻辑就出现问题,它只是报了第一个属性罢了。
第一种情况解决起来比较简单:认真的检查一下字段和属性是否写因为手残错了。过一下他们的流程看看说不清哪里就有意外发现。
第二种情况就是我的情况。我在写:

 //根据用户数据创建一个用户对象
        Users user=new Users(username,userpass,nickname,Integer.parseInt(age),gender,phone,email,new Date(),new Date(),new Date(),0);
        

时候发现实体类没有写构造器,于是根据提示在Users实体类中创建了带这些参数的构造器(这也为下一个错误埋下伏笔)。结果启动项目之后就报图上的错误了。这是因为构造器中没有this.参数。t写this和不写的区别点击这里看下一个文章(今天早早睡明天更新)。所以加上后就username就没有问题了。
在这里插入图片描述
问题三:一直出现Data too long for column ‘phone’ at row 1 错误
这个问题也可能是两种情况:一是你填写的数据长度超过了你的数据表中的数据长度。修改一下即可;二是可能你和我一样,数据段插入颠倒了:
在这里插入图片描述
是不是很好笑。
解决方案:
我检查sql是没有问题的,页面获取的id值名字没有写反,检查UsersAddServlet获取调用也都是没有问题的。经过各种检查和排除就是因为在问题二中我发现没有this时动手添加了一个构造器,而这个构造器的email和phone正好个添加的属性相反,于是就插入相反了,邮箱插入到了phone中自然也是不够长的。

后记:其实问题还有很多,但是比这三个还幼稚的错误就不在一一记录了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值