id是唯一标识bean.不能用特殊字符:×#@ ,不能用数字开头。在bean引用的时候只能有id指向你需要的beanname 可以用特殊字符,并且一个bean可以用多个名称:name=“bean1,bean2,bean3” ,用逗号隔开。如果没有id,则name的第一个名称默认是id!
另外你这里定义name指向的是action,貌似struts+spring托管方式的话,action在spring配置文件里要定义成name;
另外你这里定义name指向的是action,貌似struts+spring托管方式的话,action在spring配置文件里要定义成name;
<action
attribute="loginForm"
input="login.jsp"
name="loginForm"
path="/user"
scope="request"
type="org.springframework.web.struts.DelegatingActionProxy"
validate="false" >
<forward name="success" path="/index.jsp" />
<forward name="fail" path="/index1.jsp" />
</action>
和
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml,/WEB-INF/action-servlet.xml" />
</plug-in>
从而找到
<bean name="/user" class="com.accp.web.action.userAction">
<property name="userBiz" ref="userBiz"/>
</bean>
进行注入
其中action的path要和你的name一致,
就是 struts spring 托管方式的这就是如果指向action 必须要用 name 吗 如果定义其它的bean 都用id的缘故吗