Chcę wstrzyknąć obiekt do serwletu za pomocą Springa
Mam dwie serwlety w mojej aplikacji i chcę, aby obiekt klasy A był wstrzykiwany do obu serwletów, a ja też chciałbym mieć ten sam ApplicationContext w całej aplikacji, tj. Oba serwlety, jak wspomniano w pierwszej odpowiedzi na to pytanie na SO:Wiosenny zastrzyk do serwletu
Teraz przeszedłem przez wiele takich pytań, ale nie mogłem znaleźć czegoś, co pasowałoby do mojego pytania. Aby lepiej wyjaśnić, napiszę tutaj szorstki kod:
public class servletOne extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
public class servletTwo extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
Tak więc powyżej są dwa servelty teraz w applicationContext.xml Chcę przekazać obiekt do obu tych serwletów, tak jak w normalnej konwencji chcę funkcjonalności takiej jak ta:
<bean id="servletFirst" class="mypackage.servletOne">
<property name="message" ref="classObject" />
</bean>
<bean id="servletFirst" class="mypackage.servletTwo">
<property name="message" ref="classObject" />
</bean>
<bean id="classObject" class="mypackage.classA">
</bean>
Nie wiem, czy jest to możliwe, czy nie, jestem nowy na wiosnę i mam tylko podstawową wiedzę na temat wstrzykiwania zależności.
Jeśli ktoś może mi w tym pomóc, naprawdę bym to docenił. To rozwiałoby wiele moich wątpliwości i pomogłoby mi przejść do przodu w procesie uczenia się wiosny.
To jest web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>servletOne</servlet-name>
<servlet-class>mypackage.servletOne</servlet-class>
</servlet>
<servlet>
<servlet-name>servletTwo</servlet-name>
<servlet-class>mypackage.servletTwo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletOne</servlet-name>
<url-pattern>/servletOne</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletTwo</servlet-name>
<url-pattern>/servletTwo</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
300
</session-timeout>
</session-config>
</web-app>