Serverlet简介

Serverlet简介:


Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指 Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

Serverlet的运行机制:


Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。这个过程为:
1、客户端发送请求至服务器端;
2、服务器将请求信息发送至Servlet;
3、Servlet生成响应内容并将其传给Server。响应内容动态生成,通常取决于客户端的请求;
4、服务器将响应返回给客户端 ;


Serverlet的生命周期:


1、Server创建一个Servlet的实例,也就是调用了init();
2、一个客户端的请求到达Server;
3、Server将请求发送给Serverlet;

4、Serverlet生成对请求的响应;

5、Server激活Servlet的service()方法,传递请求和响应对象作为参数;

a、service()方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息;
b、service()方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法;
c、对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重 复以上的循环,但无需再次调用init()方法。一般Servlet只初始化一次   ,当Server不再需要Servlet时(一般当Server关闭时),Server调用Servlet的Destroy()方法。









servlet是运行在服务器端,有Web服务器进行加载,用来响应客户端请求的Java代码模块。Servlet是一种对立于平台和协议的服务器端Java应用程序,可以生成动态的WEB页面。javax.servlet和javax.servlet.http包为编写Servlet提供了接口和类所有Servlet都必须实现Servlet接口,该接口定义了声明周期的方法。
 java Web应用程序中素有的请求-响应都是由Servlet来完成的。Servlet是JAVA WEB的核心程序,所有网址最终都交给SERVLET处理。他并没有main之类的方法,当用户访问服务器时,Tomcat是通过调用Servlet的某些方法来完成整个处理过程的
Servlet接口
GET:此种方式常用来查询信息。
POST:如果需要提交大量文本,需要使用POST方式。
HEAD:查询文档头信息,服务器返回的是文件的类型,长度以及最后修改的时间
OPTIONS,PUT,DELETE,TRACE:属于被声明了但是还没有被使用的web访问方式。目前浏览器中已经很少使用到这几种方式了。
void doXXX(HttpServletRequest request,HttpServletResponse response)如doGET或doPOS其中两个参数前者是客户端请求,后者是服务端请求。
目录结构
/Web:应用跟目录
/WEB-INF/:Tomcat会隐藏该文件夹吓得所有文件及文件夹,保护它们无法通过浏览器直接访问。
/WEB-INF/web.xml:Web程序最主要的配置文件
/WEB-INF/classes/:类文件都放置在此目录中,包括Servlet类
/WEB-INF/lib/:JAR文件都放置在此目录中。



编写Servlet程序
当面试中涉及到Servlet的问题时,以下是一些常见的问题和示例答案供参考: 1. 什么是ServletServlet是Java编写的服务器端程序,用于处理HTTP请求和生成HTTP响应。它运行在Web容器中,如Tomcat或Jetty。 2. Servlet的生命周期是什么? Servlet的生命周期包括以下三个阶段: - 初始化阶段:通过调用init()方法进行初始化,可以在此阶段执行任何必要的配置。 - 服务阶段:每次接收到HTTP请求时,都会调用service()方法来处理请求,并生成相应的HTTP响应。 - 销毁阶段:通过调用destroy()方法来终止Servlet的运行,并释放相关资源。 3. Servlet和JSP之间有什么区别? Servlet和JSP都是用于构建动态Web应用程序的技术,但它们有以下区别: - Servlet是Java类,完全由Java代码编写,而JSP是基于HTML的,其中嵌入了Java代码。 - Servlet在Java代码中处理请求和生成响应,而JSP使用标签和表达式在HTML中嵌入Java代码。 - Servlet更适合处理业务逻辑和数据访问,而JSP更适合用于呈现动态内容。 4. 如何在Servlet中处理GET和POST请求? 在Servlet中,可以通过重写doGet()和doPost()方法来处理GET和POST请求。例如: ```java protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 处理GET请求的代码 } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 处理POST请求的代码 } ``` 5. Servlet中如何获取请求参数? 可以使用HttpServletRequest对象的getParameter()方法来获取请求参数。例如: ```java String username = request.getParameter("username"); String password = request.getParameter("password"); ``` 这些问题只是Servlet面试中的一部分,根据面试的深度和要求,可能会涉及更多的问题。希望这些示例能对你有所帮助!如果你有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值