JSP程序设计复习资料
一、选择题
1.JSP页面以( B)为扩展名进行保存。
A .jps B .jsp C .java D. .JSP
2.在JSP中如果要导入 java.io.* 包,应该使用( A )指令。
A. page B. taglib C. include D. forward
3.如果当前JSP页面出现异常时需要转到一个异常页,需要设置page 指令的( D)属性。
A. Exception B. isErrorPage C. error D. errorPage
5.使用response对象进行重定向时使用的方法为( B )。
A.getAttribute( ) B. sendRedirect( ) C. setContentType( ) D. setAttribute( )
6.如果把用户名变量UserName放在session对象中,下面语句正确的是( D)
A.session.setName(UserName) B. session.setName(“name”,UserName)
C. session.setAttribute(UserName) D. session.setAttribute(“name”,UserName)
7.在JSP中,test.jsp文件中有如下一行代码:
<jsp:useBean id=”user” scope=”_____” type=”com.UserBean”/> 要使user对象中一直存在于对话中,直至其终止或被删除为止,下划线中应填入( C )。
A.page B.request C.session D.application
8.在JSP中,使用<jsp:useBean>动作可以将javaBean嵌入JSP页面,对JavaBean
的访问范围不能是( C )。
A. page B. request C. response D. application
9.在JSP中,( A )动作用于将请求转发给其他JSP页面。
A.forward B.include C.useBean D.setProperty
10.JSP中使用<jsp:getProperty>标记时,不会出现的属性是:(C)。
A.name B.property C.value D.以上皆不会出现
11.在<c:choose>标记中包含哪个标记( D )?
A.case B.choose C.check D.when
12.下面哪个标记产生的结果同<%=var%>( C )。
A. <c:set value=var> B. <c:var out=${var}> C. <c:out value=${var}>
D. <c:out var="var">
13.每次传递请求或响应时调用Filter的( B )方法。
A.init() B.doFilter() C.destroy() &InitParameter
14.Struts Bean的( B )标记检索Web应用程序资源的结果。
A.define B.include &ssage D.page
15.Servlet程序的入口点是:(A )
A.init() B.mainsession和application的区别() C.service() D.doGet()
二、填空题
2. 指令元素分为三种:它们分别是:Page 、Include 、和Taglib。
3. JDBC的主要任务是:与数据库建立连接、发送SQL语句 、处理结果 。
4. Servlet的生命周期分三个时期: 装载Servlet、创建一个Servlet实例、销毁 。
5. 在JSP中,当执行了查询操作时,一般将查询结果保存在 ResultSet 对象中。
6. 在JSP规范中,可以使用两种格式的注释:一种是输出注释;别一种是隐藏注释 。
7. 在JSP内置对象中,与请求相关的对象是 Request 对象。
8. 客户端向服务器端提交数据的方式通常有两种:一种是Get提交方式;另一种是Post提交方式。
9. 在JSP中,可以使用 <jsp:SetProperty> 操作来设置Bean的属性,也可以使用
<jsp:GetProperty> 操作来获取Bean的值。
11. JDBC中为Statement接口提供了3种执行方法,它们是:executeUpdate方法、executeQuery方法 、execute方法 。
12. 取表单(<form>)提交的参数,通常使用的内部对象是request ,方法是 getParameter 。
三、简单题
1. Jsp工作原理是什么?
答:当我们访问一个JSP页面的时候,这个文件首先会被JSP引擎翻译为一个Java源文件,其实就是一个Servlet,并进行编译,然后像其他Servlet一样,由Servlet引擎来处理。
Servlet引擎装载这个类,处理来自客户的请求,并把结果返回给客户。
4. 说明MVC设计模式中,M、V、C分别代表什么,有什么作用。
答案:
M代表Model(模型),该组件是对软件所处理问题逻辑的一种抽象,封装了问题的核心数据,逻辑和功能实现,独立于具体的界面显示以及I/O操作。 V代表View(视图),该组件将表示模型数据,逻辑关系以及状态信息,以某种形式展现给用户。视图组件从模型组件获得显示信息,并且对于相同的显示信息可以通过不同的显示形式或视图展现给用户。 C代表Controller(控制器),该组件主要负责用户与软件之间的交互操作,控制模型状态变化的传播,以确保用户界面与模型状态的统一。
5.简述使用JDBC技术的主要步骤?
答案:
1.注册和加载驱动器 ; 2.与数据库建立连接; 3.发送SQL语句; 4.处理结果; 5.关闭连接;
四、编程题
1.编写JSP页面分别显示1—10之间各数字的阶乘。
答案:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<HEAD>
<TITLE>阶乘(Factorial)</TITLE>
</HEAD>
<BODY> <FONT size=4>
<%! long Factorial(int n){
int sum=1;
for(int i=1;i<=n;i++){ sum=sum*i; }
return sum;
}
%>
<P>1到10之间的各数字的阶乘</P>
<%
long sum;
for(int j=1;j<=10;j++){
sum=Factorial(j);
out.print("<BR>"+j+"!="+sum);
}
%>
</BODY>
</HTML>
2. 创建一个名为worker.java的Bean,用来描述工人的信息,分别是姓名,工号,身高,体重,在一个名为work.jsp的页面中使用这个Bean,通过<jsp:setProperty>动作设置Bean的各个属性,通过<jsp:getProperty>动作显示出Bean的各个属性的值。
答案: Work.java package ccc;
public class Worker {
String name=null; long number;
double height,weight;
public String getName(){ return name; }
/
*public String getName(){
try{
byte b[]=Bytes("ISO-8859-1");
name=new String(b);
return name;
}catch(Exception e){ return name; }
}*/ 与上面的getName( )函数二选一
public void setName(String newName){ name=newName; }
public long getNumber(){ return number; }
public void setNumber(long newNumber){ number=newNumber; }
public double getHeight(){ return height; }
public void setHeight(double newHeight){ height=newHeight; }
public double getWeight(){ return weight; }
public void setWeight(double newWeight){ weight=newWeight; }
}
Work.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan>
<Font size=4>
<jsp:useBean id="zhang" class="ccc.Worker" scope="page" >
</jsp:useBean>
<jsp:setProperty name= "zhang" property="name" value="张小三" />
<P>名字是:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论