1.Servlet简介
- Servlet就是sun公司开发动态web的一门技术
- Sun在这些API中提供一个接口叫做:Servlet,如果你想开发一个Servlet程序,只需要完成两个小步骤:
- 编写一个类,实现Servlet接口
- 把开发好的Java类部署到web服务器中。
把实现了Servlet接口的Java程序称为,Servlet
2.Servlet的创建
1.在pom.xml中添加依赖
1 2 3 4 5 6 7 8 9 10 11 12 13
| <dependencies> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version>2.3.3</version> </dependency>
<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> </dependencies>
|
2.创建java类实现Servlet 接口(直接继承HttpServlet)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { PrintWriter writer = resp.getWriter(); writer.print("Hello,Serlvet"); }
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
|
3.web.xml中添加映射
<!--注册Servlet-->
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>cn.howsyc.servlet.HelloServlet</servlet-class>
</servlet>
<!--Servlet的请求路径-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--‘/’不能少了-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
4.配置tmocat
注意:配置项目发布的路径就可以了
3.Servlet原理

4.Mapping问题:
1.一个Servlet可以指定一个或多个映射路径
1 2 3 4 5 6 7 8 9 10 11 12
| <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello2</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello3</url-pattern> </servlet-mapping>
|
2.一个Servlet可以指定通用映射路径
1 2 3 4 5
| <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello/*</url-pattern> </servlet-mapping>
|
3.可以指定默认请求路径及后缀
1 2 3 4 5
| <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping>
|
1 2 3 4 5 6 7 8 9
|
<servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>*.howsyc</url-pattern> </servlet-mapping>
|
4.优先级:1指定->2通用->3默认