Servlet入门

简介: 版权声明:本文为博主原创文章,转载请注明出处。 https://blog.
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/69917361

JSP的运行周期:

1,加载 ClassLoader
2,实例化 调用构造函数创建对象
3,初始化 init(ServletConfig)
4,处理请求 service() doGet() doPost()
5,退出服务 destroy()

PS: 对象只创建一次,init只调用一次,deGet()多次执行

获取参数

response.setContentType(“text/html”); 设置类型
getParameter(); 获取name对应的第一个值
getParameterValues(“name”); 获取所有name为”name”的值(数组)
getParameterNames(); 获取所有name,返回Enumeration对象
getParameterMap() 返回name-value键值对

使用getParameterNames获取所有name

    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        req.setCharacterEncoding("utf-8");
        resp.setContentType("text/html; charset=utf-8");

        PrintWriter out = resp.getWriter();
        out.println("<html><head><title>BookAdd</title></head><body>");
        out.println("<table border='1' align='center'>");

        Enumeration<String> names = req.getParameterNames();
        while(names.hasMoreElements()){
            String name = names.nextElement();
            String [] values = req.getParameterValues(name);

            out.println("</tr>");
            out.println("<td>"+name+"</td>");

            if(values.length == 1){
                out.println("<td>"+values[0]+"</td>");
            }else{
                out.println("<ul>");
                for(int i = 0 ; i < values.length; i++){
                    out.println("<li>"+values[i]+"</li>");
                }
                out.println("</ul>");
            }
            out.println("</tr>");
        }

        out.println("</table></body></html>");

    }

使用getParameterMap()获取所有name的键值对

    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html charset='utf-8'");
        request.setCharacterEncoding("utf-8");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY>");

        Map<String,String []> data = request.getParameterMap();
        Enumeration<String> names = request.getParameterNames();
        for(int i = 0 ; i < data.size() ; i++){
            out.println(data.get(names.nextElement())[0]);
        }

        out.print("    This is ");

        out.print(this.getClass());
        out.println(", using the POST method");
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }

获取head参数

getHeader(name) 返回返回name对应的值
getHeaders(name) 返回enumeration
getHeaderNames() 返回http头部信息中的所有name。返回类型是Enumeration迭代器,
getIntegerHeader() 自动转换为int类型
getDateHeader() 自动转化为date类型
        Enumeration<String > headNames = req.getHeaderNames();  // 获取所有name
        while(headNames.hasMoreElements()){
            String name = headNames.nextElement();
            out.println(name+":"+req.getHeader(name)+"<br/>");  // 用getHeader获取name对应的值
        }
相关文章
|
应用服务中间件 Windows
Java-Servlet技术入门笔记-3
五、HttpServletResponse类 1、作用 HttpServletResponse类和HttpServletRequest类一样,每次请求进来,Tomcat服务器都会创建一个Response对象传递给Servlet程序去使用。HttpServletRequest表示请求过来的信息,HttpServletResponse表示所有响应的信息。我们如果需要设置返回给客户端的信息,都可以通过它来设置。
|
XML 存储 前端开发
Java-Servlet技术入门笔记-2
三、ServletContext类 1、什么是ServletContext 代表整个web工程,可以与程序的容器(Tomcat服务器)通信
|
XML 小程序 Java
Java-Servlet技术入门笔记-1
一、Servlet技术 1、什么是Servlet Servlet是JaveEE规范之一,规范就是接口 Servlet是JavaWeb三大组件之一。三大组件分别是:Servlet程序、Filter过滤器、Listener监听器 Servlet是运行在服务器上的一个java小程序,它可以接收客户端发送来的请求,并响应数据给客户端 l
|
XML 存储 前端开发
Servlet技术入门(视频学习笔记)-2
2、ServletContext类的四大作用 获取web.xml中配置的上下文参数context-param 获取当前工程路径,格式:/工程路径 获取工程部署在服务器硬盘上的绝对路径
|
小程序 Java 应用服务中间件
Servlet技术入门(视频学习笔记)-1
一、Servlet技术 1、什么是Servlet Servlet是JaveEE规范之一,规范就是接口 Servlet是JavaWeb三大组件之一。三大组件分别是:Servlet程序、Filter过滤器、Listener监听器 Servlet是运行在服务器上的一个java小程序,它可以接收客户端发送来的请求,并响应数据给客户端
QGS
|
Java
浅谈入门Servlet注解式开发
Servlet3.0版本之后,推出了Servlet基于注解式开发。
QGS
85 0
QGS
|
容器
手拉手入门Servlet转发与重定向
转发与重定向的区别 在Web应用中通过两种方式,可以完成资源的跳转 转发、重定向
QGS
57 0
QGS
|
XML JavaScript 前端开发
手搭手入门纯Servlet+JSP+Mybatis+Tomcat9实现Web更删改查
Servlet对象的生命周期 Servlet对象的生命周期是由Tomcat服务器(中间件)全权负责的。 Tomcat服务器(中间件)有通常被称为WEB容器。
QGS
244 0
手搭手入门纯Servlet+JSP+Mybatis+Tomcat9实现Web更删改查
|
存储 小程序 Java
Web环境搭建以及Servlet入门(下)
Web环境搭建以及Servlet入门
112 0
|
网络协议 前端开发 Oracle
Web环境搭建以及Servlet入门(上)
Web环境搭建以及Servlet入门
112 0