1.3.6. 自动配置 TypeConverter
Camel 自动配置在 Spring 上下文中注册一个名为 typeConverter 的 TypeConverter 实例。
@Component
public class InvoiceProcessor {
@Autowired
private TypeConverter typeConverter;
public long parseInvoiceValue(Invoice invoice) {
String invoiceValue = invoice.grossValue();
return typeConverter.convertTo(Long.class, invoiceValue);
}
}
1.3.6.1. Spring 类型转换 API 网桥 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
Spring 附带了强大的 类型转换 API。Spring API 与 Camel 类型转换器 API 类似。因为两个 API 与此类似,Camel Spring Boot 会自动注册到 Spring conversion API 的桥接转换程序(SpringTypeConverter)。这意味着,开箱即用的 Camel 将对待诸如 Camel 的 Spring Converters。使用这个方法,您可以使用 Camel TypeConverter API 访问的 Camel 和 Spring converters:
@Component
public class InvoiceProcessor {
@Autowired
private TypeConverter typeConverter;
public UUID parseInvoiceId(Invoice invoice) {
// Using Spring's StringToUUIDConverter
UUID id = invoice.typeConverter.convertTo(UUID.class, invoice.getId());
}
}
在 hood Camel Spring Boot 下,它将转换至应用程序上下文中可用的 Spring ConversionService 实例。如果没有可用的 ConversionService 实例,Camel Spring Boot auto-configuration 将为您创建一个。