关于在tomcat设置url地址的问题

2021-05-09  本文已影响0人  老林_

使用tomcat之前,先设置环境变量JAVA_HOME和JRE_HOME

image.png

关于tomcat控制台乱码的问题

在 apache-tomcat-9.0.45\conf\logging.properties里,把所有的utf-8更改为GBK

更改端口

apache-tomcat-9.0.45\conf\server.xml里

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
#更改为
<Connector port="8899" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

com/ly5/HelloServlet.java代码

package com.ly5;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

public class HelloServlet extends HttpServlet{
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
        response.setContentType("text/html");
        PrintWriter out=response.getWriter();
        String docType="<!DOCTYPE HTML >\n";
        out.println(docType+"<html>\n<head><title>hello</title></head>\n<body bgcolor=\"#fdf5e6\"><h1>Hello</h1></body></html>");
    }
}

将编译成功的classes/com/ly5/HelloServlet.class文件放置到
apache-tomcat-9.0.45\webapps\ROOT\WEB-INF目录下,如图


image.png

对于映射的使用设定

在apache-tomcat-9.0.45\webapps\ROOT\WEB-INF\web.xml中的web-app标签中,添加

<servlet>
  <servlet-name>MyHelloServlet</servlet-name>
  <servlet-class>com.ly5.HelloServlet</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>MyHelloServlet</servlet-name>
  <url-pattern>/sayHello</url-pattern>
 </servlet-mapping>

然后开启tomcat即可

使用注释(另一种方法)

代码如下

package com.ly5;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

@WebServlet(urlPatterns = "/sayHello2")
public class AnnotationServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html");
        PrintWriter out=resp.getWriter();
        out.println("Hello From Annotation Servlet!");
    }
}

文件放的位置


image.png

修改apache-tomcat-9.0.45\webapps\ROOT\WEB-INF\web.xml文件 这里true改成false


image.png
然后启动tomcat

关于tomcat的自动重载功能

修改apache-tomcat-9.0.45\conf\context.xml文件
在Context标签中添加reloadable属性
<Context reloadable="true">
如果添加class文件,是不会生效的,如果是修改class文件,那么会生效


image.png

比如将AnnotationServlet.class中的输出更改了,编译后替换掉就会立即生效

关于运行时需要的lib,放在下面的文件夹中


image.png

放置于app-root/WEB-INF/lib/ 下

上一篇 下一篇

猜你喜欢

热点阅读