出现的问题:
Could not execute statement,数据库中设置了不允许为空的字段,在映射时未填入值
导致了,前端在执行操作数据库的方法,页面会报错

解决思路 :
前提:file表,log表中id值不允许为空。
第一种:前端没有获取到文件对象(遇到问题时是文档上传的编写)
于是,在jsp页面中输出;
并将页面获取文件对象的getElementById(String id){}方法修改为了getElementsByName(Stirng name){};

结果无效
第二种:ajax成功传递,但conoller中与数据库映射的file对象的id属性不正确
① 于是,找到upload(){}中的File对象,检查id参数

② 在找idWoker,发现idWorker.nextId的类型是long,而file表中的id类型是int,因此无法装配

③ 尝试修改项目的返回值,牵一发而动全身;修改数据库表的类型
将int改为bigint(navicat)

运行成功
在SpringBoot项目中遇到数据库字段映射问题,因不允许为空的字段未赋值导致前端执行数据库操作时报错。尝试从前端获取文件对象和控制器中File对象的id属性匹配入手解决问题,发现idWorker.nextId的类型与数据库file表中id类型不一致。通过修改数据库表字段类型为bigint解决冲突,实现成功执行。
3483

被折叠的 条评论
为什么被折叠?



