6 回答

TA貢獻(xiàn)1875條經(jīng)驗 獲得超3個贊
@Controller public class LoginController{ @Resource(name="loginService") private IService loginService; @RequestMapping("/login") @Autowired public ModelAndView index(BaseClassDo logindo){ LoginDo ll= (LoginDo) logindo; ModelAndView mv = new ModelAndView(); System.out.println(logindo); // mv = loginService.doService(logindo); mv.setViewName("login"); return mv; } }
樓上說的對,你這方法上的@Autowired是想要做什么?和@RequestMapping一起用?
如果想通過方法注入的話,那新創(chuàng)建一個方法然后用上@Autowired注入就行了,至于@RequestMapping是用于處理請求的

TA貢獻(xiàn)1794條經(jīng)驗 獲得超8個贊
指的是根據(jù)請求的參數(shù)綁定為相應(yīng)的實(shí)體類型嗎?只不過這些實(shí)體類型都繼承自BaseClassDo 是嗎?比如前端傳job_id、worker_id、login_pw、worker_name這四個參數(shù),這個時候在index方法的參數(shù)實(shí)際類型就是LoginDo了?然后如果前端傳其他參數(shù),那就會綁定到另一個BaseClassDo的具有這些參數(shù)對應(yīng)字段的子類,是這個意思不?

TA貢獻(xiàn)1841條經(jīng)驗 獲得超3個贊
通過頁面請求發(fā)現(xiàn)代碼真正邏輯是頁面請求了一個子類Action的方法,而這個方法里面調(diào)用了父類的一個方法,此時父類里面的Service一直無法注入,對于上面所提的這種需求,實(shí)際上是需要在子類做Spring注入的同時也進(jìn)行父類的Spring注入,那么這種需要這樣的配置:
<bean id="barePhoneAction" class="com.eshore.crm.contrl.termmgr.mgr.action.BarePhoneAction" scope="prototype" parent="termCommonAction"> <property name="orderVerifyApiFacade" ref="ord.bizprov.orderVerifyApiFacade"/> <property name="orderListQryApiFacade" ref="ord.query.orderListQryApiFacade"/> <property name="channelQryApiFacade" ref="cfguse.channel.channelQryApiFacade" /> </bean>
經(jīng)過上面的設(shè)置以后,請求子類的Action方法,子類方法中調(diào)用父類方法時,就不會出現(xiàn)父類不發(fā)生注入的問題了。

TA貢獻(xiàn)1824條經(jīng)驗 獲得超6個贊
@Autowired的使用上有問題。
一般情況下,@Autowired標(biāo)注在方法上的時候,會在容器初始化時去調(diào)用方法“進(jìn)行賦值”,但也僅此而已了,之后的操作和@Autowired就沒關(guān)系了
正常的前后端請求傳遞的參數(shù)是由前端傳入的,并不是容器注入的
添加回答
舉報