1.问题:当实体类A中Date类型的时间time要按特定的格式展现在jsp前台该如何做
2.提出这个问题的原因是从数据库中获取的这个对象的time这个属性是Date类型,而Date类型的默认格式是:Sun Jan 14 19:18:04 CST 2018 类型。我要的是"yyyy-MM-dd HH:mm:ss"这种类型。
而 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String createTime = sdf.format(new Date());这种方式得到的是String类型。而String类型是无法放到Date类型的属性中去的。
3.解决方式是:
步骤一:在实体类中添加一个属性private Map extMap;
添加方法: public Map getExtMap(){
return this.extMap;
}
public void putExt(String key,Object value){
if(this.extMap==null){
this.extMap=new HashMap();
}
this.extMap.put(key, value);
}
步骤二:在后台从数据库中获取了A对象后对time属性用
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String createTime = sdf.format(time);
model.putExt("createTime", createTime);
步骤三:在jsp前台
${info.extMap.createTime}
就可以达到效果啦
而且如果A中有其他属性是也要转的都可以用putExt方法转入,前台统一用${xxx.extMap.yyy}就可以了。
网友评论