小编Bru*_*ral的帖子

无法在spring中通过requestBody将String转换为Date

我有以下代码:

DTO:

 Class MyDTO {
        import java.util.Date;
        private Date dateOfBirth;

        public Date getDateOfBirth() {
                return dateOfBirth;
            }
        public void setDateOfBirth(Date dateOfBirth) {
                this.dateOfBirth = dateOfBirth;
            }

    }
Run Code Online (Sandbox Code Playgroud)

调节器

public void saveDOB(@RequestBody MyDTO myDTO, HttpServletRequest httprequest, HttpServletResponse httpResponse) {
       System.out.println("Inside Controller");
       System.out.println(myDTO.getDateOfBirth()); 
}
Run Code Online (Sandbox Code Playgroud)

JSON请求:

{
"dateOfBirth":"2014-09-04",

}
Run Code Online (Sandbox Code Playgroud)

如果我发送请求为yyyy-mm-dd自动转换为日期对象发生. 控制器输出: - dateOfBirth = Thu Sep 04 05:30:00 IST 2014

但是当我以dd-mm-yyyy格式发送DateofBirth时它不会自动将String转换为Date.所以我怎么能处理这种情况.

JSON请求:

{
"dateOfBirth":"04-09-2014",

}
Run Code Online (Sandbox Code Playgroud)

输出:否控制台中的输出甚至没有到达控制器.

我试过@DateTimeFormat,但它不起作用.

我正在使用Spring 4.02请建议我们可以使用任何注释.

java serialization spring json spring-mvc

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

json ×1

serialization ×1

spring ×1

spring-mvc ×1