当前位置:文档之家› javaee考试复习资料

javaee考试复习资料

第一章

一、什么是JA V A EE?

1、JAVA EE是一个标准中间件体系结构

2、JAVA EE是企业分布式应用开发标准。

二、JAVA EE编程思想和技术框架:什么是组件,什么是容器,JAVA EE有组件(三类重要组件和容器,其分布如何)

JAVA EE编程思想:组件——容器

JAVA EE应用的基本软件单元是JAVA EE组件。

组件的运行环境被称为容器。

JAVA EE组件:

1、客户端组件:JAVA EE客户端既可以是一个web浏览器、一个Applet,也可以是一个应用程序。

2、web组件:web组件是在JAVA EE web容器上运行的软件程序。它的功能是在HTTP协议以上对web请求进行响应,这些响应动态的生成网页。JAVA EE web组件包括Servlet和JSP。

3、EJB组件:用于实现特定的应用逻辑。EJB分为两种:会话EJB 和实体EJB,会话EJB向客户提供一定的服务。而实体EJB则代表数据对象,通常代表的是数据表记录集的一行,一个实体EJB可以同时与多个客户进行交互。

三、简述JAVA EE体系所含的主要技术

1、组件技术

2、服务技术

3、通信技术

四、Java EE应用有哪些优点?

1、独立于硬件配置和操作系统2.坚持面向对象的设计原则3.灵活

性、可移植性和互操作性4.轻松的企业信息系统集成

第三章

一、什么是servlet,与Applet有什么区别

定义:一种独立于操作系统平台和网络传输协议的服务器端的Java 应用程序,它用来扩展服务器的功能,可以生成动态的Web页面

相似之处:(1)它们不是独立的应用程序,没有main()方法。(2)它们不是由用户调用,而是由另外一个应用程序(容器)调用。(3)它们都有一个生存周期,包含init()和destroy()方法。不同之处:(1)Applet运行在客户端,具有丰富的图形界面。(2)Servlet运行在服务器端,没有图形界面。

二、servlet的工作原理(参与WEB.xml中的,标签,另外注意多个请求的处理)

工作原理:Servlet运行在Web服务器上的Web容器里。Web容器负责管理Servlet。它装入并初始化Servlet,管理Servlet的多个实例,并充当请求调度器,将客户端的请求传递到Servlet,并将Servlet的响应返回给客户端。Web容器在Servlet的使用期限结束时终结该Servlet。服务器关闭时,Web容器会从内存中卸载和除去Servlet。

多个请求的处理:服务器会根据Servlet实例对象为每个请求创建

一个处理线程。每个线程都可以访问Servlet装入时的初始化变量。每个线程处理它自己的请求。服务器将不同的响应发送回相应的客户端。

三、编写servlet程序的步骤(p21-22);浏览器中输入的地址如何(p27,web.xml文件中各节点的含义p28)doGet(),doPost()的声明中必须包含抛出servletException和IoException这两个异常,Http请求7种方式 p32,get与post方式的区别

步骤:

1、创建一个扩展了javax.servlet.http.HttpServlet接口的Servlet类。

2、重写doGet()或doPost()方法实现对HTTP请求信息的动态响应。

各节点的含义:

结点用来指明Servlet逻辑名称与java实现类之间的对应关系;用来指明Servlet逻辑名称与URL请求地址之间的对应关系;节点指明请求web应用程序时默认显示的欢迎页面。

Http请求7种方式:GET、POST、HEAD、OPTIONS、PUT、DELETE、TRACE

get与post方式的区别:

当使用Post方法时,数据由标准的输入设备读

入。

当使用Get方法时,数据由CGI变量QUERY_STRING传递给表单数据处理程序,即附加在请求地址的后面,在浏览器的地址栏中可以看到。

用户只要简单的调用HttpServletRequest的getParameter()方法,给出变量名称即可取得该变量的值。

四、表单提交程序的编码(form的两个属性,如何获取提交的值,参数的值的输出),关于汉字乱码解决的方法p30-32,要求会动手编程

response.setContentType(“text/html;charset=GB2312”) request.setCharacterEncoding(“gb2312”)

五、发送非HTML文档(p37,resset.C ontnetType(“”))

pdf文件:res.setContentType(“application/pdf”)

word文件:res.setContentType(“application/msword”)

excel文档:res.setContentType(“application/vnd.ms-excel”)

六、/cookie及其使用方法(p43-47,生成cookie的对象,设置cookie参数)(maxage的含义),写入和读取cookie,要去会动手编程

