创建Servlet工程 下面是步骤:
首先在IDEA中点文件->新建->项目:
点Java模块,进行下一步
进入新建项目页面,点下一步
设置项目名称,我写的是FirstDemo
创建完成项目后,鼠标移到FirstDemo(自己的项目工程)右击,选择第二个 添加框架支持,如下图
在添加框架支持页面中,选择红色箭头指向的那一项,点确定
就出来了个web目录
在web目录的WEB-INF中创建一个目录,命名为classes
然后点击文件,选中项目结构
根据图片中箭头和步骤,完成操作,图片中的步骤3 是把输出目录和测试输出目录都改为classes目录地址即可
点击确定后,classes目录文件变色,如图片红框所示
在项目的src目录中创建一个FirstServlet类(自主命名),继承HttpServlet,会出现下图所示的错误
为了解决此类错误,我们点击文件,选择项目结构
鼠标按照下图步骤进行点击,
在jar或目录界面中,找到自己所下载的Tomcat地址,选择下面的lib目录下的servlet-api.jar点击确定
之后就会成功导入包类
在FirstServlet类中,写下如下代码:
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({"/test", "/get"})
public class FirstServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String name=req.getParameter("name"); //收到请求参数name
String html="<h1 style='color:red'>hi,"+name+"!</h1><hr/>"; //准备返回给浏览器的响应数据
System.out.println("返回给浏览器的响应数据为:"+html);
PrintWriter out= resp.getWriter(); //响应的输出流方法
out.println(html); //打印出来
}
}
然后在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">
<display-name>FirstServlet</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<--! 声明servlet -->
<servlet>
<!-- servlet的别名 -->
<servlet-name>first</servlet-name>
<servlet-class>FirstServlet</servlet-class>
</servlet>
<!-- 将Servlet与URL绑定 -->
<servlet-mapping>
<servlet-name>first</servlet-name>
<url-pattern>/hi</url-pattern> <!-- 默认地址后面加的地址 才能有此功能 -->
</servlet-mapping>
</web-app>
最后进行编辑配置 点击右上角的添加配置按钮
在运行/调试配置中按+ 再在添加新配置中找到Tomcat Server中选择本地
在运行/调试配置中,点击部署,鼠标找到+号,点击后选择第一个
在服务器启动部署上找到自己的工程,修改应用程序上下文 ,如果是/的话,就默认地址为http://localhost:8080/
最后点击运行。
记住:一般运行的结果都是jsp中文档显示出来的页面
(因为自己初次建立Servlet项目时,一直不知道怎么才能显示出来自己想要的,琢磨了半天)
在浏览器地址栏中输入 /hi?name=sss 就会显示出来自己在java类中和xml中所写代码的样式
其中/hi 是xml中将Servlet与URL捆绑的地址
?name=sss 表示 输入的参数是sss
最终显示出来如下效果