1、首先下载安装好Tomcat,并配置好环境变量
如果成功了,在开启tomcat服务后,在浏览器输入http://localhost:8080/可以正常访问,像下面这样
2、来到tomcat文件的webapps目录下(所有的webapp都写在这个文件夹下),新创一个名为FirstServletWebapp的文件夹。
在FirstServletWebapp文件夹下新建一个名为WEB-INF的文件(必须是WEB-INF,规范不可改)
在WEB-INF文件下新建三个文件,分别是classes(用来存放编译后的.class文件)、lib(存放jar包)、web.xml(配置文件)
3、打开"电脑"——>"属性"——>"高级系统设置"——>"环境变量",在CLASSPATH变量下添加变量值"D:\apache-tomcat-9.0.64\lib\servlet-api.jar",在你tomcat文件的lib目录里(没有CLASSPATH变量就新建一个)
4、文件部署好后开始编写代码
(1)首先在任意盘中新建一个java程序,该Java程序必须实现Servlet接口。代码如下(D盘下新建名为HelloServlet的java文件):
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.IOException;
public class HelloServlet implements Servlet{
//实现Servlet接口的五个方法
public void init(ServletConfig config) throws ServletException{
}
public void service(ServletRequest request,ServletResponse response)
throws ServletException,IOException{
System.out.println("Hello World!");
}
public void destroy(){
}
public String getServletInfo(){
return "";
}
public ServletConfig getServletConfig(){
return null;
}
}
(2)在命令窗口中执行javac HelloServlet.java 就会得到编译后的HelloServlet.class文件,将该文件剪切到classes文件夹下。
5、编写web.xml代码
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/sh</url-pattern>
</servlet-mapping>
</web-app>
说明:<servlet>和<servlet-mapping>下的<servlet-name>必须一致
<servlet-class></servlet-class>中存放的是你的java程序名
<url-pattern></url-pattern>中的内容可以随意,但必须是以"/"开头
6、在命令窗口中打开tomcat服务
7、在浏览器地址栏中输入localhost:8080/FirstServletWebapp/sh
8、运行成功,但或许这不是你想要的结果,那么我将它打印到浏览器上(并进行输出中文不乱码的设置)
只需更改java程序中的内容,这里我又在webapps下新建一个PrintToBrowser的文件,classes下有HelloServlet.java打印后的.class文件,代码如下:
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.IOException;
//标准输出流,不需要关闭
import java.io.PrintWriter;
public class WelcomeServlet implements Servlet{
//五个方法
public void init(ServletConfig config) throws ServletException{
}
public void service(ServletRequest request,ServletResponse response)
throws ServletException,IOException{
//解决响应的时候中文乱码问题
//设置响应的内容类型以及字符编码方式
response.setContentType("text/html;charset=UTF-8");
//将信息输出到浏览器上
//将HTML字符串输出到浏览器上,浏览器解释执行
//获取输出流对象,流直接指向特定的浏览器客户端
PrintWriter out = response.getWriter();
//响应HTML代码到浏览器
out.print("<html>");
out.print("<head>");
out.print("<title>Welcome Servlrt</title>");
out.print("</head>");
out.print("<body>");
out.print("<h1>Welcome Servlrt你好 中国</h1>");
out.print("</body>");
out.print("</html>");
}
public void destroy(){
}
public String getServletInfo(){
return "";
}
public ServletConfig getServletConfig(){
return null;
}
}
9、在浏览器输入http://localhost:8080/PrintToBrowser/sh,如图所示
大功告成!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!