连接完Tomcat服务器后的基本操作

发布于:2024-04-19 ⋅ 阅读:(31) ⋅ 点赞:(0)

连接完Tomcat服务器后的基本操作

连接完Tomcat后就需要在idea里写接收服务器端数据的代码了。前端的数据由服务器端向后端发送。所以我们要写的是后端接收数据的代码

首先新建一个类继承HttpServlet

无参构造:
    /*
    无参构造方法,只被调用一次/一个servlet类只被创建一个对象
    什么时候调用:
    1.第一次向servlet程序发起请求时(默认的)
    2.服务器启动时创建,需要在web.xml文件中配置<load-on-startup>1</load-on-startup>
     */
    public loginServlet(){
        System.out.println("loginServlet 无参构造方法");
    }
init初始化servlet:
    /*
    init初始化servlet的,在servlet对象构造方法执行完毕后执行,
    是servlet规范中必须要调用的方法,
    如果没有什么可以初始化执行的,可以不重写,默认会调用父类中的init().
     */
      @Override
      public void init() throws ServletException {
          System.out.println("init");
      }
service用来提供服务:
    /*
    多次被执行,是用来提供服务的
    HttpServletRequest:前端发送的数据都被包装到此对象中
    HttpServletResponse:表示响应
     */

      @Override
      protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
          System.out.println("service");
          System.out.println(req.getParameter("account"));
          System.out.println(req.getParameter("password"));
      }
doGet接收get方法传来的数据:
      @Override
      protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
          System.out.println("doget");
          System.out.println(req.getParameter("account"));
          System.out.println(req.getParameter("password"));
      }
doPost接收post方法传来的数据:
 @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //接收中文字符会乱码
        req.setCharacterEncoding("utf-8");//设置解码字符编码
        //获得请求中我们自己提交的数据
        System.out.println("dopost");
        String account=req.getParameter("account");
        String password=req.getParameter("password");
    }
destroy服务器关闭时调用:
    /*
        在服务器关闭时调用,
        最终需要执行的代码可以写在此方法中,
        如果没有什么可以执行的最终操作,可以不重写,默认会调用父类中的destroy()
         */
    @Override
    public void destroy() {
        System.out.println("destroy");
    }
常用方法:
        System.out.println(req);
        System.out.println(req.getMethod());    //请求方式:post get
        System.out.println(req.getRemoteAddr());    //获得客户端的ip
        System.out.println(req.getRemotePort());    //获得客户端端口
        System.out.println(req.getServerName());    //返回当前服务器的名字
        System.out.println(req.getServerPort());    //获取的是URL请求的端口,比如你的请求时127.0.0.1:8080,应用服务器的端口是80,那么getServerPort得到的端口是8080。
        System.out.println(req.getProtocol());      //返回指定URL的协议
        System.out.println(req.getHeader("User-Agent"));    //获取请求头中User-Agent的value值
        System.out.println(req.getHeader("Content-Length"));    //获取请求头中Content-Length的value值