java web 第四天笔记

来源:互联网 发布:mac怎么用淘宝旺旺 编辑:程序博客网 时间:2024/06/05 09:28

头大了。今天看的比较少,今天一觉睡到11点,再加上整理《网络信息对抗》的考试重点,耽误了java web的学习了!

 

1、使用<welcome-file-list>元素

欢迎页面,文件名通常为index.html 

        http://www.bhu.edu.cn/

Tomcat中,如果访问的URL是目录,并且没有特定的Servlet与这个URL模式匹配,那么它将在该目录中首先查找index.html文件,如果找不到将查找index.jsp文件 

  <welcome-file-list>

      <welcome-file>index.html</welcome-file>

      <welcome-file>index.jsp</welcome-file>

      <welcome-file>home.html</welcome-file>

      <welcome-file>default.jsp</welcome-file>

  </welcome-file-list>

经过上述配置,如果客户使用目录访问该应用程序,Tomcat将在指定的目录中按<welcome-file>指定的文件的顺序查找文件,如果找到则把该文件发送给客户端。

2、ServletConfing接口

Servlet初始化时,容器将调用init(ServletConfig)方法,并为其传递一个ServletConfig对象,该对象称为Servlet配置对象。

使用该对象可以获得Servlet初始化参数、Servlet名称、ServletContext对象等。

如何得到ServletConfig接口对象

Servlet中要得到ServletConfig接口对象有两种方法:

1)使用Servlet 的 getServletConfig()方法

  ServletConfig  config = getServletConfig();

2)覆盖Servlet 的 init(ServletConfig config)方法

格式如下:

public void init(ServletConfig config){

  super.init(config); //必须调用超类的init()方法。

  this.config = config;

}

ServletConfig接口共定义了下面4个方法:

public String getInitParameter(String name) 

public Enumeration getInitParameterNames() 

public String getServletName() 

public ServletContext getServletContext()

如何声明Servlet初始化参数

<servlet>

    <servlet-name>configDemoServlet</servlet-name>

    <servlet-class> com.demo.ConfigDemoServlet

    </servlet-class>

    <init-param>

      <param-name>email</param-name>

      <param-value>hacker@163.com</param-value>

    </init-param>

    <init-param>

      <param-name>telephone</param-name>

      <param-value>8899123</param-value>

    </init-param>

</servlet>

3、ServletContext接口

什么是ServletContext?

容器在启动时会加载每个Web应用程序,并为每个Web应用程序创建一个唯一的javax.servlet.ServletContext实例对象,一般称为Servlet上下文对象。

Servlet可以使用上下文对象

获得Web应用程序的初始化参数

Sservlet容器的版本等信息

Servlet用来与其他的Servlet共享数据。 

4、得到ServletContext引用

Servlet中可以有两种方法得到ServletContext引用:

1)直接调用ServletgetServletContext()方法,例如:

    ServletContext context = getServletContext();

2)使用getServletConfig()方法得到ServletConfig引用,再调用它的getServletContext()方法,例如:

    ServletContext context =

             getServletConfig().getServletContext();

5、获取应用程序的初始化参数 

ServletContext也有初始化参数 

可以使用ServletContext的下面两个方法检索Servlet上下文初始化参数:

public String getInitParameter(String name) 

public Enumeration getInitParameterNames()

这些初始化参数是在DD中使用<context-param>元素定义的。

<web-app>

  ...

<context-param>

  <param-name>adminEmail</param-name>

  <param-value>webmaster@163.com</param-value>

</context-param>

...

<web-app>

注意: <context-param>元素是<web-app>元素的直接子元素,并不嵌套在某个<servlet>元素中。其中定义的初始化参数是针对整个应用的。

要检索DD中定义的email参数值,可以使用下面代码:

public void init(){

  ServletContext context = getServletContext();

  String email = 

        context.getInitParameter(adminEmail");

  // 使用email

Servlet上下文初始化参数与Servlet的初始化参数是不同的!

Servlet上下文初始化参数是属于Web应用程序的,可以被Web应用程序的所有的ServletJSP页面访问。

<context-param>

</context-param>

Servlet初始化参数是属于定义它们的Servlet的,不能被Web应用程序的其他组件访问。

<init-param>

</init-param>

6、通过ServletContext对象获得资源

public URL getResource(String path) 

返回由给定路径指定的资源的URL对象。尽管路径应该以“/”开头,但它不是一个绝对路径,而是相对于该Web应用程序的文档根目录。

   public InputStream  

             getResourceAsStream(String path) 

如果只想从资源上获得一个InputStream对象,这是一个简洁的方法,它等价于getResource(path).openStream()

   public String getRealPath(String path) 

返回给定的虚拟路径的真实路径。

7、登录日志

使用log()方法可以将指定的消息写到服务器的日志文件中,格式为:

     public void log(String msg) 

参数msg为写到日志文件中的消息。默认情况下将把日志信息写到Tomcat安装目录的\logs\localhost.2009-03-17.log文件中,文件名中的日期为写入日志的日期。

  public void log(String msg, 

                Throwable throwable) 

该方法将msg指定的消息和异常的栈跟踪信息写入日志文件。 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 飞机不提供餐食怎么办 12306退票支付宝失败怎么办 12306重复支付怎么办支付宝 支付宝登的12306账号怎么办 没买儿童高铁票怎么办 网上订的机票怎么办托运 半夜买高铁票不出票怎么办 轻轨少买了一站怎么办 高铁火车票丢了怎么办 如果高铁票丢了怎么办 高铁票丢了怎么办 报销 高铁如果没赶上怎么办 高铁管家待核验怎么办 动车没有票了怎么办 12306取消订单3次怎么办 【12306取消订单3次怎么办】 火车票取消订单3次怎么办 12306收不到验证码怎么办 安逸花验证码次数限制怎么办 航班晚点导致错过转机怎么办 想去沈阳站送站怎么办 高铁没有赶上车怎么办 火车晚点赶不上下一趟车怎么办 列车晚点影响下一趟车怎么办? 高铁晚点赶不上下班车怎么办 火车在半路坏了怎么办 做火车中途坏了怎么办 员工怀孕不上班保险怎么办 怀孕带孩子不能上班保险怎么办 怀孕了不想上班保险怎么办 高铁票没票了怎么办 购买动车票无座怎么办 个税工资多报怎么办 火车晚点耽误了转车怎么办 坐火车联系不上怎么办 号码被别人注册了12306怎么办 注册12306的号码换了怎么办 12306号码被注册了怎么办 12306身份证被注册了怎么办 12306被别人注册了怎么办 铁路1236注册名忘记了怎么办