如何将自定义转换器添加到mu Spring Boot应用程序?我的实体字段
@CreatedDate
@Column(value = "create_time")
private Instant createTime;
我的转换器是
@Bean
public Converter<Long, Instant> longInstantConverter() {
return new Converter<Long, Instant>() {
@Override
public Instant convert(Long source) {
return Instant.ofEpochMilli(source);
}
};
}
@Bean
public Converter<Instant, Long> instantLongConverter() {
return new Converter<Instant, Long>() {
@Override
public Long convert(@NotNull Instant source) {
return source.toEpochMilli();
}
};
}
我有个例外
org.springframework.data.mapping.MappingException: Could not read property @org.springframework.data.relational.core.mapping.Column(value=create_time) @org.springframework.data.annotation.CreatedDate()private java.time.Instant com.example.database.model.MyTable.createTime from result set!
.........
Caused by: org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.Long] to type [java.time.Instant]
........
我怎样才能修好它,请帮帮我!
尝试分别创建ReadingConverter
和WritingConverter
,并将它们注册到Config文件中。
public class DatabaseConfig extends AbstractR2dbcConfiguration {
//...
@Override
protected List<Object> getCustomConverters() {
return List.of(
new PostReadingConverter(),
new PostStatusWritingConverter()
);
}
}
检查此处的完整代码。
对于Spring Boot应用程序,请尝试重写默认bean。
您需要向R2DBC注册转换器:
@Bean
public R2dbcCustomConversions customConversions() {
List<Converter<?, ?>> converters = new ArrayList<>();
converters.add(new SomeReadConverter());
converters.add(new SomeWriteConverter());
return R2dbcCustomConversions.of(MySqlDialect.INSTANCE, converters);
// deprecated: return new R2dbcCustomConversions(converters);
}
您不需要覆盖整个R2dbcConfiguration。
我们可以在JSF中创建自己的自定义转换器。 在JSF中定义自定义转换器分为三个步骤。 步 描述 1 通过实现javax.faces.convert.Converter接口创建转换器类。 2 实现上面接口的getAsObject()和getAsString()方法。 3 使用注释@FacesConvertor为自定义转换器分配唯一的ID。 第1步:创建转换器类:UrlConverter.java p
XStream允许从头开始编写转换器,以便开发人员可以编写一个全新的实现,介绍如何将对象序列化为XML,反之亦然。 转换器接口提供三种方法 - canConvert - 检查支持的对象类型序列化。 marshal - 它将对象序列化为XML。 unmarshal - 它从XML unmarshal序列化对象。 第1步:实现转换器接口 class StudentConverter implement
问题内容: 我正在尝试使用自定义转换器进行改造 以下是我的自定义转换器 我收到以下错误 在尝试进行此api调用时 我想转换器正在覆盖对api调用的请求,如何避免这种情况并传递在改造服务中定义的请求主体。 回应: 问题答案: 我会做这样的事情: 然后在创建RestAdapter时: 然后: 这不是理想的,因为对象是自定义的,但是我现在能想到的任何其他解决方案都更加复杂。 这里的反序列化器专门为声明为
我们有一些反映到多个数据库字段的自定义类型。例如 存储为3个单独的db字段。总是写作很无聊 然后从相应的记录字段中获取记录并创建PersonName类型。 其思想是定义一些多列自定义字段,在查询执行期间由jooq将其扩展为三个“真实”字段,并打包到结果中的一个PersonName对象。 看起来用可以做这样的事情,但我想知道,可能已经有解决这种情况的方法了。
我有自定义转换器: 但@Autowired正在设置空值。导致。 这是Roles类: 我用的是Java配置。转换器已注册: 当I@Autowired在controller中扮演角色时,它的工作。 为什么@autowired在转换器中设置null?
题目描述 将十进制整数n转换成k进制数。 输入格式: 首先输入一个整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据输入两个整数n和k( -1000000 ≤ n ≤ 1000000,> 2 ≤ k ≤ 9)。 输出格式: 对于每组测试,先输出n, 然后输出一个空格,最后输出对应的k进制数。 输入样例: 2 123 8 -12 2 输出样例: 123 173 -12 -1100 解题代码