JSP
JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
1. JSP技术的强势
(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
2. JSP技术的弱势
(1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2) Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
JSP九种内置对象:
request, response, out, session, application, config, pagecontext, page, exception.
一.request对象:该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交信息。
二.response对象:对客户的请求做出动态的响应,向客户端发送数据。
三.session对象
1.什么是session:session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。
从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间反复连接,反复刷新一个页面,服务器应当通过某种办法知道这是同一个客户,这就需要session对象。
2.session对象的ID:当一个客户首次访问服务器上的一个JSP页面时,JSP引擎产生一个session对象,同时分配一个String类型的ID号,JSP引擎同时将这个ID号发送到客户端,存放在Cookie中,这样session对象和客户之间就建立了一一对应的关系。当客户再访问连接该服务器的其他页面时,不再分配给客户新的session对象,直到客户关闭浏览器后,服务器端该客户的session对象才取消,并且和客户的会话对应关系消失。当客户重新打开浏览器再连接到该服务器时,服务器为该客户再创建一个新的session对象。
四.aplication对象
1.什么是application:
服务器启动后就产生了这个application对象,当客户再所访问的网站的各个页面之间浏览时,这个application对象都是同一个,直到服务器关闭。但是与session不同的是,所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。
2.application对象常用方法:
(1)public void setAttribute(String key,Object obj): 将参数Object指定的对象obj添加到application对象中,并为添加的对象指定一个索引关键字。
(2)public Object getAttribute(String key): 获取application对象中含有关键字的对象。
五.out对象
out对象是一个输出流,用来向客户端输出数据。out对象用于各种数据的输出。
六.Cookie
1.什么是Cookie:
Cookie是Web服务器保存在用户硬盘上的一段文本。Cookie允许一个Web站点在用户的电脑上保存信息并且随后再取回它。
举例来说,一个Web站点可能会为每一个访问者产生一个唯一的ID,然后以Cookie文件的形式保存在每个用户的机器上。
如果您使用IE浏览器访问Web,您会看到所有保存在您的硬盘上的Cookie。它们最常存放的地方是:c:\windows\cookies(在Window2000中则是C:\Documents and Settings\您的用户名\Cookies )
Cookie是以“关键字key=值value“的格式来保存纪录的.
2.创建一个Cookie对象,调用Cookie对象的构造函数可以创建Cookie。Cookie对象的构造函数有两个字符串参数:Cookie名字和Cookie值。
Cookie c=new Cookie(“username”,”john”);
3. JSP中如果要将封装好的Cookie对象传送到客户端,使用response的addCookie()方法。
格式:response.addCookie(c)
4.读取保存到客户端的Cookie,使用request对象的getCookies()方法,执行时将所有客户端传来的Cookie对象以数组的形式排列,如果要取出符合需要的Cookie对象,就需要循环比较数组内每个对象的关键字。
servlet
Servlet是使用Java Servlet 应用程序设计接口(API)及相关类和方法的 Java 程序。除了 Java Servlet API,Servlet 还可以使用用以扩展和添加到 API 的 Java 类软件包。Servlet 在启用 Java 的 Web 服务器上或应用服务器上运行并扩展了该服务器的能力。Java servlet对于Web服务器就好像Java applet对于Web浏览器。Servlet装入Web服务器并在Web服务器内执行,而applet装入Web浏览器并在Web浏览器内执行。Java Servlet API 定义了一个servlet 和Java使能的服务器之间的一个标准接口,这使得Servlets具有跨服务器平台的特性。
Servlet 通过创建一个框架来扩展服务器的能力,以提供在 Web 上进行请求和响应服务。当客户机发送请求至服务器时,服务器可以将请求信息发送给 Servlet,并让 Servlet 建立起服务器返回给客户机的响应。 当启动 Web 服务器或客户机第一次请求服务时,可以自动装入 Servlet。装入后, Servlet 继续运行直到其它客户机发出请求。Servlet 的功能涉及范围很广。例如,Servlet 可完成如下功能:
(1) 创建并返回一个包含基于客户请求性质的动态内容的完整的 HTML页面。
(2) 创建可嵌入到现有 HTML 页面中的一部分 HTML 页面(HTML 片段)。
(3) 与其它服务器资源(包括数据库和基于 Java 的应用程序)进行通信。
(4) 用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机上。例如,Servlet 可以是多参与者的游戏服务器。
(5) 当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至applet的新连接,并将该连接保持在打开状态。当允许客户机和服务器简单、高效地执行会话的情况下,applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准(如 IIOP)进行通信。
(6) 对特殊的处理采用 MIME 类型过滤数据,例如图像转换和服务器端包括(SSI)。
(7) 将定制的处理提供给所有服务器的标准例行程序。例如,Servlet 可以修改如何认证用户。
Servlet生命周期
装载Servlet。这项操作一般是动态执行的。然而,Server通常会提供一个管理的选项,用于在Server启动时强制装载和初始化特定的Servlet。
Server创建一个Servlet的实例
Server调用Servlet的init()方法
一个客户端的请求到达Server
Server创建一个请求对象
Server创建一个响应对象
Server激活Servlet的service()方法,传递请求和响应对象作为参数
service()方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
service()方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法
对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用init()方法。一般Servlet只初始化一次 ,当Server不再需要Servlet时(一般当Server关闭时),Server调用Servlet的Destroy()方法。
Applet
(小应用程序)
采用Java创建的基于HTML的程序。浏览器将其暂时下载到用户的硬盘上,并在Web页打开时在本地运行。
可通过因特网下载并在接收计算机上运行的一小段程序。小应用程序通常用Java语言编写并运行在浏览器软件中,applet典型用于为万维网网页页面定制或添加交互格式元素。Applet可以翻译为小应用程序,可通过因特网下载并在接收计算机上运行的一小段程序。,Java Applet就是用Java语言编写的这样的一些小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果。包含Applet的网页被称为Java-powered页,可以称其为Java支持的网页。
javaBean
JavaBean(Java豆)
JavaBean 概述
JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露称为属性。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制发现和操作这些JavaBean 属性。
EJB
EJB是sun的服务器端组件模型,最大的用处是部署分布式应用程序,类似微软的.com技术。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台。
EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。
Bean
Bean是Enterprise Java Bean的缩写,一个Bean扮演着应用程序素材的角色。她包含有一个functional interface,一个life-cycle interface,以及一个实做它所支援的商业方法的类别。
api
API(Application Programming Interface,应用程序编程接口)是一套用来控制Windows的各个部件(从桌面的外观到位一个新进程分配的内存)的外观和行为的一套预先定义的Windows函数.用户的每个动作都会引发一个或几个函数的运行以Windows告诉发生了什么.
分享到:
相关推荐
J2EE的两大核心容器是Web容器和EJB容器,它们分别管理Web组件(如JSP页面和Servlet)和EJB组件的执行。 三、J2EE核心API与组件 J2EE提供了一系列的API和协议,以支持基于Web的多层架构应用的开发,其中包括以下...
在J2EE中,Servlet作为Controller负责接收和处理请求,Bean实现Model,存储和处理业务数据,而JSP或Applet则作为View负责显示结果。选项D错误,因为Application Client并不属于MVC架构中的Model部分。 2. JSP ...
J2EE体系结构包括Web容器(运行JSP和Servlet)、EJB容器(运行Enterprise JavaBeans)以及客户端容器(如Applet容器)等。 **J2EE技术体系** J2EE技术体系基于Java 2平台,包括: 1. **J2SE**:Java标准版,为J2EE...
Java EE 高级编程考试复习资料 1. Servlet 工作原理 Servlet 运行在 Web 服务器...EJB3.0 是 Java EE 的重头戏之一,但是我们可以不使用 EJB 也能做出很好的企业级应用,例如采用 JSP+JavaBean 或者采用 JSP+Servlet。
除了EJB,JavaEE核心技术还包括CORBA、RMI、JSP、Java Servlet、JavaBean、JDBC和XML等。CORBA是一种跨平台、跨语言的分布式对象请求代理架构,通过ORB(Object Request Broker)实现对象间的通信。RMI是远程方法...
本考试文档主要涵盖了JavaWeb的基础知识,包括J2EE组件、MVC架构、JSP语法、Servlet生命周期、JavaBean、JDBC API以及Web应用的不同架构模式。下面我们将逐一详细讨论这些知识点。 1. **J2EE组件与MVC架构**: - ...
什么是JSP页面 175 JSP页面的例子 176 JSP页面的生命周期 179 转换与编译 179 异常 179 初始化及结束一个JSP页面 180 生成静态内容 181 生成动态内容 181 在JSP中使用对象 181 隐式对象 181 特定应用程序对象 181 ...
JavaEE的核心技术包括EJB、CORBA、RMI、JSP、Java Servlet、JavaBean、JDBC和XML等多个组件和服务。 EJB(Enterprise JavaBeans)是JavaEE中的服务器端组件模型,用于开发和部署分布式应用。它定义了一组用于开发...
- **企业JavaBean(EJB)**:EJB是J2EE的核心组件,分为会话Bean(Session Beans)和实体Bean(Entity Beans)。会话Bean负责短期业务逻辑,而实体Bean持久化数据。 - **Servlet和JSP**:Servlet是Java编写的...
22. J2EE的三层模型包括:表现层(JSP、Servlet)、业务逻辑层(EJB、JavaBean)和数据访问层(JDBC、ORM框架)。 23. J2EE容器负责管理组件的生命周期,包括Web容器、EJB容器、应用程序客户端容器和消息驱动bean...
J2EE的核心组件包括JSP、Servlet、EJB、JNDI、JMS、RMI等,这些组件共同构成了一个强大的开发框架,能够帮助开发者构建高性能、高可用性的企业级应用。 #### 二、J2EE模式 在J2EE开发中,有一些常见的设计模式被...
EJB可以使用Session Bean或Entity Bean来实现业务逻辑。 知识点5:系统设计 系统设计是指根据需求和功能来设计系统的架构和组件。系统设计包括以下几个方面: * 功能分析:根据需求来分析系统的功能。 * 架构设计...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...
- **JSP页面中的JavaBean组件**:JavaBean是在JSP页面中使用的可重用组件。 - **在JSP页面中自定义标签**:自定义标签可以简化JSP页面的开发。 #### 六、事务 - **事务概念**:事务是数据库操作的一个逻辑单元,...
EJB组件可以分为三种类型:会话Bean、实体Bean和消息驱动Bean。 2. **Servlet 和 JSP 组件**: Servlet用于处理客户端请求并生成动态内容,而JSP则是一种简化版的Servlet,更适用于生成动态网页。 3. **应用程序...
J2EE 1.2版本引入了重要的概念,如逻辑分层(客户端层、Web层、EJB层和数据层)、组件模型(Applet、Application、JSP、Servlet和EJB等)、服务标准化(如JMS、JNDI、JTA)以及容器概念。容器是Java EE的核心,它为...
主要包括Web容器、EJB容器和Applet容器等。 - **打包J2EE组件**:讲解了如何将不同的J2EE组件(如Web应用程序、EJB等)打包成可部署的单元。例如,Web应用程序通常被打包成WAR文件,而EJB则被打包成EAR文件。 - **...
3. **业务逻辑层**:企业级JavaBean(EJB)是此层的核心,提供了对业务逻辑的封装,包括会话bean(Session Beans)用于短暂的用户会话,实体bean(Entity Beans)代表持久化的业务对象,以及消息驱动bean(Message-...
J2EE容器,如应用服务器,提供了运行和管理EJB、Servlet、JSP等组件的环境,并提供了诸如连接池、定时器服务、工作调度等功能。 13. **部署描述符** 部署描述符(如web.xml、ejb-jar.xml)定义了应用的配置信息,...