servlet
最近开始了软工实验,要做一个轻量级的全栈项目,所以最近开始实践后端
servlet 是什么
servlet是个容器,这是学习之后自己的理解。为什么说它是个容器呢?
你可以把服务器看作一个大容器,这些服务器里面有好多容器,容器里面又嵌套容器,里面有一层便是servlet,所以说它是个容器。
servlet 的使用
servlet 怎么使用呢?你看,在web前端,有post和get请求,当做出请求时,向后端请求某路径的资源,这个路径便是是哪个容器里的哪个文件(url-pattern),这个资源便是servlet处理请求返回的东西(doGet和doPost方法)。
第一个Servlet项目
- 新建web项目(第三步可以生成web.xml文件)
- 添加web.xml配置文件
- 创建Servlet
- 手动写Servlet
- 继承HttpServlet类
- 重写doGet和doPost方法
- 生成Servlet
- 新建Servlet
- 进行相应配置
- 手动写Servlet
web.xml的配置
<servlet>
<description>描述</description><!--非必需-->
<display-name></display-name><!--非必需-->
<servlet-name>ServletOne</servlet-name>
<servlet-class>servlet.HelloServlet</servlet-class><!--servlet类地址-->
</servlet>
<servlet-mapping>
<!--和servlet标签中的servlet名必须保持一致-->
<servlet-name>ServletOne</servlet-name>
<!--前端需要请求的路径,其中第一个"/"代表项目根目录-->
<url-pattern>/dir1/file1</url-pattern>
</servlet-mapping>
doGet和doPost方法(以post请求为例)
public void doPost(HttpServletRequest req,HttpServletResponse res){
//设置内容编码格式为utf-8的html编码
res.setContentType("text/html;charset=utf-8");
// 以下代码是用来被前端post请求时处理后向前端输出的内容,例如前端post请求当前servlet资源时页面将会跳转到servlet的url-pattern路径下,页面显示hello!
PrintWriter out = res.getWriter();
out.println("hello");
}
Over!