Servlet+JSP 原理
Servlet是用Java编写的Server端程序,与协议和平台无关,可移植行较强。
Servlet在编辑时须要导入特定的Servlet API 的包,类似于普通Java程序的写法。
Servlet採用的是请求-响应模式处理client之间的各种请求。整个过程主要包含:1. client向server端发送请求 2. server将请求信息发送给Servlet 3. Servlet生成对应的内容 4. server将对应内容返回给client。
Servlet的生命周期:1. Server创建一个Servlet的实例 2. Server调用Servlet的init()方法 3. client请求到达Server 4. Server创建一个请求对象(Request) 5. Server创建一个响应对象(Response) 6.Server调用Service()方法,同一时候Request和Response作为參数 7.service()函数处理client的请求 8. service将处理结果(响应)返回给Server。然后进一步交给client。 Servlet仅仅须要初始化一次,因此,在多client请求的时候,也仅仅须要init()一次。其它的都是。
当Server不再须要该Servlet时。会调用其Destory()方法。
SUN公司首先推出的Servlet,功能比較强大,可是输出html语句的时候。还是用的老的CGI方式,一句一句输出。
因此。JSP被推出。
JSP支持将Java代码嵌入到html代码中,html代码负责网页的显示。JSP代码用来逻辑处理。
JSP的本质就是Servlet。
JSP在第一次被请求的时候,JSP文件会被转换成一个Servlet。
JSP文件被转换成一个Java源文件,在转换成功之后,会对其进行编译,生成对应的class文件。同一时候,创建一个Servlet实例。然后,就是同Servlet的过程。