本文是菜鸟教程阅读笔记,详细请前往菜鸟教程html
Java Servlet是运行在Web服务器上的程序,它是做为来自Web浏览器和服务器上的数据库之间的中间层。java
简单点说,咱们平时放在Tomcat上运行的的Java后端代码就能够称为Servlets Program
web
一张图能够看出Servlet在web程序中的位置。数据库
因此,Servlet就是接收浏览器或其余HTTP客户端发来的请求,根据请求操做数据库,并返回请求所须要的数据。apache
因为Servlet不是Java平台标准版的组成部分,因此须要为编译器指定Servlet类的路径。windows
windows下的C:\autoexec.bat
中添加如下代码后端
set CATALINA=C:\apache-tomcat-5.5.29 set CLASSPATH=%CATALINA%\common\lib\servlet-api.jar;%CLASSPATH%
Unix中的.cshrc
文件中添加api
setenv CATALINA=/usr/local/apache-tomcat-5.5.29 setenv CLASSPATH $CATALINA/common/lib/servlet-api.jar:$CLASSPATH
正常咱们配置Tomcat的时候就已经配置好了,不须要单独进行配置浏览器
Servlet生命周期能够当作从建立到终止的全过程。tomcat
经过调用init()
方法进行初始化
调用service()
方法来处理客户端的请求
经过调用destory()
方法终止。
最后经过JVM
的垃圾回收器进行垃圾回收
init()方法是用来建立Servlet的,一般能够指定Servlet在服务器启动的时候进行建立。
public void init() throws ServletException { //初始化 }
Servlet一旦被建立,服务器每接收一个请求时,都会产生一个新的线程,并调用service()
方法。
service()
方法是处理请求的主要方法,也就是说咱们的业务逻辑都是经过这个方法或者这个方法的变式来实现的。
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException{ }
doGet()
和doPost()
方法是每次服务请求中最经常使用的方法,分别用于处理GET和POST请求。
destroy()
方法可让Servlet 关闭数据库链接、中止后台线程、把 Cookie 列表或点击计数器写入到磁盘,并执行其余相似的清理活动。
在Eclipse中新建一个Dynamic Web Project
项目。
接着,在src目录下新增一个package
,命名为com.servletLearn
。再在这个包下面新增一个HelloWorld.java
添加如下代码到HelloWorld.java
中
package com.servletLearn; /* * @description 第一个servlet实例 * @author dahan */ // 导入必需的 java 库 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; // 扩展 HttpServlet 类 public class HelloWorld extends HttpServlet { private String message; public void init() throws ServletException { // 执行必需的初始化 message = "Hello World"; } public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { // 设置响应内容类型 response.setContentType("text/html"); // 实际的逻辑是在这里 PrintWriter out = response.getWriter(); out.println("<h1>" + message + "</h1>"); } public void destroy() { // 什么也不作 } }
配置web.xml
<web-app> <servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>com.servletLearn.HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
启动Tomcat,打开http://localhost:8080/servlet-learn/HelloWorld
大功告成!