servlet 中获取 spring 管理的 bean

package spring.servlets;  
  
import java.io.IOException;  
  
import javax.servlet.ServletContext;  
import javax.servlet.ServletException;  
import javax.servlet.annotation.WebServlet;  
import javax.servlet.http.HttpServlet;  
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpServletResponse;  
  
import org.springframework.web.context.WebApplicationContext;  
import org.springframework.web.context.support.WebApplicationContextUtils;  
  
import spring.beans.User;  
import spring.services.UserServices;  
  
@WebServlet("/UserServlet")  
public class UserServlet extends HttpServlet {  
    private static final long serialVersionUID = 1L;  
      
    private UserServices userServices;  
  
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
        //获取ServletContext 再获取 WebApplicationContextUtils  
        ServletContext servletContext = this.getServletContext();  
        WebApplicationContext context =   
                WebApplicationContextUtils.getWebApplicationContext(servletContext);  
        userServices = (UserServices) context.getBean("userServices");  
          
        System.out.println("--------------------------");  
        User u = userServices.getUser();  
        System.out.println(u.getUserName());  
        System.out.println(u.getPassword());  
        System.out.println("--------------------------");  
    }  
  
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
        this.doGet(request, response);  
    }  
}  



你可能感兴趣的:(Java)