jsp页面表单中的时间常常要特别处理,因为输入是String类型,但是保存时是java.util.Date,为此我从经验和知识储备出发,进行如下解决办法:
1.表单的输入。
原因:避免输入格式不对;<input type="date">并不是所有的浏览器都支持
解决:加入JavaScript输入时间的一个插件(就是小巧方便可用别人写好的工具),在<input>标签中运用插件,即可以保证输入格式一致,如:08/12/16
2.后台处理
从String类型变成jDate类型:
String date=request.getParameter("date");//获取表单数据
System.out.println("获得的原始数据是:"+date);
//String类型时间处理格式
String Cdate=date.substring(6)+"-"+date.substring(0, 2)+"-"+date.substring(3, 5);//String类型的格式化,便于parse()解析
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
java.util.Date d=sdf.parse(Cdate);//得到java.util.Date类型时间
java.sql.Date s=new java.sql.Date(d.getTime());//由于java.sql.Date的继承关系,java.sql.Date类型时间只能从java.util.Date类型转换得到
以上即是我的思路,有错指正评论,不足欢迎提出,有好方法欢迎献言。