Spring MVC 基于AnnotationFormatterFactory接口实现自定义的规则

 

1、创建一个类来实现AnnotationFormatterFactory接口

 通过实现Formatter接口自定义自已的规则


PersonFrommId注解代码:
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.ANNOTATION_TYPE})
public @interface PersonFrommId {

}
Person实体类代码:
package com.nf147.manage.demo_fromatter;

import java.util.Date;

public class Person {
    private String name;
    private String province;
    private Date birthday;
    private String gender;

    public Person() {
    }

    public Person(String province, Date birthday, String gender) {
        this.province = province;
        this.birthday = birthday;
        this.gender = gender;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }
}


Controller层代码:
package com.nf147.manage.controller;

import com.nf147.manage.demo_fromatter.Person;
import com.nf147.manage.demo_fromatter.PersonFrommId;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/ddd")
@RestController
public class DemoController {
    @RequestMapping(method = RequestMethod.GET)
    public Person home(@RequestParam(value = "id",required = false)@PersonFrommId Person person){
        return person;
    }
}

 

 

 

 

 
posted @ 2018-12-05 11:27  随★风  阅读(1340)  评论(0编辑  收藏  举报