2023年11月28日发(作者:)
1-2 JSP中可重复使用的组件有哪些?
JavaBean/JSP标准标签/自定义标签
1—3 什么是JSP的预编译特征?
答:JSP页面在被服务器执行前,都是已经被编译好的,并且通常只进行一次编译,即在JSP
页面被第一次请求时进行编译,在后续的请求中如果JSP页面没有被修改过,服务器只需要
直接调用这些已经被编译好的代码,这大大提高了访问速度。
1—8 开发JSP程序可采用哪几种开发模式?分别介绍他们的优缺点。
答:第一种:单纯的JSP页面编程
优点是容易实现;缺点是程序结构混乱,维护不便.
第二种:JSP+JavaBean编程
优点是结构比较清晰;缺点是将流程控制放到JSP中,JSP不能单纯作为显示功能
第三种:JSP+JavaBean+Servlet编程
优点是层次关系明显、组件分工明确;缺点是对开发人员能力要求较高,不适合JSP初学
者.
2—2 什么是成员变量和局部变量?他们的区别是什么
答:成员变量是在类体中变量定义部分所声明的变量;
局部变量是在方法体重声明的变量和方法的参数
两者的区别在于有效范围不同,成员变量在整个
类内都有效,而局部变量只在定义他的成员方法
内才有效。
2-3 如何创建、使用并销毁对象?
答:创建对象的方法:
类名 对象名;
对象名 = new 构造方法名([参数列表]);
或者:
类名 对象名 = new 构造方法名([参数列表]);
使用对象的方法:可以通过对象来引用其成员变量,并改变成员变量的值,而且还可以通过
对象来调用其成员方法。通过使用运算符“.”实现对成员变量的访问和成员方法的调用。
销毁对象的操作由Java提供的垃圾回收机制自动完成 .不需要手工完成销毁对象操
作。或者调用对象的finalize()方法。
3-1 JSP页面由哪些元素组成?
〈!—— JSP中的指令标识 -->
〈%@ page language=”java" contentType=”text/html; charset=gb2312”%〉
<%@ page import="java。” %>
〈!-- HTML标记语言 ——〉
〉 〈head>〈title>JSP页面的基本构成〈/head> 〈center> 〈% String today=new Date().toLocaleString(); %> <!-- JSP表达式 --> 今天是:〈%=today%> —— HTML标记语言 ——〉 〈/center〉 〉 〈/html〉 3-2 JSP中主要包含哪几种指令标识?它们的作用及语法格式是什么? page 定义一个JSP页面的全局属性. include 在JSP中包含引用其他的资源。 定以在JSP页面中使用到客户化标签库 taglib 及引用标识。 tag 用于声明客户化tag的属性. variable 用于声明一个EL的tag标记变量. attribute 用于在tag file中声明一个tag的属性。 page指令定义在整个JSP页面范围内有效的属性。 <%@ page contentType="text/html;charset=gbk" %〉 include指令用于在当前的JSP页面中使用该指令的位置嵌入其他的文件,如果被包含的文 件中有可执行的代码,则显示代码执行后的结果. <%@ include file="文件的绝对路径或相对路径" %〉 通过使用taglib指令,开发者就可以在页面中使用标准标签或自定义标签来完成特殊的功 能. <%@ taglib {uri="URI" | tagdir="/WEB-INF/tags[/subdir]+"} prefix="tagPrefix" %〉 <%@taglib prefix="mytagf” tagdir="/WEB—INF/tags”%> JSP语法总结 Html 指令 page: <%@page import=......%> include: <%@include file=......%> taglib: <%@taglib uri=......%> 声明:<%! ......%> 表达式:<%= ......%> 脚本程序:<% ......%> HTML注释: 带有JSP表达式的注释: 隐藏注释: <%-- --%> 脚本程序中的注释: //、/* */、/** */ include: forward: useBean: setProperty: getProperty: plugin: fallback: 脚本 JSP构成 注释 动作 3—6 有几种方法可实现在页面中来包含文件?如何实现?它们有什么区别? include动作标识与include指令之间的差异。 差异1:属性不同 include指令——通过file属性指定被包含的页面,将file值看作一个实际存在的文 件的路径,不支持任何表达式。 include动作—-通过page属性指定被包含的页面,该属性支持JSP表达式。 差异2.处理方式不同 include指令——被包含的文件的内容原封不动地插入到主页面中,JSP编译器对这个 合成的文件进行翻译。在一个JSP页面包含另外一个JSP页面,最终编译后的class文 件只有一个。 include动作——主页面将请求转发到被包含的页面,并将执行结果输出到浏览器中, 然后返回主页面继续执行后面的代码.JSP编译器会分别对这两个文件进行编译。 差异3.包含方式不同 include指令——静态包含。被包含的文件发生改变,整个主页面文件就会重新被编译, 最终服务器执行的是将两个文件合成后由JSP编译器编译成的一个class文件。 include动作——动态包含。服务器执行的是两个文件,被包含文件的改动后不会对主 页面文件重新编译,而只需重新编译被包含的文件。当include动作标识被执行时,使 用该识包含的目标文件才会被编译,否则被包含的文件不会被编译。 差异4.对被包含文件的约定不同 使用include指令包含文件时,对被包含文件有约定。主文件和包含文件的page 指令不应重复. 4—1 JSP提供的内置对象有哪些?作用分别是什么? 说 内置对象名称 所 属 类 型 有效范围 明 request t。rvletRequest request 请求 response javax。servlet。http。HttpServletResponse page 响应 session 。HttpSession session 会话 应用程 application tContext application 序 out 。JspWriter page 输出 页面上 pageContext javax。ntext page 下文 config javax。servlet。ServletConfig page 配置 page t。pPage page 页面 exception 。Throwable page 异常 4-5 如果用户长时间不操作session对象,用户的session对象会消失吗? 为了弥补HTTP协议的“无状态”的这一缺点,JSP提供了一个session对象, 这样服务器和客户端之间的连接就会一直保持下去,在一定时间内(系统默认在30分 钟内),如果客户端不向服务器发出应答请求,session对象就会自动消失。 在编写程序 时,可以修改这个时间限定值,使session对象在特定时间内保存信息。 4-6 用户关闭浏览器后,用户的session会立即消失吗? 从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器 结束,被称为一个会话。 可以利用此特性来保存每个用户信息,当一个客户登录一个网站时,系统将为用 户生成一个独一无二的会话对象,用以记录该用户的个人信息,一旦该用户退出网站, 该会话对象将会被注销。 4—8 session对象与application对象的区别有哪些? session对象和用户会话相关,不同用户的session是完全不同的对象; application对象都是相同的一个对象,即共享这个内置的application对象. 一、填空 (共10分,每空1分) 2. 在Tomcat服务器中部署Web应用程序时,可以直接将Web程序归档文件WAR存放到 tomcat服务的_ webapps _目录中。 3。 在Servlet中用来接收客户表单数据的两个常用方法为__get __、__post____。 4。 在一个应用程序中不同的页面共享数据时,最好的JSP内置对象为__application /session __。 5。 假设有一个JavaScript函数为 show() ,如果要求在页面加载时就执行,最好使用 〉标记的__event/onload _什么事件。 6. 在删除数据时要求用户确认是否真的删除数据,如果使用JavaScript实现,应用使用 ___onclick/confirm __对话框。 7。 JDBC中___DriverManager/Connection _接口用于连接数据库。 8。 Resulset接口的__next()/request _方法可以使结果集指针指向下行数据。 9. 如果要获取请求客户端的IP地址,应使用______象. 二、单选选择 (60分,每题1.5分) 1.在JSP中如果要导入 .* 包,应该使用__A__指令. A. page B。 taglib C。 include D。 forward 2.如果当前JSP页面出现异常时需要转到一个异常页,需要设置page 指令的__D__属性 A。 Exception B. isErrorPage C。 error D. errorPage 3.在MVC模式中,核心内容为 ___C___。 A. view B. control C. model D。 不确证 4.在javaScrpt中window对象的___C___方法用于打开一个新窗口. A。 openWindow() B. window() C。 open() D. close() 5.在javaScrpt中window对象的___D____方法用于关闭当前窗口。 A. open() B。 confirm() C。 alert() D。 close() 6.。File对象的_____B__方法可以新建一个文件。 A。 delete() B。 createFile() C。 mkdir() D. createNewFile() 7.在JSP应用程序中要求删除所有photo目录中的的文件,但是保留文件夹,下列代码中 空缺位置最适合的选项为______A_____________。 String path=request。getRealPath("photo”); File fp1=new File(path); File[] files=les(); for(int i=0;i〈;i++) { if(__________________________) { files[i]。delete(); } } A. files[i]。isFile() B。 files[i].isDirectory() C. !files[i]。isFile() D。 ! files [i].isDirectory() 8.sesson对象的_______D___方法用于判断是否为开始新会话. A。 begin() B。 isNewSessionID() C。 invalidate() D。 isNew() 9.创建JSP应用程序时,配置文件应该在程序下的__C__目录中。 A。 admin B. servlet C。 WEB-INF D。 WebRoot 10.下列不属于URL的组件部分为____________D___________。 A. 协议 B. IP地址或域名 C.目录或文件 D. 服务器名称 11.下列表单〈form>〈input type="submit” value="提交">〉,如果单击提交按钮时,表 单____________C____________. A。 没有指定action属性,所以不做提交 B。 使用post方式提交 C. 提交到当前页 D. 不确定 12.组件〈input name=”imageField" type="image" src=”/”〉表示_____A_______. A。 图形按钮 B。 图形显示标记 C. 上传图片 D. 下载图片 13.JSP中的隐式注释为_______C____________。 A. // 注释内容 B. 〈!—注释内容-—> C。 〈%--注释内容--%〉 D。 /* 注释内容 */ 14.下列__A______指令定义在JSP编译时包含所需要的资源。 A。 include B。 page C. taglib D. forward 15.如果编写一个计数器程序,用来记载当前网站的访问量,最好采用JSP中的__B_对象. A。 page B. session C。 request D。 application 16.下列可以正确获取当前Web程序物理路径的方法为_____A__________。 A。lPath(“/”) B。request。getFile(“/”) C。 lPath(“/”) D。 e(“/”) 17.Http的中文含义为_____C_______________________。 A。 统一资源定位器 B。 简单邮件传输协议 C. 超文本传输协议 D。 网络套接字 18.下列____C_____接口专用于访问数据库的中存储过程。 leStatement B。 PreparedStatement C。 ProcedureStatement D. Statement 19.如果想在tomcat服务器启动时将jar包加载到内存,且该jar包可以被tomcat服务器上 所有的应用使用,应该将该jar包复制到tomcat的________D_____________目录。 A。 common B. server C. commonlib D。 serverlib 20.Tomcat服务器的默认端口为________C______________。 A。 8888 B。 8001 C. 8080 D. 80 21.在html标记中,________C____________标记用于设置当前页面的标题. A. head B. name C. title D。 html 22.如果在网页上显示一幅图片,下面哪句代码是正确的_____A________________. A. B.。gif” lowsrc=”pre_"〉 C.〉 D.。gif”> 23.下面____________A________项链接是在新的浏览视窗中打开网页. B。 〈a href=“http://” target=”_top”〉链接到网易〉 C。 〈a href=“www。” target="_parant”>链接到网易〉 D. ://www.163。com” target="_self"〉链接到网易〉 (此项为默认值 ) 24.设在表单中有一组复选钮标记,如下列代码: 〈form action=”"> 请选择喜欢的城市: 〈input type=”checkbox" name="city” value=”长春”〉长春 〈br〉 〈input type="checkbox” name=”city” value=”北京”>北京 〈br> 〈input type=”checkbox" name=”city” value="大连”>大连 〈input type=”checkbox" name=”city” value="上海”>上海 〈br> 〈/form> 如果在是取city的值,最适合的方法为___________C__________。 A. String city= request。getParameter(“city”); B。 String []cities=request。getParameter(“city”); C。 String []cities=ameterValues(“city"); D. String city=ribute(“city”); 25.在html中绘制表格时,___________C________标记是表格中的换行标记. A. C。 26.在HTML文件中导入一个样式表的正确语法为_______A______________。 A. 〈link href="css/” rel=”stylesheet” type="text/css”〉 B。 〈input href="css/" rel=”stylesheet" type="text/css"> C。 〈import href="css/css1。css" rel="stylesheet" type=”text/css"> D. 〈link src="css/css1。css” rel=”stylesheet” type="text/css”〉 27. 使用JavaScript语言中Document的_______A________方法可以在页面上输出字符。 A. () B。 () C. () D. () 28.下列____A/B____实现单击超级链接是弹出确认对话框,询问用户是否真的删除。 A. 〈a href="?bid=1" onClick="return confirm('你真的要删除吗?');”>删除 A. 〈a href=”removebook。jsp?bid=1" onClick=”alert(’你真的要删除吗?');”>删除〈/a> A。 〈a href=”removebook。jsp?bid=1" onClick=”return alert('你真的要删除吗?’);”>删除〉
〉 B.
〉 D. 〈td〉
