Servlet Analysis

@WebServlet("/cdiservlet")      //url映射
public class NewServlet extends HttpServlet {
    private Message message;

    @Override             //重写doGet方法
    public void init() {
        message = new MessageB();    //对message初始化
    }

    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
                  throws IOException {              //抛出可能出现IO异常
        response.getWriter().write(message.get());   //捕获可能发生的异常
    }
}

public interface Message {         //servlet实现Message接口的一个对象实例
    public String get();
}
public class MessageB implements Message {          //servlet创建以下对象的实例
    public MessageB() { }

    @Override
    public String get() {
        return "message B";
    }
}
@WebServlet("/cdiservlet")              //使用CDI,servlet声明它对Message实例的依赖性,并让它由CDI运行时自动注入
public class NewServlet extends HttpServlet {
    @Inject private Message message;

    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
                  throws IOException {       //抛出可能出现IO异常
          response.getWriter().write(message.get());  //捕获可能发生的异常
}
}
posted @ 2019-03-31 10:41  SiriYang  阅读(135)  评论(0编辑  收藏  举报