CustomerAction类中的这两个方法有什么区别?也就是dao从applicationContext获取的和从spring自动注入有什么区别?private CommonDao commondao;public List<Bank> getBank(){

    ApplicationContext ac=WebApplicationContextUtils.getWebApplicationContex(ServletActionContext.getServletContext());
CommonDao dao=(CommonDao)ac.getBean("commonDao");//dao是从applicationContext获取的
return dao.list(c);return SpringUtil.getBeans(Bank.class);

}
public List<Bank> getBank(){

return commondao.list(Bank.class);//commondao是从spring自动注入进来的
}

解决方案 »

  1.   

    没有区别。这代码你写的啊?都在Action中注入进commondao了,还从applicationContext拿个什么劲啊。
      

  2.   

    从applicationContext获取的commondao的list方法获得Bank对象,
    jsp页面通过<s:bean id="ca" name="com.crm.action.CustomerAction" />
    <s:select list="#ca.bank" name="customer.bank.id" headerKey="0" headerValue="--请选择开户行--" listKey="id" listValue="name"/>
    只能是通过applicationContext获得的commondao才可以;
    如果用spring自动注入的commondao就会报错。
    而如果我通过webservice来调用这个方法,则刚好相反;
      

  3.   

    三楼老兄说的对
    在Action里
    这两中方式没有什么区别
    但是在JSP页面中只能用applicationContext获得
      

  4.   

    三楼老兄说的对
    在Action里
    这两中方式没有什么区别
    但是在JSP页面中只能用applicationContext获得
      

  5.   

    SPRING 與容器的藕合度盡量少,讓程式感覺不到SPRING 的存在。