表单传递数据到Servlet,经过Servlet中,调用DAO存储到mysql的编码问题
前端页面表单中的birthday类型为date,

在表单中的出生日期栏不插入数据

servlet中接收到的表单数据为一个空字符

但是数据库里边的birthday的列设置的为date类型,表单中不填写内容传递过来的是一个空字符串,因此需要在UserServiceImpl里边进行判断
mysql数据库中字段为空的含义是将要设置为空的字段内容设置为null,但是上面所提到的从表单中传递过来的birthday值为空字符串,因此存入数据库之前要将空字符串转换成null


本文讨论了在前端表单传递空日期到Servlet时,如何处理空字符串以适应MySQL中date类型的字段。当用户未填写生日导致传递的birthday值为空字符串时,需要在后端进行转换,将其转化为null以符合数据库的存储规则。同时提出了两种解决方案:一是在Servlet中进行判断转换,二是前端进行非空验证。这两种方法都能有效避免因空字符串导致的存储问题。
950





