是开发webapp的一种方式之一。
webAPP相当于是一个网站:
1.前端:网页
2.后端:服务器(HTTP服务器,我们使用现成的Tomcat)
Tomcat相当于是淘宝,
webAPP相当于是淘宝上的一个店铺,
Servlet(一组类和API)相当于是淘宝给店铺提供的服务。
Maven
是一个构建工具,用来:
编译:Java-》.class
打包:一大堆.class文件打包成一个jar包。
maven还有一个重要的功能:依赖管理。
创建一个maven项目:
第一次创建一个maven项目可能时间比较长,请耐心等待,如果出现问题,可试着去改一下中央仓库。
其中pom.xml是maven项目中最核心的配置文件。
xml是一种文件格式,这种格式类似HTML,是一种标签化语言。
目录结构:
Tomcat
Tomcat的基本使用:
1.能够显示静态页面(HTML)
放到root里面是特殊情况,不需要指定路径。
2.能够显示动态页面(Servlet)
第一步:使用maven下载Servlet API 的jar包
Tomcat和idea是互不相干的两个东西,Tomcat里面的Servlet jar包是为了让程序能运行,idea使用maven下载的jar包是为了进行开发。
第二步:创建一个类,继承自HTTPServlet这样的父类,这个是Servlet jar里提供的类,然后去重写父类的doXXX方法。
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//请求无论是啥,响应都是固定返回一个hello world
//是写到body中的
resp.getWriter().write("<h1>hello servlet</h1>");
}
}
代码就写完了,可能有人说没有main方法,
Servlet是运行到Tomcat的,要想让程序跑起来,需要打包部署到Tomcat里,Tomcat中有main方法,就会按照一定规则,调用到代码。
第三步:修改web.xml配置文件,告诉Tomcat,啥时候可以调用刚才写的代码。
web.xml主要是在运行时起到的效果。
pom.xml主要是在开发中起到效果。
这是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_3_1.xsd"
version="3.1"
metadata-complete="true">
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/java-hello</url-pattern>
</servlet-mapping>
</web-app>
第四步:打包(maven)运行package即可(打成war),Tomcat的webapps目录中放的就是war。
第五步:直接把war包拷贝到Tomcat的webapps目录中即可。
第六步:通过浏览器访问Servlet对应动态页面。