iteye_5599 2010-01-21 19:52
浏览 1398
已采纳

spring 中配置bean的注入是<property>的name与与ref的id名需要一样吗??

[code="java"]


<bean id="fnBean" class="com.lopu.framework.modules.maintain.action.FlightNatureAction" scope="prototype">
     <property name="fnService">//此name必须是iService吗???
        <ref bean="iService" />
    </property> 
</bean>

[/code]

[code="java"]public class FlightNatureAction extends ActionSupport implements
ModelDriven {

private IService fnService;
private List<FlightNature> fnLists = new ArrayList<FlightNature>();
private FlightNature fnBean = new FlightNature();

public IService getFnService() {
    return fnService;
}

public void setFnService(IService fnService) {
    this.fnService = fnService;
}

public List<FlightNature> getFnLists() {
    return fnLists;
}

public void setFnLists(List<FlightNature> fnLists) {
    this.fnLists = fnLists;
}

@SuppressWarnings("unchecked")
public String list() throws Exception {

//如果这样写会报NPE,即fnService没注入成功,但我把整段程序中的fnService改为iService,并改下配置文件就一切正常了
this.fnLists = this.fnService.loadAll(FlightNature.class);

    return SUCCESS;
}


public FlightNature getModel() {
    return this.fnBean;
}

}[/code]

本人spring菜鸟,多多指教。。。

  • 写回答

3条回答 默认 最新

  • CaiHuajiang 2010-01-21 20:00
    关注

    [quote] //此name必须是iService吗???



    [/quote]

    property name对应了
    public void setFnService(IService fnService) {

    this.fnService = fnService;

    }

    那么参数只要是IService类型的就OK了。。
    跟下面是一样的
    [code="xml"]

    <bean id="fnBean" class="com.lopu.framework.modules.maintain.action.FlightNatureAction" scope="prototype">
         <property name="fnService">//此name必须是iService吗???
            <ref bean="a" />
        </property> 
    </bean>
    

    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器