servlet笔记(二)

来源:互联网 发布:怎么在淘宝上买快排 编辑:IT博客网 时间:2020/02/25 14:10

1.在ContextParameters中设置的,取初始化参数
   Enumeration cps = sc.getInitParameterNames();
        while(cps.hasMoreElements()){
            String name = (String)cps.nextElement();
            out.println(name+"="+sc.getInitParameter(name)+"<br>");
        }
2.在servlets-->servlet名-->InitalizationParameters中设置的,取初始化参数
  Enumeration ips = this.getInitParameterNames();
        while(ips.hasMoreElements()){
            String name = (String)ips.nextElement();
            out.println(name+"="+this.getInitParameter(name)+"<br>");
        }
3.使用当地或者自定义的钱币符号
  NumberFormat f = DecimalFormat.getCurrencyInstance(Locale.getDefault);//locale.US
  out.println("Your dollor is"+f.format(e*d));
  DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。
4.ServletContext的方法
     public String getInitParameter(String name)
     public Enumeration getInitParameterNames()
     public void setAttribute(String name,Object object)
     public Object getAttribute(String name)
     public Enumeration getAttributeNames()
     public void removeAttribute(String name)
5.sendRedirect功能强大,但是不能传递请求参数
  requestDispatcher只能在当前webApplication下转发,但是可以传递请求参数
  eg:response.sendRedirect(response.encodeRedirectURL("servlet2"));---相同WebApplication下的servlet,encode编码转换
      response.sendRedirect(response.encodeRedirectURL("demo2/servlet2"));"));---相同WebApplication下的servlet

      response.sendRedirect(response.encodeRedirectURL("/demo2/servlet2"));---不同WebApplication下的servlet
  
      request.getRequestDispatcher("/servlet2?age=24").include(request,response);
      request.getRequestDispatcher("/html/main.html").forward(request,response);
      sc.getRequestDispatcher("/html/main.html").forward(request,response);