自定义Jackson转换器不受Spring管理

时间:2019-01-15 13:08:52

标签: java spring-boot jackson autowired spring-data-rest

我正在尝试构建一个具有自动关联依赖关系的自定义Jackson反序列化转换器。我正在使用Springboot 2.1.2以及Lovelace-SR3发布火车中的Spring Data Rest。重现此问题的最小示例应用程序是:

DemoApplication.java

@SpringBootApplication
public class DemoApplication {
        public static void main(String[] args) {
                SpringApplication.run(DemoApplication.class, args);
        }
}

Config.java

@Configuration
public class Config {
    @Bean("CurrentDate")
    public Date currentDate() {
            return new Date();
    }
}

TestModelConverter.java

public class TestModelConverter extends StdConverter<TestModel, TestModel> {
    @Autowired
    @Qualifier("CurrentDate")
    private Date now;

    @Override
    public TestModel convert(TestModel value) {
            value.setNow(now);
            return value;
    }
}

TestModel.java

@Data
@Entity
@JsonDeserialize(converter = TestModelConverter.class)
public class TestModel {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;

    private String text;

    private Date now;
}

TestModelRepo.java

public interface TestModelRepo extends PagingAndSortingRepository<TestModel, Long> { }

在反序列化新的Testmodel时,我希望now被自动连线以用于反序列化过程。我读过的所有内容都指向SpringHandlerInstantiator的默认用法,并在春季上下文中构造了TestModelConverter,从而允许自动装配依赖项。

似乎并非如此。自动连线的依存关系似乎总是null

0 个答案:

没有答案