Spring-MVC-配置接收和返回数据的格式

来源:互联网 发布:java 10的n次方 编辑:程序博客网 时间:2024/05/16 06:24

接收页面日期类型数据的转换

  1. 自定义类实现Converter接口

    public class DateConvert implements Converter<String, Date> {    private static final Logger log = LoggerFactory.getLogger(DateConvert.class);    @Override    public Date convert(String stringDate) {        if (StringUtils.isBlank(stringDate)) {            return null;        }        // 这里是关键        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");        Date date = null;        try {            date = simpleDateFormat.parse(stringDate);        } catch (ParseException e) {        }        return date;    }}
  2. 配置xml

    • 加载Bean

      <bean id="dateConvert" class="com.iomp.util.DateConvert"/><bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">    <property name="converters">        <set>            <ref bean="dateConvert"/>        </set>    </property></bean>
    • 配置MVC

      <mvc:annotation-driven conversion-service="conversionService"/>

传递结果中null值转为空字符串的方法

  1. 创建类继承ObjectMapper

    public class JsonObjectMapper extends ObjectMapper {     private static final long serialVersionUID = 1L;     public JsonObjectMapper() {         super();         // 空值处理为空串         this.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {            @Override             public void serialize(Object value, JsonGenerator jg, SerializerProvider sp) throws IOException, JsonProcessingException {                 jg.writeString("");             }        });     } } 
  2. 在SpringMVC配置文件中,把新建的ObjectMapper注入给MappingJackson2HttpMessageConverter

    <mvc:annotation-driven>     <mvc:message-converters>         <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">             <property name="objectMapper">                 <bean class="com.xjj.anes.mvc.converter.JsonObjectMapper"></bean>             </property>         </bean>     </mvc:message-converters> </mvc:annotation-driven> 
原创粉丝点击