不借助idea开发工具构建一个Javaweb项目
不借助idea开发工具构建一个Javaweb项目
目录结构
webappsroot
|----------WEB-INF
|----------classes(存放字节码)
|----------lib(存放第三方jar包)
|----------web.xml(注册Servlet)
|---------html
|---------css
|---------javascript
|---------image
...............
开发步骤
(1)构建目录
-
创建一个根目录,
my-first
-
在根目录下构建一个
WEB-INF
目录,(必须大写,是Servlet中的规范) -
在
WEB-INF
目录下新建classes
,lib
目录和一个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"> </web-app>
(2)编写Java程序
这个程序必须实现Servlet接口
import jakarta.servlet.Servlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.ServletRequest;
import jakarta.servlet.ServletResponse;
import jakarta.servlet.ServletConfig;
import java.io.IOException;
public class MyFirstServlet implements Servlet{
public void init(ServletConfig var1) throws ServletException{
}
public ServletConfig getServletConfig(){
return null;
}
public void service(ServletRequest request,ServletResponse response)
throws ServletException, IOException{
System.out.println("My First Servlet, Hello Servlet");
}
public void destroy(){
}
public String getServletInfo(){
return "";
}
}
注意这个Servlet接口不在JDK中(Servlet不是JavaSE了,Servlet属于JavaEE,是另一套类库)
Tomcat服务器实现了Servlet规范,可以在Tomcat服务器的lib
目录下看到一个servlet-api.jar
,解压这个jar包,可以找到一个Servlet.class
文件
从JakartaEE9开始,Servlet接口名全变了:
javax.servlet.Service
---->jakarta.servlet.Servlet
(3)编译MyFirstServlet
配置环境变量CLASSPATH
,添加.;D:\dev\apache-tomcat-10.0.18\lib\servlet-api.jar
注意:配置CLASSPATH和Tomcat服务没有关系,配置环境变量只是为了让你可以正常编译MyFirstServlet.java
文件生成MyFirstServlet.class
文件
将MyFirstServlet.class
文件拷贝到my-first\WEB-INF\classes
目录下
(4)编写配置信息
在web.xml
文件中编写配置信息吗,将请求路径和Servlet类名关联在一起
<?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>MyFirst</servlet-name>
<!-- 要填全限定名称 -->
<servlet-class>MyFirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<!-- 要和上面的servlet-name保持一致 -->
<servlet-name>MyFirst</servlet-name>
<!-- 这个随便取,但是必须是以 / 开始 -->
<url-pattern>/myfirst</url-pattern>
</servlet-mapping>
</web-app>
(5)启动Tomcat服务器
-
开启服务:打开DOS窗口,执行
startup.bat
命令 -
打开浏览器,在地址栏输入:http://localhost:8080/my-first/myfirst
总结
之前都是用idea开发的,它帮助我们做了很多事情,项目中有很多细节都不知道。在没idea的帮助下,新建一个JavaWeb项目,对整个项目是怎么运作的更加清晰了。
idea虽然很方便,但是对于刚刚学习的人说,我觉得反而是件坏事情,会留下很多隐患。