我需要在Spring上下文文件中指定一个URL,但不希望Spring将其转换为资源,即我希望将URL作为String传递给我在其中创建的bean上下文文件而不是它被转换为Resource对象。
如何避免Spring创建资源?
谢谢,
安德鲁
答案 0 :(得分:2)
Spring会将值强制转换为属性的类型,无论发生什么。如果您的bean具有该名称的Resource
属性,那么Spring将尝试将该值转换为Resource
。如果你只想将值作为String,那么给你的bean一个String类型的属性,Spring将按原样传递它。
答案 1 :(得分:0)
使用接受资源的setter(启用spring magic)并存储生成的URL,而不是资源对象
private String resourceUrl;
public Resource setResource(Resource resource) {
this.resourceUrl = resource.getURL().toExternalForm();
}