Servlet有什么用?

  • 问题:服务器在接收到浏览器的请求后,会自动调用对应的逻辑代码进行请求 处理。但是逻辑代码是由程序员编写并放到服务器中,那么服务器怎么知道该怎么调用并调用哪个类和哪个方法来进行请求处理。
  • 解决:程序员在编写代码的时候如果能够按照服务器能够识别的规则进行编写,浏览器按照指定的规则进行发送请求,那么服务器就可以调用并执行响应的逻辑 代码进行请求处理了。举个例子:图书馆借书
  • 实现: Servlet技术

    Servlet概念

  • 概念: 狭义的 Servlet 是指 Java 语言实现的一个接口,广义的 Servlet 是指 任何实现了这个 Servlet 接口的类,一般情况下,人们将 Servlet 理解为后者。 Servlet 运行于支持 Java 的应用服务器中。从原理上讲,Servlet 可以响应任何 类型的请求,但绝大多数情况下 Servlet 只用来扩展基于 HTTP 协议的Web服务器
  • 特点: 运行在支持java的应用服务器上 Servlet的实现遵循了服务器能够识别的规则,也就是服务器会自动的根据请求调用对应的servlet进行请求处理。简单方便,可移植性强
  • 使用:
    • 1、 创建普通的java 类并继承HttpServlet
    • 2、 覆写service方法
    • 3、 在service方法中书写逻辑代码即可
    • 4、 在webRoot下的WEB-INF文件夹下的web.xml 文件中配置servlet(web3.0可以使用注解)
  • 运行流程:
    • url:http://localhost:8080/project/my2
    • 组成: 服务器地址:端口号/虚拟项目名 /servlet的别名
    • URI:虚拟项目名 /servlet的别名
    • 浏览器发送请求到服务器,服务器根据请求URL地址中的URI信息在webapps目录下找到对应的项目文件夹,然后在web.xml中检索对应的servlet,找到后调用并执行 Servlet。

web.xml配置servlet

  • 配置一个servlet首先创建一对<-servlet>标签,在标签中创建<-servlet-name>标签,属性值为的要给servlet别名,在创建一对<-servlet-class>标签,属性值为此servlet的全限定路径(包名+类名),创建好后最好点击一下,看能否进入到我们所想要的servelt类中。
  • 接着创建一个于<-servlet>标签同级的<-servlet-mapping>标签,在标签中创建一个<-serlet-name>标签,**注意给标签属性值必须要与上个<-servlet>标签中的<-servlet-name>中的属性一致。然后创建一个<-url-pattern>标签,标签属性值为你要给此servlet取的别名。