今天继续做车辆信息的添加,主要要实现的是图片的上传。写的时候问题还是很多的。首先在页面上,车辆的购买日期在数据库和实体类中都用的是Date类型,其实这也没错,但是在显示的会显示成主要"2010-10-1 00:00:00",这样的话用户体验度就很不好了。处理如下:将get()改造一下。
public String getBoughtDate(){ SimpleDateFormate sdf = new SimpleDateFormat("yyyy-MM-dd"); return sdf.format(boughtDate); }
其实还有另一种方法:
@DateTimeFormat(pattern="yyyy-MM-dd") private Date boughtDate;
用Spring的注解方式,同时还要在配置文件里加上如下的语句:
<mvc:annotation-driven conversion-service="conversionService"/> <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
但是这样方式仅限于用aJax来拿取数据,否则在跳转页面后,格式还是如最初那样。
其实,今天遇到的很多问题都是数据转换的问题。比如将枚举类型转成整型,存入数据库里,
public void setCurrenetStatus(Integer currentStatus){ this.currentStatus = CurrentStatus.values()[currentStatus]; }
如果不进行转换的话,那么这些数据都不能存入数据库里,在进行分页的操作时就会报类型不匹配的错误。
在做图片上传的时候,picture是车辆实体类的一个属性,而用RESTFUL的风格的时候,会自动将表单上的数据进行组装,所以就无需在页面上的<input name="">name属性里写上“picture”了。
最后添加成功后mav.setViewName("redirect:showCar?page=1")。这样就能看到所有的数据了,而不是需要重新刷页面才能看到数据。
今天的项目手札就是这样了。明天开始写批量删除数据的Ajax。
时间: 2024-10-06 23:09:40