Skip to content

Instantly share code, notes, and snippets.

@fengt
Last active April 13, 2018 02:42
Show Gist options
  • Save fengt/18aa8f3e706eed76e9263ef99f09e0c4 to your computer and use it in GitHub Desktop.
Save fengt/18aa8f3e706eed76e9263ef99f09e0c4 to your computer and use it in GitHub Desktop.

Revisions

  1. fengt revised this gist Apr 13, 2018. 1 changed file with 42 additions and 0 deletions.
    42 changes: 42 additions & 0 deletions dateConvert.md
    Original file line number Diff line number Diff line change
    @@ -27,3 +27,45 @@ public void initBinder(WebDataBinder binder){
    new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
    }
    ```

    #### 第三种方式(继承JsonSerializer)
    _自定义CustomDateSerializer类,在get属性方法上注入即可:_
    ```
    public class CustomDateSerializer extends JsonSerializer<Date> {
    @Override
    public void serialize(Date value, JsonGenerator gen, SerializerProvider arg2) throws
    IOException, JsonProcessingException {
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
    String formattedDate = formatter.format(value);
    gen.writeString(formattedDate);
    }
    }
    //date getter method
    @JsonSerialize(using = CustomDateSerializer.class)
    public Date getDate() {
    return date;
    }
    ```

    #### 第四种方式(页面js处理)
    ```
    var __dateConverter = function(param, fmt) {
    if (param) {
    const date = new Date(param);
    if (fmt == 'yyyy-mm') {
    return date.getFullYear() + '-' + (date.getMonth()+1)
    } else if (fmt == 'yyyy-mm-dd hh:mm:ss') {
    return date.getFullYear() + '-' + (date.getMonth()+1)+'-'+date.getDate()
    + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();
    }
    return date.getFullYear() + '-' + (date.getMonth()+1)+'-'+date.getDate();
    }
    }
    ```


  2. fengt created this gist Nov 27, 2017.
    29 changes: 29 additions & 0 deletions dateConvert.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,29 @@
    #### 第一种方式(全局)
    _继承该类WebMvcConfigurerAdapter,注入如下bean:_
    ```
    @Bean
    public Converter<String, Date> stringToDateConvert() {
    return new Converter<String, Date>() {
    @Override
    public Date convert(String source) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = null;
    try {
    date = sdf.parse(source);
    } catch (Exception e) {
    e.printStackTrace();
    }
    return date;
    }
    };
    }
    ```
    #### 第二种方式(特定某个controller)
    _直接在controller中加入如下代码:_
    ```
    @InitBinder
    public void initBinder(WebDataBinder binder){
    binder.registerCustomEditor(Date.class,
    new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
    }
    ```