servlet创建web后端程序的示例代码
一、Servlet概述
Server Applet的简称,用Java编写的服务器端的程序。它运行在web服务器中,web服务器负责Servlet和客户的通信以及调用Servlet方法。
前端页面、服务器和后端javaEE程序关系图:
Servlet的作用:1.接收用户发送的请求数据; 2.调用其他的java程序来处理请求; 3.根据处理结果,将结果响应给客户端。
二、创建servlet程序
1.创建类继承HttpServlet
在src下先创建包,在servlet包下创建一个登录类,继承HttpServlet类,于是我们创建的类就具备了servlet的程序功能,启动服务器时就会加载继承HttpServlet的类。由于HttpServlet是javaEE的类,需要导入tomcat中的servlet-api.jar包。
在安装Tomcat文件里的bin目录中:
复制bin目录中的 servlet-api.jar 包到项目中的web目录下:
加载jar包:
这样,我们的类成功的继承了import javax.servlet.http.HttpServlet包下的HttpServlet类。
2.重写HttpServlet类中 service、destroy、init方法
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; public class LoginServlet extends HttpServlet { /* 无参构造方法,初始化创建的对象 在第一次访问这个Servlet时或服务器启动时被调用了,只调用了一次 */ public LoginServlet() { System.out.println("LoginServlet无参构造方法"); } /* 提供服务的,每次访问servlet程序,service方法都会执行, 多次执行 */ @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("service"); } /* 在服务器关闭时会被调用,可以在服务器关闭时执行一些必要的操作, 此方法可以在我们的类中不重写,会调用父类中destroy() */ @Override public void destroy() { System.out.println("destroy"); } /* 在构造方法执行完成后,紧接着来执行,用来初始化servlet,只调用了一次, 如果没有初始化的需要,也可以不进行重写,那么会调用父类中init(). */ @Override public void init(ServletConfig config) throws ServletException { System.out.println("init"); } }
3.在web.xml文件中配置servlet
<?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-name>loginServlet</servlet-name><!-- 定义servlet对象名字 --> <!-- 配置servlet类地址,在第一次或启动服务器时,由服务器通过反射机创建次servlet对象制 默认是第一次访问servlet时创建对象 还可以配置在启动时创建对象<load-on-startup>1</load-on-startup> 值>=0 --> <servlet-class>com.yyds.webback2.servlet.LoginServlet</servlet-class> <!-- <init-param>--> <!-- <param-name>count</param-name>--> <!-- <param-value>22</param-value>--> <!-- </init-param>--> <!-- <load-on-startup>1</load-on-startup> --> </servlet> <!-- 为指定name的servlet配置一个供前端进行访问映射地址--> <servlet-mapping> <servlet-name>loginServlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping> </web-app>
补充:<init-param>中的值可以在init方法中拿到:System.out.println(config.getInitParameter("count"));
4.重新启动服务器
访问 localhost:8080/webBack2/login
可在idea输出台观察构造方法和重写方法的调用顺序。
到此这篇关于servlet创建web后端程序的示例代码的文章就介绍到这了,更多相关servlet创建web后端程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
spring boot-2.1.16整合swagger-2.9.2 含yml配置文件的代码详解
这篇文章主要介绍了spring boot-2.1.16整合swagger-2.9.2 含yml配置文件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-08-08Spring中@Import的各种用法以及ImportAware接口详解
这篇文章主要介绍了Spring中@Import的各种用法以及ImportAware接口详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-10-10出现SLF4J: Failed to load class “org.slf4j.impl.StaticLog
本文主要介绍了出现SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-07-07SpringCloud Alibaba 基本开发框架搭建过程
这篇文章主要介绍了SpringCloud Alibaba 基本开发框架搭建过程,开发工具选用的idea,本文通过图文实例相结合给大家分享搭建全过程,需要的朋友可以参考下2021-06-06
最新评论