Cookie是一小块可以嵌入到HTTP请求和响应中的数据。Web服务器将Cookie值嵌入到响应的首部,而浏览器则在其以后的请求中都将携带同样的Cookie。Cookie由浏览器保存在客户端,通常为一个文本文件。

七、cookie回话跟踪,URL重写回话跟踪以及HttpSession回话跟踪的方法,关闭回话的三种方式

URL重写通过在URL地址后面增加一个包含会话信息的字符串来记录会话信息。URL地址与会话信息的字符串间用“?”隔开,如果有多个参数,参数间用“&”隔开。

HttpSession接口允许 Servlet查看和管理关于会话的信息,确保信息持续跨越多个用户连接等。HttpSession高级接口实际上是建立在 Cookie和 URL重写这两种会话跟踪技术之上的,只不过由Servlet自动实现了关于会话跟踪的一切,不再需要程序员了解具体细节。

八、Fitter必须实现的接口的三个方法(p67,一个Filter必须实现javax.servlet.Filter接口)

(1)init(FilterConfig)初始化方法,一般用来获取在web.xml文件中指定的初始化参数。

(2)doFilter(ServletRequest, ServletResponse, FilterChain)实现过滤功能,该方法就是对每个请求及响应增加的额外处理。FilterChain对象提供了后续Filter所要调用的信息。

(3)destroy()用于Filter销毁前,完成某些资源的回收。

九、Filter如何与具体的请求URL模式关联起来(参写web.xml中的<filter-mapping>标签,p67-71)

<filter-mapping>结点指明Filter与URL之间的对应关系。

第四章

一、什么是JSP,它与servlet的关系

JSP是一种实现普通静态HTML和动态HTML混合编码的技术。JSP最终会被转换成标准的Servlet。

二、JSP页面的基本组成,HTML代码脚本元素、指令和动作。要求会变形程序,写一个JSP程序经常要用到的框架

<%@page.contenType="text/html:charsel=GB2312">//或者分行来写p122

<html>

<body>

.......

......

</body>

脚本元素、指令和动作

脚本元素用来嵌入java代码,这些java代码将成为转换得到的Servlet的一部分;JSP指令用来从整体上控制Servlet的结构;动作用来引入现有的组件来控制web容器的行为。

三、表达式的语法格式(p86),要求编写过程中会使用

<%=表达式%>输出表达式的结果。表达式中的变量必须是前面已声明过的变量。

注意:%与=之间不能有空格且表达式后面不需要分号。

四、两中注释的区别及各自的语法格式,要求编写过程中会使用

1、输出到客户端的注释

2、不输出到客户端的注释<%- -comment- -%>

五、变量、方法及类的声明(变量的声明可以放在引用之后),要求编写过程中会使用

<%!声明; [声明; ] ... %>

六、指令:page指令和include指令的语法格式及各个指令的含义,要求编程中会使用

JSP的指令格式为:

<%@指令名属性="属性值"%>

page指令用来定义整个JSP页面的全局属性。

合法的page属性有:

import、contentType、isThreadSafe、session、buffer、autoflush、extends、info、errorPage、isErrorPage和language等。

include指令向JSP页面内某处嵌入一个文件。这个文件可以

是HTML文件、JSP文件或其他文本文件。

格式:

<%@ include file="相对位置" %> "

七、include动作的语法格式及其与include指令的

区别(可参考课件)

include动作组件:把指定文件插入正在生成的页面。

其语法如下:< jsp:include page=“文件名”flush=“true”/>。区别:

include动作组件和include指令元素有很大的不同。include动作组件在执行时才对包含的文件进行处理,因此JSP页面和它所包含的文件在逻辑上和语法上是独立的,如果对包含的文件进行了修改,那么运行时可以看到所包含文件修改后的结果。而静态的include指令包含的文件如果发生变化,必须重新将JSP页面转译成java文件,否则只能看到所包含的修改前的文件内容。

八、forward动作的语法格式及其与response对象sendRedirect方法之间的区别

forward动作组件:用于将浏览器显示的网页,导向至另一个HTML 网页或JSP网页,客户端看到的地址是A页面的地址,而实际内容却是B页面的内容。

语法如下:

区别:response.sendRedirect()是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用response.sendRedirect()时,浏览器的地址栏上可以看到地址的变化。而< jsp:include page=“url”/>则不同,它是直接在服务器端执行重定位的,从浏览器的地址不变可以看出。

九、param动作的使用,结合include动作或forward在不同页面间传递参数。要求会编程

