前言
这里的IDEA使用的是专业版,大学生认证后即可使用,社区版没有接触过暂不提,如果你是社区版,那么很可惜,本博客并不适用。本博客适用于java web刚入门的朋友学习使用,并不适用于高级部署。注意,这里写的无框架配置指的是不用Maven等框架进行配置。
创建项目
这里我们直接创建一个很普通的java项目,不用选择其他类别。构建系统选择IntelliJ,如图所示:
添加Web框架支持
这里我们需要在“帮助”-“查找操作”中查找“添加框架支持”选项,如图所示(注意如果是英语IDE的话,应该搜索"add framework support"):
这里我们直接选择“Web应用程序”,并且勾选,点击确定。注意,这里需要点击创建web.xml,与后续配置文件相关:
不出意外的话,我们的文件就会新增一段出来,如图所示。现在我们要求是将index.jsp能够正常显示出来:
配置tomcat
下载tomcat
这里从零开始讲解怎么配置,已经下载的朋友们可以跳过本节。
这里我们从官网下载tomcat:
这里需要注意的是,tomcat的版本的不同会导致后面配置的不同(后面会分开讲解),所以我们下载的时候需要注意版本,这里推荐越新越好。这里我们选择tomcat10,在下载页面选择适用于自己操作系统的进行下载,这里以windows为例
这里下载好之后,将压缩包进行解压,并放在随便一个路径下,注意,路径中不能有中文!如图所示,我们把tomcat放在此路径下:
在做完以上操作之后,这里推荐将bin目录下的startup.bat运行来检验tomcat是否能够正常使用,如图所示,图片左侧是windows的powershell:
在IDEA中配置tomcat
这里我们回到IDEA,点击如图所示的地方进行配置:
这里我们选择左侧的“添加新配置”,并在里面找到tomcat选项,选择本地:
这里我们在“部署”中选择添加工件,如果是严格按照我之前说的来做,那么这里应该是会多出来“工件”选项的。如果没有,那么这里不会出现“工件”选项:
这里需要注意的是,如果出现选项让你确定是哪一个工件的话,需要选择里面带有“war”字样的组件。选择其他工件可能会导致部署失败。在添加之后我们就可以点击确定返回了。
我们可以在这里确定一下是否添加成功。这里的“构建xxx工件”的意思是tomcat启动的时候,会部署你项目的web。
下面会自动弹出窗口:
在这里我们点击“运行”:
不出意外的话,在几秒后,就会自动弹出页面:
自此,我们的tomcat就配置成功了。
使用servlet
照理来说能看这个博客的朋友下一步就是需要用这个项目来创建servlet的。这里顺便就讲一下。
导入servlet.api
这里我们需要创建一个目录(文件夹)来放置我们的库:
这里我们需要在刚才的tomcat文件夹的lib文件夹中找到servlet-api.jar文件,将其导入项目中。注意不要直接把文件拖进项目中,不然tomcat会缺失文件,导致部署失败。最好的办法是将文件复制到项目对应的文件夹中。
文件导入如图所示:
这里我们还需要对这个文件右键,将其添加为库,一路确定即可:
添加成功后,我们就可以看到包内部的类了:
创建使用servlet的类
这里我们在src文件夹中创建一个软件包,这里命名为“com.demo”。
选择在该软件包中创建一个java类,名字随便起:
我们的servlet类的代码结构大致如下:
这里我们插入一段示例代码:
package com.demo;
import jakarta.servlet.*;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.*;
import java.io.IOException;
import java.io.PrintWriter;
// @WebServlet("/processForm")
public class FormServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取表单数据
String name = request.getParameter("name");
String email = request.getParameter("email");
// 设置响应内容类型
response.setContentType("text/html;charset=UTF-8");
// 获取输出流
PrintWriter out = response.getWriter();
// 生成响应内容
out.println("<html>");
out.println("<head><title>表单处理结果</title></head>");
out.println("<body>");
out.println("<h1>提交的表单内容:</h1>");
out.println("<p>姓名: " + name + "</p>");
out.println("<p>邮箱: " + email + "</p>");
out.println("</body>");
out.println("</html>");
}
}
这里需要注意的是,承接上文提到的tomcat版本问题,如果你使用的是比tomcat10小的版本(比如tomcat9),那么头文件需要进行修改
由import jakarta.servlet.*;
修改为import javax.servlet.*;
,其他有文件同理。剩下的具体怎么编写代码以及html页面这不提,超纲。
文件创建与放置
如图所示:
至此,教程结束。