和方法1比較不用增加實例化bean的class類, 初始化的時候需要聲明支持注入
1.邏輯類TaskStatusCallback繼承HttpServlet,如下:
public class TaskStatusCallback extends HttpServlet{
public TaskStatusCallback() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("get 方式邏輯實現");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("post 方式邏輯實現");
}
/** * 聲明支持注入 * @param config * @throws ServletException */
@Override public void init(ServletConfig config) throws ServletException { SpringBeanAutowiringSupport.processInjectionBasedOnServletContext(this, config.getServletContext()); }
}
3.spring.xml裏面加入以下內容:
<bean id="taskStatusCallback" class="ly.webApi.TaskStatusCallback"/>
4.web.xml下發布接口,如下:
<servlet>
<servlet-name>taskStatusCallback</servlet-name>
<servlet-class>ly.utils.ServiceInfoProxy</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>taskStatusCallback</servlet-name>
<!--發佈路徑-->
<url-pattern>/service/taskStatusCallback/*</url-pattern>
</servlet-mapping>