组件:用于传递参数信息,必须配合或< jsp:forward>动作组件一起使用。

语法如下:< jsp:paramname=参数名称,value=值/>

当该组件与一起使用时,可以将param组件中的值传递到include动作组件要加载的文件中去。

十、JSP的九种内置对象及其作用范围(p103-123,page,request,session,application)

Request、Reponse、Out、Session、Application、Config、Pagecontext、Page、exception

作用范围:

(1)page。page范围内的对象仅在JSP页面范围内有效。

超出JSP页面范围,则对象无法获取。

(2)request。客户向服务器发起的请求称为request(请求)。由于采用

response.sendRedirect()等重定位计数,客户端发起的

request请求可以跨越若干个页面。因此定义为request

范围的JSP内置对象可以在request范围内的若干个页面

内有效。

(3)session。客户端与服务器的交互过程,称为session (会话)。在客户端与服务器的交互过程中,可以发起

多次请求,一个session可以包含若干个request。定义

为session范围的JSP内置对象可以跨越若干个request

范围有效。

(4)application。部署在服务器上的Web应用程序与所有客户端的的交互过程,称为application。一个application可以包含若干个session。定义为application范围的JSP内置对象可以跨越若干个session范围有效。

十一、内置对象request,response,session,application,out的常用方法,response对象sendRedice

request常用方法:getParametergetParameter、

getParameterNamesgetParameterNames和getParameterValues

response常用方法:

session常用方法:getId getValue getValueNames putValue等。

application常用方法:getMimeType getRealPath

等。

out常用方法:pirnt、println、clear、clearBuffer、flush、getBufferSize、getRemaining

十二、EL表达式的基本语法格式,会计算简单的EL表达式值${expr}

$为输出符号,expr为有效表达式

第五章

一、什么是JavaBean,其设计规则如何(p127-128)

JavaBean是用Java语言描述的软件组件模型,实际上是一个类。这些类遵循一个接口格式,以便于构造和应用。JavaBean组件可移植、可重用、可组装到应用程序中。

符合下面的设计规则任何Java类都是一个JavaBean:

(1)对于数据类型“protype”的每个可读属性,Bean必须有下面签名的一个方法:

public proptypegetProperty() { }

(2)对于数据类型“protype”的每个可写属性,Bean必须有下面

签名的一个方法:public setProperty(proptypex) { }

(3)定义一个不带任何参数的构造函数。

二、在JSP页面中JavaBean有关的三个标记的语法格式及其使用方法

操作:

class=类名称type=类的种类class=“类名

称”type=“beanTypeBean的类型…… beanType=“”””

……>

value="propertyValue"/>

第六章

一、什么是自定义标记(p139)

JSP自定义标记是对 JSP标准动作标记的一种扩展。通过自定义标记,将一些重复性的、与特定应用相关的业务逻辑以文档化标记的形式进行调用,维护JSP以文档为中心的开发方式,最大程度地降低JSP页面的代码含量,提高JSP页面可维护性

自定义标记的表示和分类(p140)

表示:1、标记名称2、属性3、体内容

分类:1、处理体内容的标记。2、简单标记

三、自定义标记库的组成(p143)

1、标记处理器

2、标记库描述符(TLD文件)

四、开发一个自定义标记库的步骤(p143)

1、编写标记处理器。

2、编写自定义标记库的描述文件TLD

3、编写应用标记的JSP页面。

五、在JSP页面中引入自定义标记的方式(p146)

<%@taglib uri=" " prefix="" %>

第七章

一、JSTL的基本组成,其中各库的基本功能

1、core标记库:核心功能实现,包括变量管理,迭代和条件判断等

2、SQL标记库:操作数据库

3、XML标记库:操XML

4、I18N标记库:国际化,数据格式显示

5、Fn标记库:常用函数库,包括String操作,集合类型操作等。

二、core标记库有哪几种标记,各类标记的作用如何(重点)

1、通用标记:实现信息显示、变量管理、异常处理等。

2、流程控制标记:实现分支处理、迭代等基本流程控制。

3、URL标记:实现URL重定位、格式化等

三、通用标记(流程控制标记,URL标记)具体包含那几个标记,其语法格式如何,参数的意义,使用方法

1、通用标记包含四个标记:

标记负责把变量或表达式的计算结果输出到JSPWriter,其功能与调用out.println()基本一致。可以包含标记体内容,也可以不包含。当不包含体内容时,语法格式如下。

(1)不带标记体

其中属性default的值为当变量var不存在时,标记缺省显示的内容。

(2)含体内容

