目录
1.创建项目
2.引入依赖
3.创建目录
4.编写代码
5.打包程序
6.部署项目
7.验证程序
什么是Tomcat和Servlet?
以idea2019为例:
1.创建项目
1.1 首先创建maven项目
1.2 项目名称
2.引入依赖
2.1 网址输入mvnrepository.com进入maven中央仓库->地址。点击搜索servlet,找到Java Servlet API。
2.2 点击进入找到版本3.1.0.,点击进入。
2.3 往下翻有一段代码。复制这段代码:
2.4 进入项目里的pom.xml,首先添加下面这段代码:
<dependencies>
</dependencies>
2.5 再将刚刚中央仓库复制的那段代码复制到dependencies中。
或者以上引入依赖步骤直接省略,直接复制下面这段:
<dependencies>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
2.6 接下来点击右上角的刷新图标,进行下载相关资源。如果是首次配置maven,这个下载会比较慢,后面再次创建其他maven项目这个下载就会很快。并且第一次下载可能会有一些问题,有可能是还没下载完,多次刷新右上角图标,是一种解决办法。
额外的如果还需要mysql和jackson(json)的依赖,还是同样的方法搜索mysql和jaskon。注意版本。
整体依赖代码如下:
<dependencies>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.49</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.2</version>
</dependency>
</dependencies>
至此,引入依赖大功告成。
3.创建目录
3.1 接下来在main目录下创建webapp目录,再在webapp目录下创建WEB-INF目录,最后在WEB-INF目录下创建web.xml文件
3.2 此时的web.xml是空的,复制下面这段代码到web.xml中。直接复制即可。
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>
4.编写代码
接下来我们编写一个简单的servlet程序。
在main目录下的java文件中编写代码。写一个响应hello world。别忘记路径那块的注解。
5.打包程序
接下来对刚才的java代码进行打包(war包)。
打包之前我们首先做这两步:maven默认是打成jar包(Java通用的压缩包),第一段代码是为了修改成war包(Tomcat专属的压缩包),第二段是为了设置包名。设置完后记得右上角刷新。
样例代码如下,报包名可自己修改。
<packaging>war</packaging>
<build>
<finalName>Hello</finalName>
</build>
接下来点击这个。
再继续点击。
仔细看左边,会出现一个target文件,这个里面放的就是我们每次打好的包。
6.部署项目
找到你的Tomcat在文件夹中的位置。
把war包拷贝到Tomcat的webapps目录下。
启动Tomcat,终端输入startup.bat也行(前提得配置环境变量)。bin目录里找startup.bat双击也行。
启动成功后,webapps里会多出来一个和包名一样的文件夹。这个包就是Tomcat启动后自动对war包解压缩得到的。
7.验证程序
网址上输入127.0.0.1:8080/Hello/hello。
127.0.0.1:8080/是默认的
Hello是刚才war包的名字,是一级路径。
hello是Java代码中注解里的,是二级路径。
即127.0.0.1:8080 / context path / servlet path
8.使用Smart Tomcat进行部署
1.下载Smart Tomcat
点击 File → Settings
点击 Plugins,在搜索栏搜索 Smart Tomcat,然后进行安装即可
2.配置Smart Tomcat
点击 Add Configuration
点击左上角的+号,并选择 Smart Tomcat
下面可以不修改。
配置好 Smart Tomcat 之后,Add Configuration 就会显示成 Name 的名字,并且右边多了个三角形运行的符号。以后点击这个三角形启动Tomcat。
3.启动Tomcat
点击三角形运行 Smart Tomcat,出现如下信息表示程序启动成功。
点击蓝色的连接,跳转到项目路径,再增加 Servlet Path(二级路径) 就可以显示出该程序的结果
下面写一段代码验证,为防止乱码,指定响应编码格式,使用注解指定 Servlet Path 为 hello 。
重启Tomcat。 输入URL。
格式为 127.0.0.1:8080/Context Path/Servlet Path
什么是Tomcat和Servlet?
Tomcat : 是Java圈子里最流行的HTTP服务器。是一种现成的,用Java写的的服务器程序。当然我们自己也可以基于TCP或UDP编写一个服务器。不过实际中一般都是利用Tomcat中封装好了的接口来进一步实现我们自己的逻辑需求。
Servlet : 是Tomcat提供的一组API,封装了HTTP协议,相当于一个容器,用于客户端和Tomcat服务器之间的交互。