1. servlet生命周期
servlet生命周期从创建到毁灭的过程
一、默认情况下,第一次被访问时,servlet调用init()方法进行初始化(init()方法只调用一次)。
二、根据客户需求Servlet调用service()方法处理客户端的请求(根据客户需求执行多次)。
三、当Servelet服务器关闭时,调用destroy()方法结束(服务器关闭时执行一次该方法)。
注:servlet经历 ①实例化–②初始化–③执行service服务—④销毁调用destroy方法。
2.servlet作用及其定义
作用:1.程序和服务器之间连接;
2.交互式地浏览和生成数据。
3.发送显示数据到客户端,发送隐式的HTTP响应到客户端。
定义:1.Servlet—接口 需要对其进行实现
2.必须遵循HTTP协议
jsp实现页面跳转
实现跳转方法有两种
第一种方法:使用a标签进行跳转,前提需要在创建web工程后创建第一个“servlet.java”的重新创建相应的包名和正确的路径名称,web.xml文件中重新配置如下:
<servlet> ----Servlet
<servlet-name>FirstServlet</servlet-name>
servletname 可以自定义 但建议使用对应的servlet名称
增加代码的可读性
<servlet-class>com.openlab.servlet.FirstServlet</servlet-class>
指定Servlet的类
</servlet>
Servlet 映射的 ---功能 动作
<servlet-mapping>
<servlet-name>FirstServlet</servlet-name>
<url-pattern>/firstservlet.do</url-pattern>
对应Servlet的访问路径
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
a标签实现的跳转默认为“get”请求,代码如下:
<body>
<a href="firstservelet.do" > 点击</a>
</body>
第二种:form表单实现跳转,如果表单跳转没写method方法默认为get请求 ,跳转代码如下:
<form action="firstservlet.do" method="post">
<input type="text" name="username" />用户名
<input type="password" name="pwd" />密码
<input type="submit" value="提交">
</form>
浏览器和服务器之间的运行过程和原理
1.开启一条线程 提供浏览器和服务器之间的访问
2.浏览器和服务器之间产生连接 通过服务器地址(ip地址)端口号----
3.发送请求 request
4.服务器接收请求 对请求信息进行解析和处理
5.服务器会产生相应 response
6.服务器发送响应返回给浏览器
7.服务器和浏览器之间断开连接
8.浏览器根据服务器的响应 对页面进行渲染
转发和重定向的区别
1.转发
①转发同一个请求对象 如果请求对象中有携带参数,.forward() 会将参数一样会被
转发过去
②跳转路径上 跳转的路径是发送转发的路径信息
例如 index.jsp ---servet---first.jsp 显示路径为--servlet
显示的是servlet的路径地址
转发语句如下,其中url为是用来指出某一项信息的所在位置及存取方式,req和resp是传
递参数。
request.getRequestDispatcher("url").forward(req,resp);
2.重定向
①发送请求的时候,发送不是同一个请求 携带参数无法进行传递
② 跳转路径上 跳转的重定向的路径
index.jsp ---servet---first.jsp
显示的路径是first.jsp
response.sendRedirect("url");