### JavaEE复习题知识点解析 #### 一、单项选择题 **1. JSP页面经过编译之后,将创建一个(B)。** - **选项解释:** - A、session:表示用户会话,用于存储特定用户的属性信息,不是由JSP页面编译创建的。 - B、servlet:正确答案。JSP页面本质上是一种动态网页技术,它在服务器端运行,并最终编译成Servlet来处理客户端请求。 - C、application:通常指应用程序范围内的共享数据或配置信息,不是由单个JSP页面编译而成。 - D、cookie:一种客户端存储技术,用于保存用户信息,与JSP页面编译无关。 **知识点总结:** - JSP (Java Server Pages) 是一种基于Java的动态网页技术标准,它可以嵌入到HTML文件中。当JSP页面第一次被访问时,Web容器会将其转换为一个Servlet类,然后编译并执行这个Servlet类以响应客户端请求。 --- **2. 在J2EE中,test.jsp文件中有如下一行代码:(选择一项)** ```jsp <jsp:useBean id="user" scope="_____" type="com.UserBean" /> ``` - **问题描述:**要使user对象一直存在于对话中,直至其终止或被删除为止,下划线中应填入什么? - **答案解析:** - A、page:作用域最小,仅限于当前页面有效。 - B、request:作用域次之,仅限于当前HTTP请求过程有效。 - C、session:正确答案。Session作用域表示对象将一直存在于用户会话中,直到会话结束或被显式销毁。 - D、application:全局作用域,对象在整个应用范围内有效,直到应用关闭。 **知识点总结:** - `jsp:useBean` 标签用于在JSP页面中创建JavaBean实例。其中`scope`属性定义了该Bean的生命周期和可见范围。 - `scope`属性有四个可能的值:page、request、session 和 application。 - `page`:对象只在当前页面有效。 - `request`:对象在当前HTTP请求中有效。 - `session`:对象在用户的整个会话期间有效。 - `application`:对象在整个应用程序范围内有效。 --- **3. 给定一个Servlet的代码片段如下:** ```java public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ___________________ out.println("hikitty!"); out.close(); } ``` - **问题描述:**运行Servlet时输出如下:“hikitty!”。则应在此Servlet下划线处填充代码是什么? - **答案解析:** - A、PrintWriter out = response.getWriter(); 正确答案。`response.getWriter()`返回一个`PrintWriter`对象,可以用来向客户端输出文本数据。 - B、PrintWriter out = requset.getWriter(); 错误,没有requset这个关键字。 - C、PrintWriter in = response.getWriter(); 错误,应该是输出流,而不是输入流。 - D、PrintWriter in = request.getWriter(); 错误,同C选项。 **知识点总结:** - 在Servlet中,`HttpServletRequest`和`HttpServletResponse`接口分别代表客户端的请求和服务器对客户端的响应。 - 使用`HttpServletResponse.getWriter()`获取`PrintWriter`对象,通过此对象可以向客户端输出文本数据。 --- **4. 给定java程序User.java,代码如下:** ```java package user; public class User { private String password; private String loginName; public String getLoginName() { return loginName; } public String getPassword() { return password; } public void setLoginName(String loginName) { this.loginName = loginName; } public void setPassword(String password) { this.password = password; } } ``` - **问题描述:**给定user.jsp,代码片段如下: ```jsp _____________________ <jsp:setProperty name="user" property="*"/> loginName: <jsp:getProperty name="user" property="loginName"/> password: <jsp:getProperty name="user" property="password"/> ``` - **答案解析:** - A、<jsp:useBean id="user" class="user.User" scope="page"/> 正确答案。使用`jsp:useBean`标签创建了一个名为"user"的User对象,其作用域设置为"page"。 - B、<jsp:useBean id="user" class="User" scope="page"/> 错误,缺少包名。 - C、<jsp:useBean id="user" scope="page"/> 错误,缺少类名。 - D、不需要填写。错误,必须使用`jsp:useBean`标签创建JavaBean实例。 **知识点总结:** - `jsp:useBean`标签用于创建JavaBean实例,`class`属性指定JavaBean的完整类名,包括包名。 - `jsp:setProperty`标签用于设置JavaBean的属性值,`*`表示设置所有可写属性。 - `jsp:getProperty`标签用于获取JavaBean的属性值。 --- **5. 给顶一个JSP程序源代码,如下:** ```jsp <jsp:include page="two.jsp" flush="true"> <jsp:param name="location" value="bejing"/> </jsp:include> ``` - **问题描述:**在two.jsp中可以输出参数location值的代码片段是什么? - **答案解析:** - D、<%=request.getParameter("location")%> 正确答案。`request.getParameter`方法用于获取HTTP请求中的参数值。 **知识点总结:** - `jsp:include`标签用于在JSP页面中包含另一个JSP页面的内容。`flush`属性决定是否立即刷新缓冲区。 - `jsp:param`标签用于传递参数到被包含的页面。这些参数可以通过`request.getParameter`方法在被包含的页面中获取。 --- **6. 在inc.jsp中包含数行代码与一张图片,现在要创建一个home.jsp,每次浏览home.jsp时都能够以最快的速度显示inc.jsp中的所有内容以及home.jsp自身要显示的内容,应该在home.jsp中使用的语句是()**。 - **答案解析:** - A、<%@include page="inc.jsp"%> 正确答案。使用`<%@ include %>`指令可以在运行时将一个JSP页面的内容包含到另一个JSP页面中。 - B、<%@include file="home.jsp"%> 错误,自指包含自身没有意义。 - C、<%@include file="inc" 错误,缺少结束引号和结束符号。 **知识点总结:** - `<%@ include %>`指令用于静态地包含一个文件的内容。这种方式比`<jsp:include>`更高效,因为包含文件的内容在编译阶段就被合并到主文件中,避免了运行时的额外请求处理。
剩余7页未读,继续阅读
- xiaoluo52382014-01-05总体还行,不过我发现一个答案错了哦,小问题啦。选择题大部分是jsp中的内容,struct内容相对比较少。
- linhuixiang2022015-06-05好,很好,非常好!
- lanlingfeiniao2013-04-22不错,挺有用的
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助