读取web.xml参数

一、初始化参数(init-param)

    1、参数配置
        <init-param>
          <param-name>helloween</param-name>
          <param-value>password</param-value>
        </init-param>

    2、解释
        A、Servlet中提供方法getIintParameter(String param)来获取初始化参数值。
        B、还可以用getInitParameterNames()方法返回所有的参数名称,返回结果为枚举类型(Enumeration)。
        C、Servlet提供getServletConfig()返回ServletConfig对象。由ServletConfig取初始化参数与Servlet直接取方式一样。

    3、例子
        Enumeration params = this.getInitParametersNames();
        while(params.hasMoreElements()) {
            String usernameParam = (String)params.nextElement();
            String passwordParam = this.getInitParameter(usernameParam);
        }

二、上下文参数(context-param)

    1、参数配置
        <context-param>
          <param-name>upload folder</param-name>
          <param-value>attachment</param-value>
        </context-param>
        <context-param>
          <param-name>allowed file type</param-name>
          <param-value>.gif,.jpg,.bmp</param-value>
        </context-param>

    2、解释
        Servlet中通过getServletConfig().getServletContext()来获取一个ServletContext对象,使用ServletContext的getInitParameter()方法来获取指定名称的参数,通过getInitParameterNames()获取所有的context-paramcanshu名称。

    3、例子

        A、ServletContext servletContext = this.getServletConfig().getServletContext();//获取上下文
          String uploadFolder = servletContext.getInitParameter(“upload folder”);
          String allowedFileType = servletContext.getInitParameter(“allowed file type”);

        B、servletContext.getRealPath(uploadFolder);

三、资源注射(@Resource)

    1、参数配置

        <env-entry>
          <env-entry-name>hello</env-entry-name>
          <env-entry-type>java.lang.String</env-entry-type>
        <env-entry-value>Hello,Welcome to the JavaEE Resource Injection.</env-entry-value>
        </env-entry>
        <env-entry>
          <env-entry-name>i</env-entry-name>
          <env-entry-type>java.lang.Integer</env-entry-type>
          <env-entry-value>30</env-entry-value>
        </env-entry>
        <env-entry>
          <env-entry-name>persons</env-entry-name>
          <env-entry-type>java.lang.String</env-entry-type>
          <env-entry-value>Helloween, Cobain, Roses, Axl,</env-entry-value>
        </env-entry>

    2、例子

        private @Resource(name = “hello”) String hello
        private @Resource(name = “i”) int i;
        @Resource(name = “persons”)
        private String persons;

四、使用JNDI获取资源

    Context ctx = new InitialContext();
    String message = (String)ctx.lookup(“message”);
    Integer i = (Integer)ctx.lookup(“i”);
    String persons = (String)ctx.lookup(“persons”);

五、注射数据源

    @Resource(name = “dataBase”)
    Javax.sql.DataSource dataSource;
    public void getConnection() {
        Connection conn = dataSource.getConnection();
        Return conn;
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值