`
灵动的水
  • 浏览: 190400 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Javaweb Servlet深入概述(二)

    博客分类:
  • java
阅读更多

Javaweb Servlet深入概述(二)

概述

Java Web应用程序中所有的请求-响应都是由Servlet来完成的,Servlet是Java Web的核心程序,所有的网址最终交给Servlet来处理 。Servlet并没有main之类的执行方法。当用户访问服务器的时候,Tomcat是通过调用Servlet的某些方法来完成整个过程的。

Servlet工作流程

浏览器提交的请求是遵循HTTP协议的文本。这段文本由服务器也就是Tomcat接收并解析,封装成了HttpServletRequest类型的request对象。所有的HTTP头数据都可以通过request相应的方法查询到。

Tomcat同时把输出流封装为HttpServletResponse类型的对象,通过设置response属性就可以控制输出的内容。然后,Tomcat把request,response作为参数,调用Servlet的相应方法,例如doPost(requrest, response),doGet(request, response)等。

Servlet中主要处理业务逻辑,例如读取数据库、权限检查、业务处理等。Java Web应用程序请求-响应典型过程如图:

QQ截图20141105141823

 

Servlet接口

Servlet是一种实现了javax.servlet.Servlet接口的类,接口规定了特定的方法来处理特定的请求。

 

web.xml

Java Web开发中,常量信息倾向于写在配置文件里面,需求变化时只修改配置文件,不用修改源程序,不用重新编译,维护起来方便

(1)初始化参数(init-param)

配置多个param-name,param-value

Servlet中提供getInitParameter(String param)获取初始化参数值,也可以通过Servlet的getServletConfig()返回ServletConfig然后再获取初始值

(2)上下文参数

Servlet调用getServletConfig().getServletContext.getInitParameter(“type”);

init-param配置在<Servlet>标签内,只能由这个Servlet读取,不是全局参数。上下文参数可以被所有Servlet读取

 

初始化参数和上下文参数只能配置简单的字符串类型参数

 

资源注入(@Resourse)、使用JNDI(Java Naming and Directory Interface)获取资源。

 

Servlet生命周期

QQ截图20141105144849

Servlet之间的跳转

1.转向

RequestDispatcher dispatcher = request.getRequestDispatcher(“/servlet/MyServlet”);

dispatcher.forword(request, response);

使用forword跳转时,地址栏显示跳转前的Servlet访问地址

在Struct、WebWork等MVC框架中,都是用Servlet处理请求,把结果通过request.setAttribute()放到request中,然后forword到JSP中显示。

2.重定向(Redirect)

response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY);

response.setHeader(“Location”, “http://www.xuetimes.com”);

现在HttpServletResponse封装了,只需调用sendRedirection(String location)就行。

3.自动刷新(Refresh)

response.setHeader(“Refresh”, “1000, URL=http://www.xuetimes.com/index”);

设置1秒后自动跳转的路径。

Servlet与线程安生

多线程并发的读写Servlet类属性会导制数据不同步,并发只读取不写入不存在问题,Servlet只读属性最好定义为final类型。

 

 

转载请注明:学时网 » Javaweb Servlet深入概述(二)

分享到:
评论

相关推荐

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    5.1 servlet与servlet容器 182 5.2 servlet容器的分类 183 5.3 servlet和其他技术的比较 183 5.4 tomcat介绍 183 5.5 tomcat的安装与配置 184 5.5.1 安装tomcat 185 5.5.2 运行tomcat 186 5.5.3 tomcat启动...

    动力节点老杜最新Javaweb教程学习文档分享

    包括现在已经在从事Java开发的工作人员,如果想深入学习JavaWEB相关源码,同样适合观看,可以让你更加深入的领会到JavaWEB底层的运行原理。 课程概述: 本套课程以项目贯穿,在做项目的过程中,发现项目的不足之处,...

    Java Web整合开发王者归来pdf part15.rar

    第1章 Java Web开发概述 2 1.1 Web相关概念 2 1.1.1 胖客户端程序RCP 2 1.1.2 瘦客户端程序TCP 2 1.1.3 B/S与C/S结构 3 1.2 Web开发背景知识 3 1.2.1 Web访问基本原理 3 1.2.2 HTTP超文本传输协议 4 1.2.3 Web浏览器...

    深入体验Java Web开发内幕

    【图书目录】 第1章 XML基础  1.1 XML技术概述  1.2 XML的基本语法  1.3 XML的约束模式  1.4 DTD  1.5 DTD的语法细节  1.6 XML Schema  1.7 名称空间  1.8 引入XML Schema...

    Java Web整合开发王者归来:Java Web.part3

    《Java Web整合开发王者归来(JSP+Servlet+Struts+Hibernate+Spring)》附1张DVD光盘,内容为《Java Web整合开发王者归来(JSP+Servlet+Struts+Hibernate+Spring)》汲及的源代码和Java Web学习视频。 《Java Web整合...

    Java Web应用详解.张丽(带详细书签).pdf

    动态网站篇深入讲解Servlet、JSP、JavaBean、JDBC数据库连接、数据库连接池等Java Web开发的核心技术。系统框架篇则是以架构设计的高度,讲解搭建网站的三大框架Struts、Hibernate、Sprin9及标签库。项目实战篇详细...

    Java Web整合开发王者归来

    《Java Web整合开发王者归来(JSP+Servlet+Struts+Hibernate+Spring)》全面介绍了Java Web开发中的各种相关技术及知识。全书分为9篇,内容层次清晰,难度循序渐进。第1篇为入门篇,内容包括Java Web开发概述等;第2篇...

    Java Web整合开发王者归来6/16

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟 踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、 资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    java web技术开发大全(最全最新)

    提供完整的应用案例,使读者可以深入体会SSH开发模式的精髓 所有开发工具和框架均使用目前的最新版本,紧跟技术发展的趋势 提供230个实例和4个综合案例,可以作为案头必备的查询手册 一线开发人员全力打造,分享技术...

    Java.Web整合开发王者归来.part3

    第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等; 第4篇为Struts框架篇,内容不仅包括Struts 1.x的内容,也包括Struts 2.x中的内容; 第5篇为Hibernate...

    Java Web整合开发王者归来(共4部分含源代码)part1

    第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为Struts框架篇,内容不仅包括Struts 1.x的内容,也包括Struts 2.x中的内容;第5篇为Hibernate框架...

    java web开发技术大全

    提供完整的应用案例,使读者可以深入体会SSH开发模式的精髓 所有开发工具和框架均使用目前的最新版本,紧跟技术发展的趋势 提供230个实例和4个综合案例,可以作为案头必备的查询手册 一线开发人员全力打造,分享...

Global site tag (gtag.js) - Google Analytics