大家好,我是邵奈一,一个不务正业的程序猿、正儿八经的斜杠青年。
1、世人称我为:被代码耽误的诗人、没天赋的书法家、五音不全的歌手、专业跑龙套演员、不合格的运动员…
2、这几年,我整理了很多IT技术相关的教程给大家,爱生活、爱分享。
3、如果您觉得文章有用,请收藏,转发,评论,并关注我,谢谢!
博客导航跳转(请收藏):邵奈一的技术博客导航
| 公众号 | 微信 | CSDN | 掘金 | 51CTO | 简书 | 微博 |
教程目录
0x00 教程内容
- 创建Servlet
- 配置Servlet
0x01 创建Servlet
1. 方式一:直接新建Servlet类
创建Servlet非常简单,只需要新建一个类,然后继承 HttpServlet
类就可以了:
public class LoginServlet extends HttpServlet {
2. 方式二:使用IDEA新建
比如这里我新建一个 Servlet
:
新建之后是这样:
package com.java.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(name = "ProductServlet")
public class ProductServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
}
0x02 配置Servlet
但是创建好 Servlet
之后,其实还是要配置好它的,不然就无法在项目中使用。
1. 方式一:配置 web.xml 文件
<!--设置servlet-->
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>com.java.servlet.LoginServlet</servlet-class>
</servlet>
<!--设置servlet的url-->
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
说明:
其实上面使用IDEA创建Servlet,会默认配置好 @WebServlet
注解的name属性:
@WebServlet(name = "ProductServlet")
1. 方式二:使用注解
使用注解方式非常简单,只需要写上注解的属性就可以了:
@WebServlet(name = "login", urlPatterns = "/login")
直接在 servlet
上面加上注解,如图:
以上方式其实可以省略成这样:
@WebServlet("/login")
其实完整的写法是,以上是省略写法:
@WebServlet(urlPatterns = "/login")
如果你把 url
参数配置错的话,比如把斜杠去掉配置成这样:
@WebServlet(urlPatterns = "login")
其实是会报以下错误的:
Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> login in servlet mapping
at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3184)
at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3159)
其实就是说 url
配置不正确。
0xFF 总结
- 使用注解的方式非常简单,直接写个
url
就可以了,如:@WebServlet("/login")
- Servlet是Web开发的基础,掌握了基础,后面学习框架就会轻松很多,其实框架的底层就是这些基础,只是越来越简单而已,比如减少很多繁琐的操作,比如更加简单等等。
- 感谢支持!
邵奈一 原创不易,如转载请标明出处,教育是一生的事业。