Servlet快速入门
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
- 上面的dependency标签就是依赖
- 上面的artifactId标签就是依赖坐标
- 上面的version就是版本号
- 上面的scope就是依赖范围
- 这里要注意: 我们这里的依赖范围的取值一定要是provided, provided就是表示依赖范围为: 在编译环境和测试环境之下, 但是在运行环境就会失效
- 那么在运行环境失效, 其实对于我们的web项目来说将来将这个web项目打成一个var包的时候其中就没有这个依赖坐标对应的jar包了, 没有这个jar包才不会出错
- 为什么要没有这个jar包才不会出错?
- 因为tomcat里面自带了Servlet的jar包, 如果你的web项目里面也有这个jar包, 那么就会产生冲突
- 所以我们一定要在运行环境将这个jar包排除掉, 也就是将依赖范围设置为provided即可
- 因为tomcat里面自带了Servlet的jar包, 如果你的web项目里面也有这个jar包, 那么就会产生冲突
- 为什么要没有这个jar包才不会出错?
- 那么在运行环境失效, 其实对于我们的web项目来说将来将这个web项目打成一个var包的时候其中就没有这个依赖坐标对应的jar包了, 没有这个jar包才不会出错
- 这里要注意: 我们这里的依赖范围的取值一定要是provided, provided就是表示依赖范围为: 在编译环境和测试环境之下, 但是在运行环境就会失效
public class ServletDemo1 implements Servlet{
public void service(){
System.out.println("Servlet hello world~~");
}
//实现其他四个抽象方法
...
}
@WebServlet("/demo1")
public class ServletDemo1 implements Servlet{
...
}
- 此时我们的此Servlet类的访问路径就是/demo
- 使用注解配置Servlet访问路径是我们Servlet新版本的一种简化配置方式
- 以前我们都是使用XML来配置Servlet访问路径的(后面我们也会讲如何使用XML形式配置Servlet访问路径)
url如下:
http://localhost:8080/web-demo/demo1
- 我们如果不在配置tomcat插件过程中使用configuration标签中的path子标签配置当前web项目的访问路径时, 那么当前的web项目的访问路径默认就是当前的Web项目的工程名, 而我们的此时的这个web工程名称就是: web-demo
- 所以当前web项目的访问路径就是: /web-demo
- 工程名: 就像我们学习JavaSE的时候创建的javabase工程一样
- tomcat默认端口号为8080
- 我们上面设置了Servlet类的访问路径为/demo1, 所以这里我们的/demo1就是表示访问web-demo工程中的具体的访问路径为/demo1的Servlet类
补充:
在导入tomcat插件时如果不通过configuration标签中的path子标签配置web项目的访问路径, 那么当前web项目的访问路径默认为当前的工程名
问题提出:
什么是war包, 什么又是jar包?
- war包就是Javaweb工程打包之后就是一个war包
- jar包就是一个.java文件打包之后就是一个jar包
补充二:
tomcat又称为: web容器