Servlet初体验

Java web初体验—Servlet

1.通过浏览器去访问Servlet需要

1 在web.xml中设置好映射
2

    <servlet>
            <servlet-name>helloServlet</servlet-name>
            <servlet-class>Javabean.helloserver</servlet-class>
            <load-on-startup>参数(int)</load-on-startup>
    </servlet>

<servlet-mapping>
    <servlet-name>helloServlet</servlet-name>
    <url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>

2.servlet容器:JSP,Servlet,Filter

1.可以来创建Servlet,并且调用Servlet相关生命周期的方法
2.JSP,Servlet,Filter
3.相关方法:构造器,Init方法,service,destroy;
注意:只有第一次请求的时候创建实例,以后请求不会创建,说明Servlet是单列模式;Init只被调用一次,在创建实例之后
service每次请求都会被调用;destroy只被调用一次,在当前Servlet所在的Web被卸载前,释放当前Servlet所占用的资源
4.参数(int),作用:可以指定Servlet被创建的时机,若为负数则在被请求时被创建,若为零或正数,则在Web应用被加载时创建实例,且数字越小越早被创建

3.同个Servlet可以有多个映射,即一个Servlet可以有多个Servlet-mapping

4.创建一个Servlet实现Servlet接口重写的方法
public void init(ServletConfig arg0) throws ServletException {
System.out.println(“Ini…”);
}

ServletConfig:封装了Servlet配置的信息,并且可以获得ServletContext对象
  >1.配置初始化参数
    <servlet>
    <servlet-name>helloServlet</servlet-name>
    <servlet-class>Javabean.helloserver</servlet-class>
    <!-- 配置Servlet初始化参数 -->

    <init-param>
            <param-name>user</param-name>
            <param-value>root</param-value>
    </init-param>

    <init-param>
            <param-name>password</param-name>
            <param-value>1230</param-value>
    </init-param>
    <!-- 可以设置Servlet实例被创建的时机 -->
    <load-on-startup>1</load-on-startup>
</servlet>

    >2.getInitParameter(String name):获取指定参数名的初始化参数;
    >3.getInitParameterNames():获取参数名组成的Enumeration对象;
代码:
          public void init(ServletConfig servletConfig) throws ServletException {

    // TODO Auto-generated method stub
    System.out.println("Ini...");
    String name = servletConfig.getInitParameter("user");
    System.out.println("user:"+name);
    Enumeration<String>names = servletConfig.getInitParameterNames();
    while(names.hasMoreElements()){
        String name1 = names.nextElement();
        String value = servletConfig.getInitParameter(name1);
        System.out.println("name:"+name1+"  value:"+value);
    }

}

>4.ServletContext对象;代表当前web应用,可以认为ServletContext是当前Web应用的一个管家可以从中获取web的各方面信息
      1)getInitParameter方法:
           getInitParameterNames方法:
    <context-param>
        <param-name>driver</param-name>
        <param-value>com.mysql.jdbc,Driver</param-value>
        </context-param>

    该参数可以为所有Servlet所获取
      2) getRealPath(String path)方法:获取当期啊Web应用的某个文件在服务器上的绝对路径,而不是部署钱的路径


      3)getContextPath()方法:获取当前Web应用的名称;


      4)getResourceAsStream(String path)方法:获取当前Web应用中某个文件的输入流;path的 / 为当前web应用的根目录
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值