您好,欢迎来到纷纭教育。
搜索
您的当前位置:首页Servlet3

Servlet3

来源:纷纭教育
Servlet生命周期

四个阶段:

 加载阶段:加载并实例化(创建servlet实例)  初始化阶段: 调用init()方法

 响应客户请求阶段:调用service()方法  终止阶段:调用destroy()方法

实例化---服务器来做,只有一次 初始化---调用init,加载初始值

服务---等待用户请求,一次请求调用一次service,每次执行完继续回到服务状态,等待下次请求

终止----服务器关闭的时候调用

初始化阶段——init()方法  时机:由服务器启动,加载Servlet时调用  作用:让Servlet对象在处理客户请求前完成一些初始化的工作  特点:

 只调用一次  除非它被destroy()方法移除,否则不能重复调用  一旦调用成功,则servlet可以接受客户端请求

 语法:

 public void init(ServletConfig config) throws ServletException 

Init()参数—ServletConfig对象

 作用:

 封装了Servlet容器的配置信息

 特点:

 从一个Servlet被实例化后,对任何客户端任何时候访问有效  仅对本servlet有效,不能访问另一个servlet的ServletConfig

 方法:

 getInitParameter()

配置初始化参数

 初始化参数在web.xml中定义  语法:

name

Ladies and Gentlemen

message

Welcome to Servlet World!

 注意:

 必须写在之间

 必须写在之后

Service()方法

 时机:

 第一次访问Servlet:必须在inint()方法执行之后  客户端发送请求

 语法:

protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{}  特点:

 通过的servlet线程处理客户端请求  存在并发问题

destroy()方法

 时机:当一个服务器卸载servlet时会自动调用  作用:

 释放当前实例所占用的资源

 把当前内存中的数据储存到持久存储设备中  在整个生命周期中,只被调用一次

 语法:

public void destroy() {

super.destroy(); // Just puts \"destroy\" string in log System.out.println(\"++++++++++++服务已销\"); }

 注意:

 在destroy()方法完成前必须确保所有线程都已完成

资源访问

JAVA数据库连接(JDBC)  创建步骤:

 第一步:获得数据库连接参数信息  第二步:注册数据库驱动  第三步:实例化连接对象  第四步:实例化statement对象  第五步:执行SQL语句  第六步:处理结果集  第七步:关闭对象,释放资源 1.创建Servlet,并在初始化时获得参数

Xml配置:

driver

oracle.jdbc.driver.OracleDriver

url

jdbc:oracle:thin:@192.168.56.3:1521:test

user test

password test

2.编写getConnection方法,创建连接对象

3.doget方法获得连接,创建statement对象,执行sql语句,得到结果集

4.dispResultSet方法向页面返回结果

JDBC 优势与不足

 优势:

 JDBC能够处理多用户并发访问同一数据引发的并发问题.

 不足

 每建立一个数据库连接需要一至三秒.

 每一个请求都要创建一个新的连接,效率是很低的.  当数据库环境发生变化时,应用程序会出错

 数据库名称、登录信息  数据库类别

分发不同的结果到一个视图页面

 从一个ServletContext获取分发器

 RequestDispatcher 类

 分发请求到一个新的资源上

request.setAttribute(\"user\

……

getServletContext().getRequestDispatcher(\"/index.jsp\").forward(request,response); 视图页:

分发请求到一个新的资源上

 从一个请求分发器中有两种方法来分发请求

 Forward:把请求从一个servlet跳向同一个服务器上的另一个资源上  Include: 包括资源的内容

 两种得到请求分发器的方法

 ServletRequest.getRequestDispatcher() //相对路径  ServletConext.getRequestDispatcher() //绝对路径

 新资源可以访问其他不同范围属性的请求和响应

 javax.servlet.ServletContext—application in jsp  javax.servlet.http.HttpSession—session in jsp  javax.servlet.ServletRequest—request in jsp  javax.servlet.jsp.PageContext—page in jsp

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务