zoukankan      html  css  js  c++  java
  • servlet injection analysis

    @WebServlet("/cdiservlet")      
    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());  ||捕获可能发生的异常
    }
    }
  • 相关阅读:
    Java之内部类
    java之对象的前世今生
    java之继承
    java之接口
    何为大学 大学何为?
    丁香般的姑娘
    MySQL创建数据库与创建用户以及授权
    CentOS6.8手动安装MySQL5.6
    linux 修改myql 编码配置等信息参考
    Centos6.8 Mysql5.6 安装配置教程
  • 原文地址:https://www.cnblogs.com/guanven/p/10634579.html
Copyright © 2011-2022 走看看