JavaWeb学习笔记-05初识servlet
Posted Moon&&Dragon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb学习笔记-05初识servlet相关的知识,希望对你有一定的参考价值。
初识servlet
1、什么是servlet
是sun公司为了扩展web服务器开发,提供的一组组件
扩展: 早期的web服务器只能处理静态资源,servlet可以处理动态页面(数据处理,交互);
组件: 软件模块的功能;
容器: 组件需要运行到什么样的环境里面;
书写servlet
写一个类继承HttpServlet----基于Http协议
public class FirstServlet extends HttpServlet {}
重写里面处理请求的方法-get/post/delete/put…—>service(可以处理一切请求)
public class FirstServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 这里就可以写业务代码了 super.service(req, resp); } }
2、什么是XML
- 可扩展的标记语言,类似html
- 用来 存储和传输数据--------db.properties
- db.properties比较扁平化,不够立体,在处理一些比较复炸的数据的时候,有很多不足
如果使用properties编写以下配置文件,可以写,但是非常麻烦:
湖北省 武汉市 武昌 汉口 汉阳 荆州市 公安 监利 松滋
但是使用xml来书写配置文件,就可以使用标签对的形式来表达:
<?xml version="1.0" encoding="UTF-8"?> <!-- 注释 --> <省份> <城市> <地区> <详细> </详细> </地区> </城市> </省份>
XML的特点:
对于格式 要求比较严格,需要严格遵守约束
也有 文档声明
有专门的属性,注释,元素
3、注册servlet
为什么需要注册?
当我们写了一个servlet类以后,服务器并不知道,也不知道如何访问,注册其实就是 告诉浏览器,怎么访问我写的servlet类,注册的方式有俩种,一种是 通过配置文件,另一种是 通过注解 来注册。
通过配置文件进行注册
写完一个servlet类以后,找到项目路径
src/main/webapp/WEB-INF/web.xml
,打开配置文件这里的配置文件的头信息是默认的,我们**使用我们tomcat的配置文件的头信息,可以在tomcat目录下的示例文件中的配置文件中拷贝,就是以下头信息(覆盖项目web配置文件**):
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> </web-app>
在web-app标签中注册
<!-- 声明一个servlet --> <servlet> <!-- 声明servlet名称(别名) --> <servlet-name>firstServlet</servlet-name> <!-- 声明servlet的包(类地址) --> <servlet-class>com.moon.controller.FirstServlet</servlet-class> </servlet> <!-- 声名映射,定义请求地址 --> <servlet-mapping> <!-- 声明好的servlet名称(别名) --> <servlet-name>firstServlet</servlet-name> <!-- 请求地址 --> <url-pattern>/first</url-pattern> </servlet-mapping>
完整的配置文件:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!-- 声明一个servlet --> <servlet> <!-- 声明servlet名称(别名) --> <servlet-name>firstServlet</servlet-name> <!-- 声明servlet的包(类地址) --> <servlet-class>com.moon.controller.FirstServlet</servlet-class> </servlet> <!-- 声名映射,定义请求地址 --> <servlet-mapping> <!-- 声明好的servlet名称(别名) --> <servlet-name>firstServlet</servlet-name> <!-- 请求地址 --> <url-pattern>/first</url-pattern> </servlet-mapping> </web-app>
如果==有多个servlet,就为每一个servlet配置一对servlet和mapping==
通过注解进行注册
在servlet类的类前添加注解
@WebServlet("请求的地址")
@WebServlet("/firstServlet") // 注解--映射服务器请求地址
完整的注解注册:
package com.moon.controller; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; /** * @author 晓龙 * @version 1.8.271 * @ProtectName JavaWeb * @ClassName FirstServlet * @Description TODO * @createTime 2021年04月10日 12:12:00 */ @WebServlet("/firstServlet") // 注解--映射服务器请求地址 public class FirstServlet extends HttpServlet { }
4、设置默认访问页面
我们的项目启动以后,会默认设置 index.jsp为默认页面,如果我们想要让服务器默认访问知道页面,只需要在 web.xml配置文件中配置以下信息
<!-- 在welcome-file标签中填写默认想要访问的页面 --> <welcome-file-list> <welcome-file>login.html</welcome-file> </welcome-file-list>
5、常见的Http错误代码
Http状态码:
常见状态码:
- 404: 请求的资源找不到/不存在 – 服务器没有正常启动,或者路径错误
- 405: 请求方法错误
- 200: 表示一次请求响应完美结束
- 500: 服务器不可预期错误----一般都是服务器代码写错了
- 503: 表示服务器不能处理客户端请求,但是一段时间后可能会恢复
- 403: 服务器收到了你的请求,但是不想理你
以上是关于JavaWeb学习笔记-05初识servlet的主要内容,如果未能解决你的问题,请参考以下文章