和方法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>