资讯专栏INFORMATION COLUMN

听说你叫Java(一)--Servlet简介

Reducto / 1540人阅读

摘要:所以,就是接收浏览器或其他客户端发来的请求,根据请求操作数据库,并返回请求所需要的数据。和方法是每次服务请求中最常用的方法,分别用于处理和请求。实现一个简单的在中新建一个项目。接着,在目录下新增一个,命名为。

本文是菜鸟教程阅读笔记,详细请前往菜鸟教程

是什么

Java Servlet是运行在Web服务器上的程序,它是作为来自Web浏览器和服务器上的数据库之间的中间层。

简单点说,我们平时放在Tomcat上运行的的Java后端代码就可以称为Servlets Program

一张图可以看出Servlet在web程序中的位置。

所以,Servlet就是接收浏览器或其他HTTP客户端发来的请求,根据请求操作数据库,并返回请求所需要的数据。

怎么用
设置CLASSPATH

由于Servlet不是Java平台标准版的组成部分,所以需要为编译器指定Servlet类的路径。

windows下的C:autoexec.bat中添加以下代码

set CATALINA=C:apache-tomcat-5.5.29
set CLASSPATH=%CATALINA%commonlibservlet-api.jar;%CLASSPATH%

Unix中的.cshrc文件中添加

setenv CATALINA=/usr/local/apache-tomcat-5.5.29
setenv CLASSPATH $CATALINA/common/lib/servlet-api.jar:$CLASSPATH

正常我们配置Tomcat的时候就已经配置好了,不需要多带带进行配置

生命周期

Servlet生命周期可以看成从创建到终止的全过程。

通过调用init()方法进行初始化

调用service()方法来处理客户端的请求

通过调用destory()方法终止。

最后通过JVM的垃圾回收器进行垃圾回收

常用的方法
init()方法

init()方法是用来创建Servlet的,通常可以指定Servlet在服务器启动的时候进行创建。

public void init() throws ServletException {
    //初始化
}

Servlet一旦被创建,服务器每接收一个请求时,都会产生一个新的线程,并调用service()方法。

service()方法

service()方法是处理请求的主要方法,也就是说我们的业务逻辑都是通过这个方法或者这个方法的变式来实现的。

public void service(ServletRequest request, 
                    ServletResponse response) 
      throws ServletException, IOException{
}

doGet()doPost()方法是每次服务请求中最常用的方法,分别用于处理GET和POST请求。

destroy()方法

destroy()方法可以让Servlet 关闭数据库连接、停止后台线程、把 Cookie 列表或点击计数器写入到磁盘,并执行其他类似的清理活动。

实现一个简单的Servlet

在Eclipse中新建一个Dynamic Web Project项目。

接着,在src目录下新增一个package,命名为com.servletLearn。再在这个包下面新增一个HelloWorld.java

大功告成!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/66981.html

相关文章

  • 听说你叫Java(三)–Servlet过滤器

    摘要:幸好,给我们提供了过滤器解决这个问题。可以将一个或多个过滤器附加到一个或一组。同样的,过滤器是可用于编程的类,也需要在中声明的。用户访问后续过滤器。过滤器和拦截器是两个完全不同的概念。 听说你改bug很厉害,帮我改一个吧????showImg(https://segmentfault.com/img/bVMsm7?w=402&h=223); 上一章我们讲到了Servlet请求,可以通过...

    techstay 评论0 收藏0
  • 听说你叫Java(二)–Servlet请求

    摘要:服务器响应当客户端发送了一个请求给服务器,服务器也会返回一个响应给客户端,同样的,这个响应中也包含了除数据之外的很多信息。如果没有指定,会在所有对此站点的传送时发送。正常情况下,只被送回最初向用户发送的计算机。下一章大巴司机和。 showImg(https://segmentfault.com/img/bVL3vT?w=800&h=600); Servlet客户端HTTP请求 当浏览器...

    adie 评论0 收藏0
  • 全栈开发自学路线

    摘要:前言这里筑梦师是一名正在努力学习的开发工程师目前致力于全栈方向的学习希望可以和大家一起交流技术共同进步用简书记录下自己的学习历程个人学习方法分享本文目录更新说明目录学习方法学习态度全栈开发学习路线很长知识拓展很长在这里收取很多人的建议以后决 前言 这里筑梦师,是一名正在努力学习的iOS开发工程师,目前致力于全栈方向的学习,希望可以和大家一起交流技术,共同进步,用简书记录下自己的学习历程...

    galaxy_robot 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<