property name当然不能随便起名,这是对应Java文件里的字段名的。

解决方案 »

  1.   

    fantaro(上海小旋风) 说的部分正确。<bean id="testBean" class="com.sample.TestBean>
        <property name="service">
            <bean class="com.sample.AbcService">
                <property name="dao">
                    <ref local="theDAO" />
                </property>
            </bean>
        </property>
    </bean>相对应的:public class AbcService implements Service{
        public DAO getDao() {
            return theDao;
        }    public void setDao(DAO dao) {
            theDao = dao;
        }    private Object theDao;
    }public class TestBean {
        public Service getService() {
            return service;
        }    public void setService(Service service) {
            theService = service;
        }    private Object theService;
    }
    从例子可以看到,<property name="service">不要求有一个Service类型的service属性,但是必须有一个返回Service类型的getService()方法和一个相应的set方法。
      

  2.   

    也就是说,<property name="xxx">中的"xxx"是<bean id="testBean" class="com.sample.TestBean>中的类TestBean的一个成员的返回类型,我这样理解正确吗?