Servlet 中获取 spring 管理的 Bean

Servlet中获取SpringBean

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);
    }
}

getRequiredWebApplicationContext和getWebApplicationContext的区别

获取失败时候,getRequiredWebApplicationContext抛出异常,getWebApplicationContext抛出null


未经允许请勿转载:程序喵 » Servlet 中获取 spring 管理的 Bean

点  赞 (1) 打  赏
分享到: