Servlet学习

Servlet 技术

a)什么是 Servlet
1、Servlet 是 JavaEE 规范之一。规范就是接口
2、Servlet 就 JavaWeb 三大组件之一。三大组件分别是:Servlet 程序、Filter 过滤器、Listener 监听器。
3、Servlet 是运行在服务器上的一个 java 小程序,它可以接收客户端发送过来的请求,并响应数据给客户端。

b)手动实现 Servlet 程序
1、编写一个类去实现 Servlet 接口
2、实现 service 方法,处理请求,并响应数据
3、到 xml中配置

在xml中配置

servlet标签给Tomcat配置servlet程序 
    <servlet>
       //servlet-name 标签 servlet起一个别名
        <servlet-name>HelloServlet</servlet-name>
        //配置类的全名
        <servlet-class>study.servletTest.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        //servlet-name 标签的作用是告诉服务器,我当前配置的地址给哪个 Servlet 程序使用 
        <servlet-name>HelloServlet</servlet-name>

        //url-pattern 标签配置访问地址  
        //        / 斜杠在服务器解析的时候,表示地址为:http://ip:port/工程路径
         //       /hello 表示地址为:http://ip:port/工程路径/hello -->

                <url-pattern>/hello</url-pattern>

            </servlet-mapping>

(d)Servlet的生命周期
1、执行Servlet构造器方法
2、执行init初始化方法
第一、二步,是在第一欣访问,的时候创建servlet程序会调用。
3、执行service方法
第三步,每次访问都会调用。
4、执行destroy销毁方法
第四步,在web工程停止的时候调用。

通过继承HttpServlet实现Servlet程序

如果重写init()一定要调用父类中的super.init(config);

servletConfig类

1,可以获取ServLet程序的别名servLet-name的值``` servletConfig.getServletName();
2,获取初始化参数init-param
3,获取ServLetContext对象

ServletContext类

a)什么是ServletContext?
1、ServletContext是一个接口,它表示 Servlet 上下文对象
2、一个web工程,只有一个 ServletContext对象实例。
3、ServletContext对象是一个域对象。整个web工程

常见的请求
get请求有哪些:
1.form method="get";
2.a标签
3.link引入css
4.script引入js文件
5.img标签引入图片
6.iframe引入html页面
7.在浏览器地址中输入地址后回车
post请求有哪些:
1.form标签 method="post"

常见的响应码

200 表示请求成功
302 表示请求重定向
404 表示请求服务器已经收到,但是你要的数据不存在(或者地址访问错误)
500 表示请求服务器已经收到,但是服务器内部错误(代码错误)

MIME类型说明

MIME是HTTP协议中的数据类型

HttpservletRequest类

每次有请求进入Tomcat服务器中,就会将请求过来的http协议信息解析好封装到Request对象中然后传到servlet方法中给我们使用
常用方法
getRequestURI()

 req.getRequestURI()
      req.getRequestURL()
       req.getRemoteHost()
       req.getHeader("value值")

注意:post获取请求参数时 要设置字符集以免中文乱码
使用request.setCharacterEncoding("UTF-8");方法

请求的转发

请求转发是指,服务器收到请求后,从一次资源跳转到另一个资源的择作叫请求转发。
请求求转发的特点:
(1)浏览器地址栏没有发生变化。
(2)多个servlet程序是同一个请求
(3)多个servlet程序共享一个request对象
(4)可以转发到WEB-INF目录下下
5、可以访问工程以外的资源

如遇跳转返回错误 参照base标签的使用功能

HttpServletResponse 设置响应头 setHeader("Content-Type","text/html;charset=UFT-8");防止响应返回的文字因为客户端和服务器使用字符集不一致导致乱码;
或者直接使用setcontentType("text/html charset=UTF-8");

一般过程
1.先创建servlet(继承HttpServlet)
2.在WEB-INF中的web.xml中配置servlet
3.重写servlet中的doGet或doPost文件

posted @   轻封侯  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示