Servlet 基础[一]
2018-03-12 19:25
113 查看
Servlet 基础[一]
servlet:1.什么是Servlet?
Servlet是运行在服务器端的Java小程序,是sun公司提供的一套规范,用
用来处理客户请求、响应给浏览器的动态资源。
Servlet是JavaWeb三大组件(Servlet、Filter[过滤器]、Listener(监听器)之一,而且是最重要的
2.servlet的作用?
用来处理从客户端发送来的请求,并对该请求做出响应。
Servlet实现的功能:
a:获取请求数据
b:处理请求
c:完成响应
3.servlet体系结构?
Servlet是使用Servlet API(应用程序设计接口)和相关类和方法的Java程序。包含
两个包,javax.servlet包和javax.servlet.http包
4.servlet实现?
I.概述:
[基于配置文件]Servlet程序需要编写实现类,并在web.xml进行配置
[基于注解方式]使用注解,无需额外编写web.xml,是3.0的特性
实现步骤:
1)创建类实现Servlet接口
2)覆盖尚未实现的方法—service方法
3)在web.xml进行servlet的配置但在实际开发中,我们不会直接去实现Servlet接口,因为那样需要覆盖的方法太多,我们一般创建类继承HttpServlet
实现步骤:
1)创建类继承HttpServlet类
2)覆盖doGet和doPost
3)在web.xml中进行servlet的配置
II.具体的实现:
分为三步:
1.创建类,继承HttpServlet,复写doGet和doPost方法
2.编写配置文件web.xml,格式如下[两部分]:
#a:注册servlet
servlet名称
servlet实现类的全限定类名,类似于com.包名.类名
#b:给注册的servlet添加映射路径
servlet名称 #必须要和上面定义的servlet名称相同
/访问路径/url-pattern> #必须要以/开头
3.浏览器中运行:
浏览器地址:localhost:8080/TestDemo/servlet_demo
#这里假设你的web工程名为TestDemo,实现Servlet的类为servlet_demo
III.servlet执行流程:
a:web.xml匹配路径—>寻找实现servlet的类名称–>寻找类所在路径–>执行
IV.Requset请求:
1.request请求参数:
get请求方式: getParameter(String name)
post请求方式:getParameterValues(String name)
getParameterMap()
2.常用方法:
String getParameter(String name):获得指定参数名对应的值,没有返回null,
如果有多个,只返回第一个
String[] getParameterValues(String name):获得指定参数名对应的所有的值,
如:hobby=打篮球&hobby=看电影
Map
public void sendRedirect(String location) throws java.io.IOException location参数可以指定重定向的URL,可以是相对或绝对路径。
举例:
reponse.sendRedirect("/chapter02/index.jsp");
b.请求转发:
同一个请求,可以在页面中传递数据,因为他们是同一个request.地址栏不会发生变化。
转发借助RequestDispatcher接口中的forward方法实现。
forward():将请求转发给其他资源
include():将其他资源并入当前请求。
语法:
RequestDispatcher dispatcher = request.getRequestDispatcher(String path); dispatcher.forward(ServletRequest request,ServletResponse response);
举例:
RequestDispatcher dispatcher = request.getRequestDispatcher("/index.jsp").forward(request,response);
路径区别:
请求转发:getRequestDispatcher(“/index.jsp”)中相对路径“/”表示当前应用根目录,而重定向方法sendRedirect(“/chapter02/index.jsp”)中相对路径“/”表示整个web站点的根目录。
c.区别:
主要区别:请求转发前后共享同一个请求对象,而重定向后会创建不同的请求对象,属于两个独立的请求和响应过程。
相关文章推荐
- 补充 精通JSP开发应用 (Eclipse 平台) 第六章 基础技术:Servlet
- Servlet 基础-response常见用法
- servlet基础
- Servlet基础_0200_LifeCycle
- servlet09-反射基础三
- Java基础——Servlet(八)文件上传下载
- Servlet基础(三) Servlet的多线程同步问题
- Servlet基础下
- Java Web开发之Servlet、JSP基础
- servlet基础
- Java(27):MVC框架基础:Servlet+Jsp+javabean(3)
- JavaWeb-08 (JavaWeb-Servlet基础&java web之request/respone)
- Java Web基础知识之Servlet(3):Session管理
- javaweb基础学习(一)<ServletConfig与ServletContext对象详解>
- servlet基础
- Servlet - 基础
- 【WEB基础】③jsp和servlet基础
- Java基础:Servlet之HelloWorld
- 【Java学习-J.160601.0.20】Servlet 基础二
- servlet (1) 基础