servlete基础
1. 使用servlet需要继承HttpServlet
Servlet 生命周期
Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程:
- Servlet 通过调用 init () 方法进行初始化。
- Servlet 调用 service() 方法来处理客户端的请求。(用来接收客户端的请求并且分辨属于何种类型的请求get或者post等,通常我们无需自己写,父类已经帮我们做好)
- Servlet 通过调用 destroy() 方法终止(结束)。
- 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。
- //查看 http://www.runoob.com/servlet/servlet-life-cycle.html servlet的具体教程
servlet是早期进行Javaweb的编程 在后来的各种框架出来后(struts,springmvc),也就关注的少了,但是如今的框架究其底层还是根据servlet实现的,可以说是深度的封装。
基于servlet实现的一个简单web项目 参照:https://blog.csdn.net/maple082/article/details/52904123 实现增删改查
使用servlet需要在web.xml中进行映射配置
servlet-mapping是用于servlet的路径映射配置,其中url-pattern为指定的映射拦截路径。
在SpringMVC中,url-pattern指定了spring需要拦截派发的路径。
url-pattern有5种配置模式:
(1)/xxx:完全匹配/xxx的路径
(2)/xxx/*:匹配以/xxx开头的路径,请求中必须包含xxx。
(3)/*:匹配/下的所有路径,请求可以进入到action或controller,但是转发jsp时再次被拦截,不能访问jsp界面。
(4).xx:匹配以xx结尾的路径,所有请求必须以.xx结尾,但不会影响访问静态文件。
(5)/:默认模式,未被匹配的路径都将映射到刺servlet,对jpg,js,css等静态文件也将被拦截,不能访问。
该映射路径是 在去掉上下文路径的剩余全路径 即去掉:request.getContextPath() 该路径为工程的名字
例如:
该form提交 url-pattern是匹配不到该url的
所以修改为:
<servlet-mapping>
<servlet-name>servlet2</servlet-name>
<url-pattern>/Login/login</url-pattern>
</servlet-mapping>
servlet修改为:
这种方法名传递方式是基URI的 但是也可以用上面的那个servlet项目 使用 ( ?methodName=?) 该方式进行
关于servlet的url-pattern规则也可查看: https://www.cnblogs.com/canger/p/6084846.html