0

我有一个类扩展了 Spring 的 AbstractExcelView 类,它呈现一个 XML 文件。在这个类中,我正在注入我的 Service bean 以供使用。我正在自动装配和组件扫描我的类,我也想对这个视图类做同样的事情,但我不清楚如何(或者是否可以做到)。这是我试图从配置中注释的内容:

<bean id="export.xls" class="com.my.views.ReportExcelView">
<property name="url">
    <value>/excel/template</value>
</property>
<property name="service" ref="testingService"/>

我可以用@Component 注释类,用@Autowired 注释服务,但我不知道注释URL 的策略。我真正想做的是在 buildExcelWorkbook() 调用中调整它(基于请求中的某些内容),但似乎在此之前完成了一些初始化,因为我在尝试使用我的 excel 模板时遇到错误表示它没有 Excel 工作表句柄的方法。有什么建议吗?

4

1 回答 1

0

所以你的 ReportExcelView 现在可能看起来像这样。确保使用@Resource 连接一个简单的字符串。

package com.ex.springbasicex.view;
@Component
public class ReportExcelView{
    @Resource(name="myUrl")
    String url;

    @Autowired
    Service service;

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }
}

您的上下文配置可能应该像下面使用扫描的那样。下面是如何设置 myUrl 字符串资源。

<context:component-scan base-package="com.ex.springbasicex.view"  />
<bean id="myUrl" class="java.lang.String" >
    <constructor-arg>
        <value>/excel/template</value>
    </constructor-arg>
</bean>
于 2013-01-22T21:58:08.497 回答