Servlet在每来一个请求的时候,开启一个线程。
Servlet在请求结束以后,依然存活。
Servlet有四个基本方法:init(),Service(),请求方法(doPost/doGet),destroy()。我们可以覆盖init()方法,加入在Servlet生命周期中只需要执行一次的语句。Service()方法会为请求产生新的线程或者调用未使用的线程,这里要注意并发的问题,一种简单的处理方式是实现SingleThreadModel,但是这样可能降低性能。
Jsp本质上就是Servlet,在客户端第一次请求这个Jsp时,会把Jsp编译成Servlet。由于Jsp一开始的定位是给页面开发人员看得,所以语法简单,而且大量使用了标记形式。
Jsp中5种标记:
<%- -%>:注释标记
<%! %>:声明标记
<%@ %>:指令标记,这里分为三类import,include,taglib,分别对应给Jsp文件导入相应的类,文件,标记库。
例子:<%@ page import="java.sql.*";%> <%@ include file="books.html" %> <%@ taglib uri="myTags.tld" %>
<%= %>:表达式标记
<% %>:脚本标记
Jsp中可以完成和Servlet一样的功能,那么,Servlet涉及到的对象Jsp中当然也有,只不过是通过隐式对象给出:request、response、session、out