idea后端编写报错on-static inner classes like this can only by instantiated using default, no-argument cons

这个错误是因为 Jackson JSON 库无法实例化这个类。Jackson 在反序列化 JSON 数据时尝试使用默认构造函数来实例化目标类,但自己写的这个类没有默认构造函数。

要解决这个问题,有两种选择:

方法 1:添加默认构造函数

如:


```
方法 2:使用 Jackson 注解

如果不想添加默认构造函数,还可以使用 Jackson 注解告诉解析器如何实例化此类。在 `CourseIdRequest` 类中添加 `@JsonCreator` 和 `@JsonProperty` 注解:
```java
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;

public class CourseIdRequest {
    private String courseId;

    // 使用注解标记构造函数
    @JsonCreator
    public CourseIdRequest(@JsonProperty("courseId") String courseId) {
        this.courseId = courseId;
    }

    // getter 和 setter 方法...
}
```
这两种方法都可以解决此问题。可以根据自己的需求和偏好选择其中一种方法。

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值