这里是BODY,可以是任何合法的jsp或者是html代码。

标记用于在某个范围(page,request,session或application)里面设置特定的变量,或者设置某个已经存在的Javabean的属性。其功能类似于<%request.setAttribute(“name”,value)%>。

可以含有标记体内容,也可以不包含标记体内容。当不包含标记体内容时,语法如下:

其中属性var为设置的变量的名称,value为变量的值,scope为可选属性,表示设置变量的范围,缺省为page。

当标记包含体内容时,语法如下:

Body content

由于包含体内容时,将采用体内容作为变量的初始值,因此,此时标记不能带有属性value。

的作用是删除某个变量。类似于<%session.removeAttribute(“name”)%>,它的语法格式为:

其中属性var为要删除的变量的名称

的作用是捕捉嵌套在它内部的标记和脚本所抛出的异常。类似于<%try{ }catch{ }%>,它的语法格式为:

nested actions

其中可选属性var用来保存捕捉到的异常信息。

流程控制标记:分支处理:

循环处理:

实现条件判断,有两种形式:

(1)无标记体的格式如下:

var用来保存条件判断的结果,scope设置它的范围。

(2)含标记体的格式

body内容

只有在属性test为true时,标记体内容才会被输出到页面。

标记一般和

一起使用实现多路分支。其功能相当于java中的switch(i){ case 0:…..case n:……default:……}

的形式如下:

body内容()

注意:body部分只能由以下内容:空格;0个或多个子标记,且必须在之前出现;0个或多个子标记。

标记代表选择一个分支,格式如下:

body内容

用来浏览一字符串中所有的成员,其成员由分割符决定。形式如下:

delims="delimiters" [var="varName">]

[varStatus="varStatusName" ]

[begin=“begin”] [end=“end”][step=“step”]>

body内容

items指定要处理的字符串对象,elims为分割符,var指定当前项的变量,varStatusName表示当前循环状态,begin是开始条件,end是结束条件,step是循环步长,默认为1。

是最常用的标记,功能同java的for循环。它有两种形式。

(1)遍历集合对象

[var="varName">]

[varStatus="varStatusName" ]

[begin=“begin”] [end=“end”][step=“step”]>

body内容

(2)固定次数的循环

[var="varName">]

[varStatus="varStatusName" ]

begin=“begin” end=“end” [step=“step”]>

body内容

其中begin和end是必选属性。

URL标记:JSTL包含三个URL操作有关的标记,分别是:

另外还有一个辅助标记

用来导入一个URL资源,相当于JSP的

标记体使用可以把属性值传给被导入的页面。其格式如下:

可选的

中添加请求的属性。

当标记不含体内容时,属性的值使用value属性指定,格式如下:

当标记含体内容时,属性的值body指定,格式如下:

属性值

用来把客户的请求转发到另一个资源,相当于JSP的<%request.sendRedirect(“other.jsp”)%>

不包含体的格式如下:

包含体的格式如下:

subtags

用于构造URL,主要的用途是URL重写。

不包含体的格式如下:

包含体的格式如下:

subtags

javaee期末复习题

javaee期末复习题 JavaEE期末复习题 JavaEE是一种用于开发企业级应用程序的Java平台。它提供了一套完整的工具和技术,用于构建和管理大型、复杂的分布式应用程序。在学习JavaEE的过程中,我们需要掌握一系列的知识和技能,以便能够熟练地开发和维护JavaEE应用程序。下面是一些常见的JavaEE期末复习题,希望对大家复习和巩固知识有所帮助。 1. 什么是JavaEE?它与JavaSE有何不同? JavaEE是Java Platform, Enterprise Edition的缩写,是一种用于开发企业级应用程序的Java平台。与JavaSE相比,JavaEE提供了更多的功能和工具,用于构建和管理大型、复杂的分布式应用程序。JavaSE主要用于开发桌面应用程序和小型的服务器端应用程序,而JavaEE则更适用于开发大型、复杂的企业应用程序。 2. 请简要描述JavaEE的体系结构。 JavaEE的体系结构由四个层次组成:客户端层、Web层、业务逻辑层和数据访问层。 客户端层是与用户直接交互的界面,可以是Web浏览器、移动设备或者桌面应用程序。 Web层包括Web服务器和Web容器,用于处理客户端的请求和响应。它负责处理用户的HTTP请求,并将请求转发到业务逻辑层进行处理。 业务逻辑层是应用程序的核心,负责处理业务逻辑和数据处理。它包括各种组件,如Servlet、EJB和消息驱动Bean等。

