JPA 自定义转换器中的空指针异常 - Spring 启动

Null Pointer exception in JPA custom converter - Spring boot

@Converter(autoApply = true)
public class Test implements AttributeConverter<TestObj, String> {

  @Autowired
  private ObjectMapper mapper;

  @Override
  public String convertToDatabaseColumn(TestObj object) {
    try {
      return mapper.writeValueAsString(object);
    } catch (JsonProcessingException e) {
      e.printStackTrace();
      return null;
    }
  }

  @Override
  public TestObj convertToEntityAttribute(String s) {
    try {
      return mapper.readValue(s, TestObj.class);
    } catch (IOException e) {
      e.printStackTrace();
      return null;
    }
  }
}

上面的代码导致 NullPointerException 因为 mapper 对象没有被初始化。当我没有添加时它起作用了,

@Converter(autoApply = true)

知道如何让它工作吗?我在 spring 引导应用程序中使用它。

@Autowired 注释仅在由 Spring 管理的 bean 中使用时才有效。然而,您的 class 测试仅使用 @Converter 注释,这是 java 纯注释。请尝试在您的测试 class.

上使用 @Component spring 注释