servlet基础

#服务器

  • 是由代码编写成的,可以实时的调用,相当于是一个代码存放的容器
    #第一个servlet项目
    • 配置文件 web.xml

    •      <servlet>
               <servlet-name>myservlet</servlet-name>
               <servlet-class>com.echo.servlet.Hello</servlet-class>
           </servlet>
       
           <!--配置访问方式-->
           <servlet-mapping>
               <servlet-name>myservlet</servlet-name>
               <url-pattern>/my</url-pattern>
           </servlet-mapping>
      
      • java
      • public class Hello extends HttpServlet {
        @Override
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String str = “I am you first servler”;
        resp.getWriter().write(str);//
        System.out.println(str);
        }
        }

#Servlet技术
* 狭义的servlet是一个由java语言实现的接口,广义的servlet是指任何实现了servlet接口的类。
* 使用:
* 创建普通的java类,继承HttpServlet(HttpServlet继承了GenericServlet类,GenericServlet实现了Servlet接口)
* 重写service 方法
* 在service方法中写逻辑代码
* 在web.xml中配置 servlet

#servlet销毁的时间
* 服务器关闭时 servlet被销毁
#servlet的生命周期
* 从第一调用到服务器关闭
* 当Servlet在web.xml中配置了load.on.startup 生命周期为服务器启动到服务器关闭
* 1设置为1时改servlet第一个被调用
* init()是对servlet进行初始化的一个方法,在servlet第一次被加载时执行
* destory()在servet被销毁时被执行
#Serlet中的方法
* 重写service方法
* doPost()方法
* doGet()方法
* 当表单中的请求方式为get或post时,service方法会被调用,在service中调用父类的super.service(req,resp)方法时,请求为get时 service()和doGet()方法会被调用,请求为post时,sevice()和doGet()方法会被调用
* service()中没有调用父类的方法时,表单的请求为get,post时只有service()方法被调用
#常见的错误
* 404 :资源没找到
* 1.在请求地址中servlet的别名错误
* 2,虚拟项目的名称错误
* 500 :内部错误
* classNotFoundException:
* 解决 在web.xml中校验servlet类的全限定名(类名)是否错误
* service方法体中的代码有错误
* 405:请求格式不支持
* 原因 :请求方式和servlet方法体不匹配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值