数据访问层用于与数据库进行交互,负责处理数据的持久化和访问。它包括各种技术和框架,如JPA和JDBC等。 3. 什么是Servlet?它的生命周期是怎样的? Servlet是JavaEE中的一种组件,用于处理Web请求和响应。它可以接收来自客户端的HTTP请求,并生成相应的HTTP响应。 Servlet的生命周期包括以下几个阶段: 初始化阶段:当Servlet容器启动时,会创建Servlet实例并调用其init()方法进行初始化。在这个阶段,可以进行一些必要的初始化操作,如加载配置文件、建立数据库连接等。 请求处理阶段:当有HTTP请求到达时,Servlet容器会创建一个新的线程来处理该请求。在这个阶段,Servlet会调用其service()方法来处理请求,并生成相应的HTTP响应。 销毁阶段:当Servlet容器关闭时,会调用Servlet的destroy()方法来销毁Servlet实例。在这个阶段,可以进行一些清理工作,如关闭数据库连接、释放资源等。 4. 什么是JSP?它与Servlet有何不同? JSP(JavaServer Pages)是一种用于开发动态Web页面的技术。它允许在HTML页面中嵌入Java代码,以实现动态内容的生成和展示。 与Servlet相比,JSP更加方便和易于使用。在JSP中,可以直接在HTML页面中嵌入Java代码,而无需编写大量的Java代码。这使得JSP在开发动态Web 页面时更加灵活和高效。 另外,JSP还提供了一些内置的标签库和表达式语言,用于简化页面的开发和

JavaEE考试题

一、填空题 1.企业级应用程序通常应具备快速适应性、分布式、高安全性、 可扩展性和集成化等特性。P(6) 2.两层体系结构由客户层和服务器层构成,即所谓的C/S 模式。 P(7) 3.三层体系结构通常包括客户层、服务器层和应用服务器层三 个层次。P(7) 4.典型Java EE 应用包括:客户层、表示层(Web层)、业务逻 辑层和企业信息系统层四个层次。P(8) 5.Java EE技术框架大致包括组件技术、服务技术和通信技术三 个部分。P(11) 6.Java EE组件主要包括客户端组件、Web组件和EJB组件三大 类。P(10) 7.按打包粒度从小至大的顺序,Java归档包的类型分别是JAR 、WAR 和 EAR 。(PPT) 8.程序错误可分为语法错、语义错和逻辑错三类。P(20) 9.JSP指令元素主要包括include 、page 和taglib 三个。P(34) 10.include指令的基本语法为<%@ include file=”URL” %> 。P(34) 11.taglib指令的基本语法为<%@ taglib uri=”taglibURI” prefix=”pre” %> 。P(35) 12.JSP参数标记的基本语法为 P(39) 13.读取request单值参数的方法是getParameter() ,读取多值参数的方 法是getParameterValues()。获取所有参数名称的方法是getParameterNames() 。P(44) 14.request作用范围变量可以通过setAttribute() 和getAttribute() 方法设置和读取变量的数据。P(45) 15.调用response 对象的addCookie(Cookie cookie) 方法可将一个 Cookie对象传回客户端保存。P(48) 16.调用request 对象的getCookies() 方法可以读取保存在客户端的 所有Cookie对象。P(48) 17.在web.xml文件中定义Web应用初始化参数的标记是 和子标记。(源

javaEE试题

单选40分20题2 多选15分5题 3 填空10分10个空1 简答题15分3题5 应用题20分2题10 struts2 1.struts2的请求默认后缀名称是(C) A .do B .jsp C .action D.xml 2.struts2动态方法调用的格式为(D) A ActionName_methodName.do B ActionName!methodName.do C ActionName_methodName.action D ActionName!methodName.action 3.当确认一个类为struts2框架的一个Action处理类时,应(A) A 继承ActionSupport B 实现ActionSupport C 继承Action D 实现Action 4.struts2默认的处理结果类型是(A) A dispatcher B redirect C chain D 以上都不对 5.struts2自定义类型转换器必须实现的接口是(C) A Convert B TypeConverter C StrutsTypeConverter D StrutsConvert 6.struts2核心功能是由(B)实现 A 过滤器 B 拦截器 C 类型转换器 D 配置文件 7.struts2中,不属于Action接口中定义的字符串常量的是(B ) A SUCCESS B FAILURE C INPUT D ERROR

8.struts2控制器需要在(A)配置文件中进行配置 A web.xml B struts.xml C application.properties D webwork.xml 9.下列不属于struts2标签的是(D) A B C D