tomcat部署项目一:servlet

浏览器无法直接访问src里面的东西,需要进行间接的配置进行访问。

一:web.xml的映射方式

浏览器访问:http://localhost:8080/test/demo没有反应,但是控制台输出

为什么url是http://localhost:8080/test/demo,而不是http://localhost:8080/demo呢?

因为当时自己配置的url的初始路径是方框标记出来的。

也就是当你访问初始url的时候,会访问index.jsp里面的文件。

MyServlet

扫描二维码关注公众号,回复: 11287306 查看本文章
package com.qianle.servlet;

import javax.servlet.*;
import java.io.IOException;

public class MyServlet implements Servlet {
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        System.out.println("haha");
    }

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("servlet is running");
        servletResponse.getWriter().write("hello client"); # 给浏览器返回的字符串信息
    }

    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {

    }
}

访问:http://localhost:8080/test/demo

返回中文浏览器乱码问题,返回之前设置文本类型和编码

@Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("servlet is running");
        servletResponse.setContentType("text/html;charset=utf-8");
        servletResponse.getWriter().write("你好中国");
    }

获取查询字符串

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        // 获取查询字符串        
        String id = servletRequest.getParameter("id");
        servletResponse.setContentType("text/html;charset=utf-8");
        servletResponse.getWriter().write(id);
    }

访问:http://localhost:8080/test/demo?id=你好中国

二:注解的方式

清空web.xml里面的servlet文件和servlet-mapping

@WebServlet(urlPatterns = "/demo")
public class MyServlet implements Servlet {

# TODO

猜你喜欢

转载自www.cnblogs.com/meloncodezhang/p/12984795.html
今日推荐