JavaWeb总结
type
status
date
slug
summary
tags
category
icon
password
name
考前一天看
题型:
一、单项选择题(本题共20小题;每小题1.5分,共30分)
二、判断题:对的打“√”,错的打“×”(本题共10小题,每小题1分,共10分)
三、程序阅读+简答题(本题6小题,每小题5分,共30分 )
四、编写程序(共2小题15空,每空2分,共30分 )
📝 选择题知识点
- 在Page指令中,属性import是可以在页面中重复的属性。
- JSP的结构由指令、注释、脚本元素组成。
- 在JSP中,import不是一个指令,但是它是一个指令的属性,例如在 page 指令中可以使用。
- 在Java中,byte、short、int、long、float、double、char、string是基本数据类型,interface、class、array、string、collection、enum、各种包装类为引用类型。
- ?:是一个条件运算符,它具有3个操作数,也叫三元运算符,~是一个位运算符,它只有一个操作数,表示按位取反。
- if语句是一种条件语句,用于根据特定条件执行不同的代码段。
- 类中的成员默认的访问修饰符是private。
- 包含Servlet发回到客户端信息的ServletResponse对象是由Web服务器的Servlet容器创建的。
- getServerInfo()不是request对象的方法,它是ServletContext对象的方法。
- page对象是当前页面的一个实例,它可以获取当前页的信息并调用页面方法、用于定义JSP的全局属性。Page指令可以在页面中多次使用,它可以定义如导入包、设置页面编码等属性。
- jsp:include是用来包含其他页面的内容,与JavaBean的使用无关。
- jsp:setProperty操作中不存在scope属性,它的主要属性包括name, property和param。
- doService不是HTTPServlet类的方法,HTTPServlet类主要的方法有doGet, doPost, doDelete, doPut等。
- BaseServlet不属于javax.servlet和javax.servlet.http包中提供的类或接口,这些包主要包含Servlet,GenericServlet和HTTPServlet等。
- WEB-INF/class不是标准的web动态网站的目录结构中的一部分,其主要包括WEB-INF、WEB-INF/web.xml以及WEB-INF/lib。
- JavaBean不是JDK的开发包,它是Java中可重用的软件组件。
- JSP自动加载的基本类不包括java.lang.*。主要的基本类有java.io.*, javax.servlet.*, javax.servlet.jsp*。
- 预定义<%!预定义%>的声明中的变量将作为全局变量,而不是局部变量。
- 在客户端浏览器的源代码中可以看到HTML注释,但是看不到JSP注释和Java注释。
- 在JSP文件中,一个页面可以有多个<%@ page %>指令,这些指令可以在页面的任何地方出现,不仅仅在开头。
- 在JSP中,<%--与--%> 和 <!--与--> 是JSP的注释方式。
- js属于静态资源,它不是动态资源。
- 在Tomcat安装目录中,conf文件夹中存放的是Tomcat相关的配置文件。
- 当用户请求jsp页面时,JSP引擎会执行页面的字节码文件以响应用户的请求。执行字节码文件的结果是发送一个HTML页面到客户端。
- 在HTML中,<frameset rows="20%,50%,*">的方式可以用于设置frame框架的窗口大小。
- Tomcat安装目录中的webapps文件夹的作用是存放发布的web项目。这意味着,当你创建一个web应用并希望它能在Tomcat服务器上运行时,你需要将其放在webapps文件夹内。
- javax.servlet.tagext.JspTag接口的两个子接口是SimpleTag和Tag。
- 在开发自定义标记程序的过程中,第一步是开发标记处理类。这个处理类定义了标记的行为和输出。
- 万维网的三个核心标准是HTML、HTTP、URL。这三个组成了Web的基本架构,其中HTML用于创建网页,HTTP是传输协议,URL则是网址的标准格式。
- <tag>元素不包含<info>属性。<tag>元素常用的属性有<name>、<tag-class>和<body-content>。
- Servlet程序的入口点是init()方法。当Servlet容器加载Servlet时,它会调用Servlet的init()方法。
- Cookie.setMaxAge(6060)的作用是将Cookie的保存时间设置为一个小时。在这里,6060是以秒为单位的。
- MVC是一种软件设计模式,通过将应用程序分为模型、视图和控制器三层来提高应用程序的可重用性、可维护性和可扩展性。MVC模式的优势包括:使应用程序的结构更加清晰,增强代码的稳定性;对项目开发而言,有利于在项目小组内按照小组成员各自的擅长进行分工,有利于三个部分并行开发、加快项目进度;模块功能的划分有利于在代码修改过程中进行模块的隔离。
- 在JSP中,HTML注释在发布网页时是看不到的,但在源文件中能看到。HTML注释用于给代码添加说明和备注,但它们不会在浏览器中显示。EL表达式的语法是${JSP expression}。这种表达式可以用于简化页面中的脚本代码,并提供对各种作用域对象的访问。
- pageContext的范围是page。在JSP中,pageContext是一个内置对象,它的生命周期仅限于当前的JSP页面。
- 在JSP中,有四个内置对象,它们的作用域从小到大依次是:pageContext、request、session、application。其中,application的作用域最大,它代表整个Web应用,并且在应用的生命周期。
- 不能在Java派生类中被覆盖的方法是final方法。
📝 判断题知识点
- JSP (Java Server Pages)实际上是一种动态网页技术,而不是静态网页制作技术。它允许开发者将Java代码嵌入到HTML页面中,从而实现动态内容生成。
- 不同的Web浏览器可能会有不同的解释和渲染方式,因此同一个HTML文件在不同的浏览器中显示的结果可能会有所不同。
- Tomcat是一种Web应用服务器,它既可以作为Web服务器使用,也可以作为JSP和Servlet的容器使用。
- 从Servlet 3.0开始,Servlet支持使用注解来配置Servlet,这使得配置变得更加简洁和方便。
- 继承HttpServlet并重写其doGet或doPost方法是创建Servlet的一种常用方式。
- ServletConfig是一个接口,它封装了Servlet的初始化参数信息。每一个Servlet都有一个对应的ServletConfig对象。
- 过滤器(Filter)对象的生命周期开始于容器加载它的那一刻,结束于容器卸载它的那一刻。也就是说,过滤器随Web服务器的启动而创建,随Web服务器的关闭而销毁。
- 如果
setMaxAge()
方法中的值为负值,它会告知浏览器此cookie立即过期,因此浏览器会立即删除这个cookie。当setMaxAge
设置为负数时,cookie不会存储在磁盘上,而只会存在于浏览器内存中,当用户关闭浏览器后,cookie将被删除。
response.setHeader("refresh","2")
这个设置会让浏览器每2秒钟刷新一次页面。这是HTML的meta标签提供的一个简单的定时刷新机制,它可以让网页在给定的时间间隔后自动刷新。
clearBuffer()
方法确实用于清除响应对象的缓冲区,但它并不会导致数据写入客户端。此方法用于在发送数据之前取消发送的数据,但如果数据已经部分或全部写入客户端,那么该方法将无法起作用。
- Out对象的clearBuffer()方法用来清除缓冲区里的数据,并将缓冲区中尚未提交的响应部分发送到客户端。因此,使用clearBuffer()方法可以丢弃缓冲区中的部分响应内容,并且确保客户端接收到已缓冲的部分响应内容,而且不会发送除缓冲区外的其他响应。
response.sendRedirect(URL)
方法可以将客户端的请求重定向到另一个URL。当服务器向客户端发送带有这种重定向的响应时,客户端将发起一个新的请求,请求新的URL。
- JSP内置对象是不需要声明就可以直接在JSP页面中使用的一些对象。它们被预定义在JSP页面中,可以直接使用,包括request、response、session、application等。
- 在Filter中实现统一全站编码时,对于请求方式POST和GET解决乱码问题的方式是不同的。POST请求编码可通过request对象的setCharacterEncoding方法设置,而GET请求需要在服务器配置文件中设置URIEncoding属性。
- 在web.xml文件中,<dispatcher>元素的取值共有四个,分别是:REQUEST,INCLUDE,FORWARD,ERROR,一个<listener>元素中只能出现一个<listener-class>子元素。每个<listener-class>元素对应一个监听器类。
- 在Filter的生命周期内,doFilter方法可以被多次调用,每次请求都会调用doFilter方法。
- 实现ServletRequestAttributeListener接口的监听器类可以用于监听ServletRequest对象中的属性变更,可以监视request对象的生命周期中属性的添加,移除以及属性值的替换等事件。
- FilterConfig对象不可以通过手动调用它的构造方法进行实例化。它由服务器自动创建并传递给Filter的init方法。
- Servlet事件监听器可分为三类:属性监听器,生命周期监听器,和会话绑定监听器。
- JSTL标签库由5个不同功能的标签库共同组成,分别是Core标签库,Format标签库,SQL标签库,XML标签库和函数标签库。
- JSTL标签库中的Core标签库的URI是http://java.sun.com/jsp/jstl/core,该URI用于在JSP页面上引入Core标签库。
- JSTL的英文全称是JavaServer Pages Standard Tag Library,它是由Java社区制定的一套自定义标签库标准。
📝 简答题知识点
1、请简述JSP的执行过程
一个JSP页面的执行过程可以分为以下几个步骤:
(1)浏览器客户端向JSP引擎发出对JSP页面的请求
(2)JSP引擎将对应JSP页面转换成Java Servlet源代码
(3)JSP引擎编译Java Servlet源代码,生成.class文件
(4)JSP引擎加载运行对应的.class文件,生成响应的结果页面
(5)JSP引擎把响应的输出结果发送到浏览器客户端
2、简述jsp:include动作与include指令的区别
include指令的作用是在JSP页面出现该指令的位置处,静态插入一个文件,即JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。因此,插入文件后,必须保证新合并成的JSP页面符合JSP语法规则,即能够成为一个JSP页面文件。jsp:include动作则是动态加载一个文件,不把JSP页面中动作指令include所指定的文件与原JSP页面合并一个新的JSP页面,而是告诉Java解释器,这个文件在JSP运行时才被处理。如果包含的文件是普通的文本文件,就将文件的内容发送到客户端,由客户端负责显示;如果包含的文件是JSP文件,JSP引擎就执行这个文件,然后将执行的结果发送到客户端,并由客户端负责显示这些结果。
3、JSP有哪些内置对象?作用分别是什么?
request:用户端请求,此请求会包含来自get/post请求的参数
response:网页传回用户端的回应
pageContext:当前JSP页面的上下文信息
session:与请求有关的会话信息
application:服务器servlet上下文信息
out:用来传送回应的输出
config:表示JSP页面的servlet配置信息以及Web应用配置描述文件
page:JSP页面本身
exception:处理异常信息
4、简述Servlet和JSP的关系
JSP是以另外一种方式实现的Servlet, Servlet是JSP的早期版本,在JSP中,更加注重页面的表现,而在Servlet中则更注重业务逻辑的实现。因此,当编写的页面显示效果比较复杂时,首选是JSP,或者在开发过程中,HTML代码经常发生变化,而Java代码则相对比较固定时,可以选择JSP。而在处理业务逻辑时,首选则是Servlet。同时,JSP只能处理浏览器的请求,而Servlet则可以处理一个客户端的应用程序请求。因此,Servlet加强了Web服务器的功能。
5、简述JSP中的作用域的分类
(1)页作用域,只允许在所建的JSP页面中访问
(2)请求作用域,在相应的请求的生命周期内有效,就是说对象在创建它的页面内有效,以及请求被转发或被包含的页面内有效
(3)会话作用域,范围比请求作用域大,参与会话的所有页面都可以访问
(4)应用程序作用域,在Web应用程序活动期间,应用程序对象在应用的整个生命周期内都是有效的,特定的应用程序组件都可以访问这些对象
6、请简述Servlet的基本运行流程。
(1) 客户端(一般是Web浏览器)通过HTTP协议向Web服务器发送请求
(2)Web服务器接收该请求并将其发给Servlet。如果Servlet尚末被加载,Web服务器将把它加载到Java虚拟机并且执行它
(3) Servlet接收该HTTP请求并执行相应的处理
(4) Servlet向Web服务器返回应答
(5) Web服务器将从Servlet收到的应答发送给客户端
7、简述JavaBean具有哪些特征?
(1) JavaBean类必须有一个没有参数的构造函数
(2) JavaBean内的属性都应定义为私有的
(3) 属性值通过getXxx和setXxx来操作
8、请写出7个JSP的动作并写出其作用?
jsp:param被用来以“名-值”对的形式为其他标记提供附加信息
jsp:include用于在当前页面中包含静态或动态的资源
jsp:forward用于将请求转发到另一个JSP、Servlet或者静态资源文件
jsp:useBean用来在JSP页面中创建一个JavaBean实例并指定他的名字以及作用范围
jsp:setProperty用于设定JavaBean的属性值
jsp:getProperty用于获取JavaBean中的属性值
jsp:plugin用于在生成的HTML页面中包含对象,如(Applet或JavaBean)
📝 编程题知识点
Loading...