【问题标题】:JSON parse error - wrong Data type while posting jsonJSON解析错误-发布json时数据类型错误
【发布时间】:2019-12-04 22:34:02
【问题描述】:

我有一个实体用户,它有两个数据类型的字段。

@Entity
@Table(name = "users", schema = "public")
public class User {

    @Id
    @Column(name = "user_id", updatable = false, nullable = false, unique = true)
    @GeneratedValue(generator = "UUID")
    @GenericGenerator(name = "UUID", strategy = "org.hibernate.id.UUIDGenerator")
    private UUID id;
    @Column(name = "name")
    private String name;
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd@HH:mm:ss")
    @Column(name = "created_on")
    @JsonIgnore
    private Date createdOn;
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd@HH:mm:ss")
    @Column(name = "modified_on")
    @JsonIgnore
    private Date modifiedOn;

// construuctors, getter, setter
}

我有一个具有方法 save() 的控制器,它将有关用户的数据保存到 postgesql 数据库。

@RestController
@RequestMapping("/user")
public class UsersController {

    @Autowired
    private UsersService service;

    @PostMapping("/save")
    public void save(@RequestBody User user){
        service.save(user);
    }

}

我有一个 JSON,我将它发布到控制器

{ "name":"Max", "createdOn":"2019-07-26 11:13:39", “已修改”:“2019-07-26 11:13:39”}

最后在执行过程中出现错误

"JSON 解析错误:无法反序列化 java.sql.Date 类型的值 来自字符串\“2019-07-26 11:13:39\”:不是有效的表示 (错误:无法解析日期值'2019-07-26 11:13:39':无法解析 日期\“2019-07-26 11:13:39\”:虽然它似乎适合格式 'yyyy-MM-dd'T'HH:mm:ss.SSSZ', 解析失败 (leniency?null));嵌套的 例外是 com.fasterxml.jackson.databind.exc.InvalidFormatException:不能 从 String \"2019-07-26 反序列化 java.sql.Date 类型的值 11:13:39\":不是有效的表示(错误:无法解析日期 值'2019-07-26 11:13:39':无法解析日期\"2019-07-26 11:13:39\": 虽然它似乎适合格式 'yyyy-MM-dd'T'HH:mm:ss.SSSZ', 解析失败 (leniency?null))\n 在 [Source: (PushbackInputStream); 行:3,列:13](通过参考链: com.example.api.entity.User[\"createdOn\"])"

【问题讨论】:

    标签: java json spring


    【解决方案1】:

    尝试添加T

    2019-07-26T11:13:39
    

    【讨论】:

      猜你喜欢
      • 2021-11-18
      • 2020-10-04
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 1970-01-01
      • 2012-08-14
      • 2015-05-22
      • 1970-01-01
      相关资源
      最近更新 更多