《Java Web程序设计》课程第1、2章章节检测
一、选择题:(每题4分,共40分)
1、Servlet必须在什么环境下运行?( D )
A. 操作系统
B. Java虚拟机
C. Web容器
D. Web服务器
2、下面那个不是服务器页面技术?( C )
A. JSP
B. ASP
C. PHP
D. JavaScript
3、要使想服务器发送的数据不在浏览器的地址栏中显示,应该使用什么方法?( A )
A. POST
B. GET
C. PUT
D. HEAD
4、考虑下面的HTML页面代码:请求,当用户在显示的超链接上单击时将调用HelloServlet的哪个方法?( B )
A. doPost()
B. doGet()
C. doForm()
D. doHref()
5、将一个Student类的对象student用名称studobj存储到请求作用域中,下面代码哪个是正确的?( C )
A. request.setAttribute(“student”,studobj)
B. request.addAttribute(“student”,studobj)
C. request.setAttribute(“studobj”,student) C. request.getAttribute(“studobj”,student)
6、如果需要向浏览器发送一个GIF文件,何时调用response.getOutputStream()?( B )
A. 在调用response.setContentType(“image/gif”)之前
B. 在调用response.setContentType(“image/gif”)之后
C. 在调用response.setDataType(“image/gif”)之前
D. 在调用response.setDataType(“image/gif”)之后
7、若需要向浏览器发送Microsoft Word文档,应使用下面哪条语句创建out对象?( D )
A. PrintWrite out=response.getServletOutput();
B. PrintWrite out=response.getWrite();
C. OutputStream out=response.getWriter();
D. OutputStream out=response.getOutputStream();
8、有名为helloweb的Web应用程序,根目录下的WEB-INF文件夹里有哪些内容?(ABC)
A. classes目录
B. lib目录
C. web.xml
D. Server.xml
9、对于名为helloweb的Web应用程序,
A. http://localhost:8080/helloweb/helloServlet/hello/abc.jsp
B. http://localhost:8080/helloweb/abc.jsp
C. http://localhost:8080/helloweb/helloServlet/abc.jsp
D. http://localhost:8080/helloweb/hello/abc.jsp
10、想要正确显示中文,下面那一个可以在Servlet的类hello.java中设置?( C )
A. request.setContentType(“text/html;charset=gb2312”);
B. reponse.setContentType(“text/html;charset=gb2312”);
C. request.setContentType(“charset=gb2312”);
D. reponse.setContentType(“charset=gb2312”);
二、简答题:(每题20分,共60分)
1、Servlet属于Java类吗?为什么?它与Applet有什么区别?
答:属于java类
原因:java的类定义
修饰符class classname extends superclassname{}这里,修饰符指public、private等。
classname和superclassname是合法的标识符。extends用来表明classname是superclassname派生的子类。如果是没有派生类,可以省略extends
servlet类
public class ServletDemoFirst extends HttpServlet { }
从结构上来说,符合java的类定义。所以是一个java类。
与Applet的区别:
Applet具有很好的图形界面(AWT),与浏览器一起,在客户端运行。Servlet 则没有图形界面,运行在服务器端。
2、请简要说说Servlet的生命周期,并给出状态转换图。
答:Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁。
3、Servelt中有重定向和请求转发,请说明一下HttpServletResponse.sendRedirect( )方法、RequestDispatcher的formard( )方法和include( )方法中哪些属于重定向,哪些属于请求转发?有何区别?
答:重定向的方式有:HttpServletResponse的sendRedirect()方法,RequestDispatcher的forward()方法。RequestDispatcher的include()方法属于请求转发。
区别:HttpServletResponse.sendRedirect()方法将响应定向到参数location指定的、新的URL。location可以是一个绝对的URL,如response.sendRedirect("https://www.wendangku.net/doc/7e15421004.html,")也可以使用相对的URL。如果location以“/”开头,则容器认为相对于当前Web应用的根,否则,容器将解析为相对于当前请求的URL。这种重定向的方法,将导致客户端浏览器的请求URL跳转。从浏览器中的地址栏中可以看到新的URL地址,作用类似于上面设置HTTP响应头信息的实现。
RequestDispatcher.forward()方法将当前的request和response重定向到该RequestDispacher 指定的资源。这在实际项目中大量使用,因为完成一个业务操作往往需要跨越多个步骤,每一步骤完成相应的处理后,转向到下一个步骤。比如,通常业务处理在Servlet中处理,处理的结果转向到一个JSP页面进行显示。这样看起来类似于Servlet链的功能,但是还有一些区别。一个RequestDispatcher对象可以把请求发送到任意一个服务器资源,而不仅仅是另外一个Servlet。include()方法将把Request Dispatcher资源的输出包含到当前输出中。
4、实现一登录页面login.jsp,用户名为自己的姓名,如对“张三”,其用户名为“zhangsan”,密码统一为“123”。当登录成功,跳转到index.jsp;否则跳转到error.jsp。请补充完整其Servlet 代码。
login.jsp
LoginServlet.java
package com.demo;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;
@WebServlet(name="LoginServlet",urlPatterns={"/login.do"})
public class LoginServlet extends HttpServlet {
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("username ");
String pwd = request.getParameter("password");
if(name!=null&&name.equals("zhangsan")&&pwd!=null&&pwd.equals("123")){ session.setAttribute("u",name);//设置session记录用户名
response.sendRedirect("index.jsp");
}
Else{
response.sendRedirect("error.jsp");
}
}
}
第1章WEB开发环境 (1)下列关于WEB开发说法正确的是。 ABCD A)Web是图形化的和易于导航的 B)Web与平台无关 C)Web是分布式的 D)Web 是动态的 (2)下列关于Tomcat说法正确的是。 ABCD A) Tomcat是一种编程语言 B) Tomcat是一种开发工具 C) Tomcat是一种编程思想 D) Tomcat是一种开编程规范 (3)下列关于Tomcat个目录说法错误的是。 E E) work目录——包含web项目示例,当发布web应用时,默认情况下把web 文件夹放于此目录下 (4)下列关于HTTP协议说法正确的是。 ABCDE A) HTTP是一种请求/响应式的协议 B) HTTP请求消息中Accept表示浏览器可接受的MIME类型 C) HTTP请求消息中Accept-Encoding表示浏览器能够进行解码的数据编码方式 D) HTTP请求消息中Accept-Language表示浏览器所希望的语言种类 E) HTTP请求消息中Host表示初始URL中的主机和端口。 (5)下列对于JSP说法中正确的是。ABCDE A) JSP是Sun公司推出的新一代站点开发语言 B) JSP完全解决了目前ASP、PHP的一个通病——脚本级执行 C) JSP将内容的生成和显示进行分离 D) JSP强调可重用的组件 E) JSP采用标识简化页面开发 第2章JSP编译指令 (1)下列关于JSP编译指令说法错误的是。 C C)编译指令向客户端产生任何输出 (2)下面关于page指令说法中错误的是。 B B)一个JSP页面只能包含一个page指令 (3)下面关于page指令的属性说法错误的是。 DE D)session属性制定此页面是否参与HTTP会话。默认值false E)errorpage属性指示当前页面是否为其他页的errorpage目标 (4)下列说法中正确的是。 ABDE A)include指令通知容器将当前的JSP页面中内嵌的、在指定位置上的资源内容包含 B)include指令中file属性指定要包含的文件名 D)Taglib指令允许页面使用者自定义标签 E)你必须在使用自定义标签之前使用<% @ taglib %>指令 (5)下列说法中错误的是。 B B)<%-- This comment will not be visible in the page source --%>会在客户端的HTML源代码中产生和上面一样的数据
翰子昂阶段性测试_S2考试试卷 科目:JavaWeb 一.选择题,共40道,每题1分 1. JSP页面的page 指令主要用于设置该页面的各种属性,page指令的language属性的作用是(B)。(选择一项) a) 将需要的包或类引入到JSP页面中 b) 指定JSP页面使用的脚本语言,默认为Java c) 指定JSP页面采用的编码方式,默认为text/html d) 服务器所在国家 2. 使用JSP开发Web项目时,web.xml文件一般位于目录结构中的(D )下。(选择一项) a) src目录 b) 文档根目录或其子文件夹 c) META-INF目录 d) WEB-INF目录 3. 在用户登陆的JSP页面上,包含如下代码所示的表单,当用户填写信息后点击“登录”按钮时,将产生的结果是(A)。(选择一项)
a) 表单提交到loginAction.jsp,用户可以在浏览器的地址栏看到提交的参数 b) 表单提交到loginAction.jsp,用户不能在浏览器的地址栏看到提交的参数 c) 表单提交到loginForm,用户可以在浏览器的地址看到提交的参数 d) 表单提交到loginForm,用户不能在浏览器的地址栏看到提交的参数 4. 在Java中JDBC API定义了一组用于与数据库进行通信的接口和类,它们包括在(B )包中。(选择一项) a) https://www.wendangku.net/doc/7e15421004.html,ng b) java.sql c) java.util d) java.math 5. JSP文件test.jsp内容如下所示,则试图运行时,将发生(B )。(选择一项) <%{%> <%String str;%> <%}%> Str is <% = str%>JavaWeb测试机试题一 一、功能要求 开发基于WEB的人员档案管理系统。具体要求如下: (1)档案列表页面,要求列表显示编号、姓名、生日、性别、职业、住所和手机7项,如图-1所示。 (2)档案明细页面:要求显示指定人员的编号、姓名、生日、性别、职业、住所和手机,如图-2所示。 (3)档案修改页面:要求修改指定人员的信息,更新成功后,自动返回列表页面。如图-3所示。 二、类的设计 采用MVC 设计模式,并使用JSP、Servlet、JSTL 和EL 等技术开发此系统,需要定义如下类 人员档案信息实体类(Profile) ?人员编号(id) ?姓名(name) ?生日(birthday) ?性别(gender) ?职业(career) ?住所(address) ?手机号(mobile) 数据库连接和关闭类(BaseDao) 人员档案信息DAO类,需要包含如下方法: ?public List
Javaweb ?选择题 o 1. 页面中需要增加链接,正确的HTML代码是_A_____。 A. 百度 B. 百度 C. https://www.wendangku.net/doc/7e15421004.html, D. 百度 o 2. 以下选项中,哪个全部都是表格标签___ B___。 A.
C. |