zoukankan      html  css  js  c++  java
  • Servlet

    * 继承HttpServlet后要重写doGet()、doPost()方法

    String userName = req.getParameter("userName");
    String password = req.getParameter("password");
    PrintWriter pw = resp.getWriter();
    if("admin".equals(userName)&&"123456".equals(password)){
    //req.getRequestDispatcher("success.html").forward(req, resp);
        resp.sendRedirect("success.html");
    }else{
    //req.getRequestDispatcher("fail.html").forward(req, resp);
        resp.sendRedirect("fail.html");
    } 

    * web服务器
        * 1:tomcat.是开源的并且是用java语言来编写。它是免费的。用于中小型的项目。
        * 2:weblogic,webSphere,用于中大型,它是收费的。

    * tomcat服务器的目录
        1. bin;放一些可执行程序。startup.bat 启动web服务器。
        2. conf:配置文件。server.xml:可以设置端口。web.xml配置文件。
        3. lib;第三方jar包。
        4. logs:日志文件。
        5. temp:临时文件。
        6. webapps:外界可以访问的目录。web工程就放在这个目录。
        7. work:缓存的。
    * 启动web服务器。
    * servlet:接收客户端的数据,并进行处理,再将响应的数据发送给客户端。它是用java程序,只是运行在服务器端。

    * 写一个Servlet的步骤

         1. 创建一个类,继承HttpServlet类。如果没有找到HttpServlet类,可以去tomcat的lib目录下复制servlet-api.jar包。复制到webcontent 目录下的lib目录下,再选中servlet-api.jar包,右击build-path,再选择add to build-path
        2. 重写一些方法。
                1:构造方法。第一次请求的时候服务器会创建一个对象,只创建一次。
                2:init方法。做一些初始化工作。只执行一次。
                3:doGet方法:处理get请求,每请求一次,调用一次。
                4:doPost方法:处理post请求,每请求一次,调用一次。
                5:destroy方法:销毁Servlet.比如当web服务器停止的时候,会执行。
        3. 找到Webcontent目录的,WEB-INF目录的web.xml文件。在web-app标记里。添加以下内容

    <servlet>
    <servlet-name>Myservlet(可以随便取)</servlet-name>
    <servlet-class>MyServlet(必须为包名.类名)</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Myservlet(跟servlet的servlet-name名一致)</servlet-name>
    <url-pattern>/myservlet(可以随便取,这个决定了地址的写法)</url-pattern>【这个要和html界面的action相同】
    </servlet-mapping>

        4. 给服务器端发送请求。在浏览器地址栏上:http://ip地址:端口号/web工程名/myservlet(web.xml中的url-pattern怎么写的 就输入什么)

    * <form action="login" name="form1" method="get">
    * servlet和servlet-mapping可以一对多,为了让url调用servlet里面的多个方法
    * 转发req.getRequestDispatcher("success.html").forward(req, resp);
    * 重定向resp.sendRedirect("success.html");

    *get和post请求
        1. 作用上。get主要是从服务器端取数据,如果客户端需要向服务器端发送数据,那么就用post    请求。
        2. 地址栏。get请求会将表单的数据追加在地址栏后面。post方式不会将表单数据追加在地址栏。
        3. 安全性。get请求会不安全的
        4. 传输的数据。get传输的数据比较小。post相对来说比get传输的数据要大一些。

    * 转发与重定向的区别
        1. 转发地址栏没有变化。重定地址栏上有变化。
        2. 转发是服务器内部的变化,跟客户端是没有关系,重定向相当于2次请求。
        3. 转发可以让数据在页面之间进行共享。但是重定向不行。

  • 相关阅读:
    socket协议和http协议性能对比
    PHP对象在内存中的分配
    如何打造高性能Web应用
    ubuntu 16.04 实现远程图形界面连接
    NACOS升级操作
    ulimit 更改 gcc升级 查看显卡状态命令
    CentOS7下firewall-cmd防火墙使用
    Nacos 1.1.0发布,支持灰度配置和地址服务器模式
    NGINX限流配置
    学Redis
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/5243498.html
Copyright © 2011-2022 走看看