`
008590a
  • 浏览: 15157 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

JSP,Servlet的一些整理

阅读更多
了解JSP和Servlet必须先要了解一些常识:
1.什么是web:web就是网络,是由n台服务器和客户端组成的计算机网络,有了这个网络我们就可以实现各个计算机之间的通信。


2.什么事web服务器:在web网络中一些计算机承当着主管的作用,很多信息都存放到一个或者多个电脑中,如果
    其他计算机想要这些信息,就需要到主管这儿请示,主管再回复它们,这个主管就相当于一个web服务器。
    它分为硬件服务器,和软件服务器。


3.web服务器有什么作用:、】
       1. 负责各个计算机的通信 Socket
       2. 线程,处理并发,多个计算机(多用户)与服务器通信的能力 Socket
       3. 特定的协议
       发现问题:如果自己架设个Web Server是不容易实现,需要做大量的工作,设计制作Web Server是由系统程序员使用c/c++开发的



1.jsp的优点和缺点:
   1.jsp不需要写配置文件。
   2.一次编译到处运行,因为jsp是基于java语言的,所以它具有java其跨平台的特性。
   3.执行效率非常高。因为jsp第一次被调用的时候被编译成servlet文件,再转换成.class文件,放入内存中,
   如果再有客户访问,jsp将不再编译,而是直接运行已经编译好的class文件,所以效率高。
   4.系统的多平台支持,几乎可以在所有平台任意环境进行开发,
   5.程序的兼容性和伸缩性很强,因为jsp里面的动态内容可以各种形式进行显示。一个jar文件就可以运行jsp。
   6.jsp允许自定义标签,使开发更加方便。


   缺点:
   1.为了实现jsp跨平台,和可伸缩能力,所以同时也增加了产品的复杂性。
   2.java的运行速度是通过.class常驻内存来完成的。所以使用的人越多,那么耗得内存就越大,速度就越慢。
   同时它也需要硬盘空间来存储java和class文件。
   3.调试困难,程序出现错误,因为它先编译成servler文件运行的,所以是返回相对应的servlet错误行数。不容易确定行数。
   4.在jsp页面数据传输难免出出现java代码,


1.1由此应该联想到自定义标签:
    作用:主要是取代jsp页面的一些java脚本,因为jsp页面出现java脚本,就使得代码难以阅读,且维护成本高,
    最重要的是不利于于美工人员合作,因为美工看不懂java代码的。
    好处:界面和程序代码分开做,
    步骤:
        1.首先新建一个java类,并实现simpleTagSupport,重写它的doTag方法,在这个方法里面写一些功能。
        2.新建一个tld文件,进行配置:比如说一些url,short-name,等等
        3.在jsp页面通过taglib执行指定url进行导入。


1.2 JSP的生命周期
    1) 每一个JSP都会对应有一个servlet生成
    2) 在 %tomcat%/work/Catalina/localhost/工程名/org/apache/jsp 目录下可找到对应生成的 Servlet 文件
    3) 一般而言,每一个JSP对应的servlet都有如下的生命周期方法:



2.Servlet定义:它是一个用遵循Servlet规范编写的java类,在服务端运行是由服务器负责调用的,。


3.Servlet的分类:1.标准的Servlet,2.过滤Servlet, 3.监听Servlet。
                 1.标准的Servlet一般HttpServlet,
                 2.监听Servlet可以实现HttpSessionListener,HttpSessionAttributeListener或者request*,application*
                 3.过滤Servlet继承 FilterServler


4.过滤Servlet的作用:
                 1.主要过滤掉大量的非法文字。
                 2.判断用户是否登录。
                 3.统一编码


5.Servlet的工作模式:
                 客户端发送请求到服务器,服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容传给服务器,服务器将
                 响应返回给客户端。
5.1Servlet的原理:
                 当web服务器启动的时候,它会去加载我们在web.xml文件配置的Servlet,并且把它的配置信息读取到服务器里面
                 web服务器拿到配置的ServletClass通过反射机制生成Servlet的对象,
                            把它放在内存中,当用户发送一个请求的时候,如果这是第一个请求那么它调用init方法,
                初始化Servlet,
                也可以通过配置<load-on-startup>指定加载的时候初始化顺序。
                并根据请求的url找到相映射的Servlet,交给它的service方法进行处理,
                在service方法里面,判断是get,post方式提交,并处理,最后生成响应通过服务器返回给客户。



6.Servlet的生命周期:
                 1.加载 2.初始化 3.执行 4.销毁


6.1详解Servlet的生命周期:
                1.加载:当web容器启动的时候,就会去加载web.xml里面配置的内容,所以也会加载我们在web.xml配置的Servlet,
                2.初始化:默认是在第一次发送请求的时候,才进行初始化,但是也可以通过<start-load-up>这个节点来
                配置,使在加载的时候就初始化,但是这个节点也可以是指定加载的顺序。不过它的初始化只会初始化一次。
                3.执行:就是客户端发送请求,Servelt执行service方法。
                4.销毁:当关闭web服务器的时候,它就自动销毁了。


7.Servlet的优点和缺点:
                 1.最大的优点就是Servlet可以处理客户端发送过来的http请求,并返回一个响应。
                 2.Servlet是一个java类,所以可以跨平台。
                 3.性能强,效率快 因为Servlet一旦启动就常住内存中,以后就继续运行于后台,等待请求,
                 每一个请求不是进程而是线程,所以性能,和效率很快。
                 4.Servlet功能强大,能调用所有java的api。


        缺点:
                 1.不适合于编写页面。编写静态页面需要部署后才能看到效果,很难控制页面外观。



8.jsp于Servlet的关系:
                1.jsp本质上是Servlet的扩展,本质上就是Servlet的简易方式,jsp编译之后也就是一个Servlet文件。
                2.jsp侧重于页面编写,Servlet侧重于逻辑控制。
                3.JSP往纯标签方向发展,Servlet往纯代码方向发展,他们以Servlet内核(请求响应式的工作方式)往两个方向发展。



9.jsp页面的静态包含和动态包含的区别:
                1.静态包含不可以带参数,动态包含能带参数,因为动态包含是动作,可以在开始标签和结束标签之间设置参数。
                2.静态包含是同一编译的,它们是变量共享的,动态包含是两者独立的,直到输出时才合并。
                3.动态包含时刻检查文件的变化,当文件发生改变的时候,会立即发生变化,静态包含不时刻检查文件的变化。


10.jsp服务器有几种跳转?区别是什么?


                1.三种,response,forword, getRequestDispatcher;
                区别:1.response可以跳转到任意资源,而forward只能跳转到本地服务器资源。这可以看出
                forward效率比response高。
                2.forward跳转后浏览器地址栏不发生改变,response地址栏是跳转后的地址。
                3.response跳转页面后属性值丢失,forward不丢失。
                ps:forward跳转于getRequestDispatcher一样。


11.jsp为什么第一次运行会比较慢?
            1.因为jsp在第一次运行的时候,就把jsp编译成servlet文件,再把这个servlet文件编译成.class文件,
            因为jvm只认识class文件,再把class放在内存中,而再次运行的时候,会直接执行内存中的class,不需要进行
            转换。所以以后速度会非常的快。


12.JSP内置对象
            Request(Javax.servlet.ServletRequest)它包含了有关浏览器请求的信息.通过该对
            象可以获得请求中的头信息、Cookie和请求参数。


            Response(Javax.servlet.ServletResponse)作为JSP页面处理结果返回给用户   
            的响应存储在该对象中。并提供了设置响应内容、响应头以及重定向的方法(如cookies,头信息等)


            Out(Javax.servlet.jsp.JspWriter)用于将内容写入JSP页面实例的输出流中,提供了   
            几个方法使你能用于向浏览器回送输出结果。


            pageContext(Javax.servlet.jsp.PageContext)描述了当前JSP页面的运行环境。
            可以返回JSP页面的其他隐式对象及其属性的访问,另外,它还实现将控制权从当    前页面传输至其他页面的方法。


            Session(javax.servlet.http.HttpSession)会话对象存储有关此会话的信息,也可以   
            将属性赋给一个会话,每个属性都有名称和值。会话对象主要用于存储和检索属性值。


            Application(javax.servle.ServletContext)存储了运行JSP页面的servlet以及在同   
            一应用程序中的任何Web组件的上下文信息。


            Page(Java.lang.Object)表示当前JSP页面的servlet实例


            Config(javax.servlet.ServletConfig)该对象用于存取servlet实例的初始化参数。


            Exception(Javax.lang.Throwable)在某个页面抛出异常时,将转发至JSP错误页面,提   
            供此对象是为了在JSP中处理错误。只有在错误页面中才可使用<%@page isErrorPage=“true”%>              


























分享到:
评论

相关推荐

    jsp&servlet电子书

    总之,《jsp&servlet电子书》是学习JSP和Servlet的理想教材,无论你是初学者还是有一定基础的开发者,都能从中获益匪浅。通过阅读这本书,你将能够熟练地运用这两种技术构建高效的Web应用程序,解决实际开发中的各种...

    Tomcat开发JSP和Servlet需要注意的问题.doc

    在使用Tomcat开发JSP和Servlet时,需要注意一些关键点以确保程序的正确运行和优化。以下是根据提供的文件内容整理的一些重要问题和解决方案: 1. **创建Tomcat项目**: - 在Eclipse等集成开发环境中,需要创建一个...

    jsp常用方法整理,包括servlet等

    ### JSP常用方法整理:深入理解与应用 JSP(JavaServer Pages)是Sun Microsystems公司推出的服务器端技术,用于创建动态网页。它结合了HTML、XML标记语言与Java编程语言的功能,使得在Web应用程序中嵌入Java代码...

    毕业设计大作业基于的JavaBean+Servlet+jsp的网上购物系统毕业设计源码.zip

    毕业设计大作业基于的JavaBean+Servlet+jsp的网上购物系统毕业设计源码.zip 该系统是对我们原有JAVA大作业进行的扩展,应用到持久化管理、模版管理和视图管理等一些模式。 需求规定 a. 系统功能:采购图书 b.系统性能...

    Java学习笔记CCS AJAX DMS JSP servlet JavaScript等中文笔记整理.rar

    JSP笔记可能讲解了JSP基本语法、EL(Expression Language)、JSTL(JSP Standard Tag Library)、以及Servlet生命周期和转发与重定向等概念。 Servlet是Java Web开发中的一种服务器端组件,用于扩展服务器的功能。...

    jsp+bootstrap+servlet问答类网站.

    【标题】:“jsp+bootstrap+servlet问答类网站”是一个基于Java技术栈的在线问答平台的实现,主要利用了JSP(JavaServer Pages)、Bootstrap前端框架和Servlet技术。这个项目可能是一个学习示例或者是一个简单的社区...

    JSP与XML与Servlet帮助

    - "[Jsp]JSP语法(中华电脑书库 整理制作).chm" 是一本关于JSP语法的中文教程,涵盖了JSP的基本语法、内置对象、动作指令等内容。 - "创建HttpServlet的方法.txt" 提供了创建和配置HttpServlet的步骤和示例,有助于...

    Servlet JSP Spring MVC初学指南(alin书签).pdf

    在"Servlet JSP Spring MVC初学指南(alin书签).pdf"这本书中,你可能会找到这些知识点的详细讲解,通过整理目录书签,可以更好地理解和掌握这些内容,快速上手Java Web开发。在实际学习过程中,结合实践项目和相关...

    jsp+servlet实现网上购物

    - **创建订单**:用户确认购物车后,Servlet将购物车内的商品整理成订单信息,可能包括商品ID、数量、总价等,然后持久化到数据库。 - **支付接口**:集成第三方支付平台的API,如支付宝、微信支付,处理支付请求...

    jsp+servlet+javabean新闻发布系统计算机毕业设计源码

    统名称:jsp+servlet+javabean新闻发布系统 大家好,这是我搜集整理好并且测试通过的的一个新闻发布系统,有程序,设计详细文档和ppt演示,我现在把程序共享给大家,有需要完整文档的朋友请再联系我!! 系统角色:...

    学报管理系统(jsp+servlet+javabean)

    《学报管理系统:基于jsp+servlet+javabean的实现》 在信息技术高速发展的今天,学术交流日益频繁,各类学报的管理需求也随之增加。学报管理系统作为一个重要的工具,能够有效地整理、存储和检索学报信息,提高工作...

    JSP+JavaBean+Servlet实现分页

    文章整理: www.diybl.com 文章来源: 网络 去论坛 建我的blog 今天给同学用JSP+JavaBean+Servlet做了个分页。用的是MySQL+Tomcat+MyEclispe环境。

    jspjspjspjspjspjspjspjspjsp

    尽管原文存在一些难以理解的部分,但通过整理和解析,可以提炼出以下关键知识点: ### JSP(JavaServer Pages)简介 JSP是由Sun Microsystems开发的一种基于Java的动态网页技术标准。JSP页面本质上是Servlet的扩展...

    JSP和servlet学习笔记

    在本文中,我们将深入探讨Java服务器端开发中的关键概念,主要包括JSP(JavaServer Pages)和Servlet,以及相关的编程技巧和工具使用。首先,我们来看一下MyEclipse这个常用的Java开发环境中的快捷键: 1. 内容提示...

    servlet-api中文文档

    在这个压缩包中,包含的是对Servlet API的中文文档,可能是作者因为无法找到官方的源码和javadoc而自行整理的笔记。 首先,我们来看看servlet的概念。Servlet是一个Java类,它扩展了服务器的功能,可以处理来自...

    JSP/Servlet 中的汉字编码问题

    网上就 JSP/Servlet 中 DBCS 字符编码问题有许多优秀的文章和讨论,本文对它们作一些整理,并结合 IBM WebSphere Application Server 3.5(WAS)的解决方法作一些说明,希望它不是多余的。内容: 问题的起源 ??????...

    网络流量分析系统(jsp+servlet+ajax)

    - 数据处理:servlet对采集到的数据进行清洗、整理,可能包括计算平均值、峰值、流量趋势等。 - 数据存储:将处理后的数据存储在数据库中,如MySQL或NoSQL数据库,以便后续查询和分析。 - 前端展示:jsp页面中嵌入...

    jsp考试面试常见考点整理

    当JSP页面首次被请求时,JSP容器会将JSP转换成一个Servlet,并编译这个Servlet。 - **视图与控制分离**:JSP主要用于展示数据,而Servlet则负责处理业务逻辑。这种分工有助于实现MVC(Model-View-Controller)架构模式...

    jsp+servlet

    ### jsp+servlet博客管理系统的知识点解析 #### 一、博客的基本概念与特点 1. **博客的概念**: - 博客(Blog 或 Weblog)源自“Web Log(网络日志)”的缩写,是一种简易的个人信息发布方式。 - 任何人都能轻松...

Global site tag (gtag.js) - Google Analytics