從App-context.xml中:春天依賴注入到其他實例
<bean id="userDao" class="com.vaannila.dao.UserDAOImpl">
<property name="sessionFactory" ref="mySessionFactory"/>
</bean>
<bean name="MyServiceT" class="com.s.server.ServiceT">
<property name="userDao" ref="userDao"/>
</bean>
和內部ServiceT.java:
private UserDAO userDao;
public void setUserDao(UserDAO userDao){
this.userDao = userDao;
}
的問題是:當服務器那張setUserDao被稱爲但是當我打電話給我的doGet方法:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter writer = response.getWriter();
writer.write("hello");
}
的userDAO的爲空。 我在setUserDao方法內部放置了一個斷點,並且在doGet方法內部放置了另一個斷點,並且看到它不是同一個insatnce ...原因是什麼?我該如何解決它? 謝謝!
請發佈顯示如何將bean注入servlet的代碼。 – 2012-02-03 11:20:05
也發佈你的'doGet'方法體 – 2012-02-03 11:22:16
你不是在某處調用'new MyServiceT()',不是嗎? – 2012-02-03 11:27:34