<fmt:formatDate value="${user.bir }" pattern=“yyyy-MM-dd”/>
查看了jsp页面代码:
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
发现引用已经加了,但在网页就是无法解析
后来发现
<%@ page language="java" import="java.util.*" pageEncoding="utf-8" %>
这段代码没加下面这个属性
isELIgnored="false" //是否忽略正则表达式 true不忽略||false 忽略
之后发现 原来是因为创建了maven的原因 所以不识别了。。。
再提交修改数据的时候,报了400错误
出现HTTP Status 400大多是因为,jsp的form表单提交的字段类型和后台接收字段类型不匹配造成的。
检查代码发现原来是日期格式解析出了问题
<input type="text" class="inputgri" name="bir"
value="<fmt:formatDate value='${user.bir }' pattern='yyyy/MM/dd'/>"/>
bir 在后台 我是用对象接收的,bir 是Date类型,但是我设置的显示格式是用 ‘-’ 隔开的,后台并不能解析
public String update(HttpServletRequest request,
HttpServletResponse response,User user){
...
}
两个解决方案
- 第一种
<input type="text" class="inputgri" name="bir"
value="<fmt:formatDate value='${user.bir }' pattern='yyyy-MM-dd'/>"/>
日期格式用横线隔开