jsp考试题及答案(共7页).doc
精选优质文档-倾情为你奉上 一、填空(30分) 211、 Tomcat服务器的默认端口是 8080 。怎样修改tomcat的端口_在Tomcat下打开conf文件夹找到server.xml文件用记事本打开在<Connector port=”8080”>中把8080更改即可_,2、 异常的处理,可在该方法的代码段中包含3类代码: try 、 catch 和finally代码块。3、 jsp主要内置对象有: application 、exception 、 pageContext 、 request 、 session 、_response_out、config、page。4、 理论上,GET是 用于获取服务器信息并将其作为响应返回给客户端 ,POST是 用于客户端把数据传送到服务器 。5、 application对象是 代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息 ,而session对象则是每个客户专用的。 6、 JDBC的主要任务是: 与数据库建立连接 、 发送SQL语句 、 处理结果 。 7、 一个Bean由三部分组成: 实现java.io.serializable接口、 提供无参数的构造方法 、 提供getter()和setter()方法访问它的属性 。8、 Java Servlet的主要特点是: 、方便、 、 、节省投资。运行servlet需要在_web.xml_注册.9、 Servlet的生命周期分三个时期: 装载Servlet 、 创建一个Servlet实例 、 销毁 。 10、 JSP开发网站的两种模式分为_jsp+javabean_和 jsp+javabean+servlet 。 二、选择题(20分) 141、下面哪一个不是JSP本身已加载的基本类?(b )A、java.lang.* B、java.io.* C、javax.servlet. D、javax.servlet.jsp.* 2、对于预定义<%!预定义%>的说法错误的是:(c)A、一次可声明多个变量和方法,只要以“;”结尾就行 B、一个声明仅在一个页面中有效C、声明的变量将作为局部变量 D、在预定义中声明的变量将在JSP页面初始化时初始化3、从 “员工” 表的“姓名”字段中找出名字包含“玛丽”的人,下面哪条select语句正确:( D )A、 Select * from员工 where 姓名 =_玛丽_ B 、Select * from员工 where 姓名 =%玛丽_C、 Select * from员工 where 姓名 like _玛丽% D、 Select * from员工 where 姓名 like %玛丽%4、下述选项中不属于JDBC基本功能的是:( D )A. 与数据库建立连接 B. 提交SQL语句 C. 处理查询结果 D. 数据库维护管理5、在JSP中使用<jsp:getProperty>标记时,不会出现的属性是:( c )A. name B. property C. value D. 以上皆不会出现6、Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是:(D )A. <% page %>作用于整个JSP页面。 B. 可以在一个页面中使用多个<% page %>指令。C. 为增强程序的可读性,建议将<% page %>指令放在JSP文件的开头,但不是必须的。 D. <% page %>指令中的属性只能出现一次。7、在JSP中调用JavaBean时不会用到的标记是:( A ) A. <javabean> B. <jsp:useBean> C. <jsp:setProperty> D. <jsp:getProperty>8、关于JavaBean正确的说法是:( A)A、Java文件与Bean所定义的类名可以不同,但一定要注意区分字母的大小写B、在JSP文件中引用Bean,其实就是用<jsp:useBean>语句C、被引用的Bean文件的文件名后缀为.java D、Bean文件放在任何目录下都可以被引用9、Servlet程序的入口点是:(A )A、init() B、main() C、service() D、doGet()10、 不能在不同用户之间共享数据的方法是(A )A、通过cookie B、利用文件系统 C、利用数据库 D、通过ServletContext对象三、问答题(40分) 301.jsp有哪些内置对象?作用分别是什么?application对象代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息。Config对象允许将初始化数据传递给一个JSP页面Exception对象含有只能由指定的JSP“错误处理页面”访问的异常数据。Out对象代表提供输出流的访问Page对象代表JSP页面对应的Servlet类实例PageContext对象是Jsp页面本身的上下文,它提供唯一一组方法来管理具有不同作用域的属性Request对象提供对Http请求数据的访问,同时还提供用于加入特定请求数据的上下文 Response对象允许直接访问HttpServletResponse对象Session对象可能是状态管理上下文中使用最多的对话2.jsp有哪些动作?作用分别是什么?<jsp:param>操作被用来以“名值”队的形式为其他标签提供附加信息<jsp:include>操作允许在请求是在现成的JSP页面里包含静态或者动态资源<jsp:forward>操作允许将请求转发到另一个JSP、servlet或静态资源文件<jsp:useBean>标签用来在JSP页面中创建一个JavaBean实例并指定他的名字以及作用范围<jsp:setProperty>此操作和setBean一起协作,用来设置JavaBean的属性<jsp:getProperty>操作是对<jsp:setProperty>操作的补充,用来访问一个Bean的属性<jsp:plugin>用来产生客户端浏览器的特别标签,可以使用它来插入Applet和JavaBean<jsp:fallback>3.JSP中动态INCLUDE与静态INCLUDE的区别? 如果文件仅仅是静态文件,那么这种包含仅仅是把包含文件的内容加到JSP文件中去,但这个被包含文件不会被JSP编译器执行。相反,如果这个被包含文件是动态的文件,那么他将被JSP编译器执行。如果是动态文件还可以用<jsp:param>传递参数4.两种跳转方式分别是什么?有什么区别? <jsp:include page="included.jsp" flush="true"> <jsp:forward page= "nextpage.jsp"/><jsp:include>操作允许在请求是在现成的JSP页面里包含静态或者动态资源<jsp:forward>操作允许将请求转发到另一个JSP、servlet或静态资源文件5.servlet运行的生命周期图.装载ServletServlet类 Servlet初始化(调用init方法)实例对象被回收 提供服务(调用Service方法) 销毁Servlet实例(调用destroy方法)6.jspsmartupload实现上传下载的步骤.(简述,并用代码实现) 首先创建Html文件<html> <body bgcolor="white"> <h1>jspsmartupload : Sample 1</h1> <hr> <form action="jsp/sample1.jsp" method="post" enctype="multipart/form-data"> <input type="file" name="file1" size="50"><br> <input type="file" name="file2" size="50"><br> <input type="file" name="file3" size="50"><br> <input type="file" name="file4" size="50"><br> <input type="submit" value="Upload"> </form> </body></html>在创建JSP页面<% page language="java" import="com.jspsmart.upload.*" pageEncoding="ISO-8859-1"%> <jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload"></jsp:useBean><html> <body bgcolor="white"> < <h1> jspSmartUpload : Sample 1 </h1> <hr> <% int count = 0; mySmartUpload.initialize(pageContext); mySmartUpload.setTotalMaxFileSize(); mySmartUpload.upload(); try count = mySmartUpload.save("/upload"); out.println(count + "file(s) upload."); catch (Exception e) out.println(e.toString(); %> </body></html>7.用jfreechart组件实现报表的步骤(简述,并用代码实现)步骤:1 建立代表图表数据的Dataset对象 2 建立用于绘制图表JfreeChart类 3 将图表输出到指定目标<% page language="java" contentType="text/html;charset=gb2312"%><% page import="org.jfree.chart.ChartFactory"%><% page import="org.jfree.chart.JFreeChart" %><% page import="org.jfree.chart.servlet.ServletUtilities" %><% page import="org.jfree.chart.plot.PlotOrientation" %><% page import="org.jfree.data.category.DefaultCategoryDataset" %><% page import="org.jfree.chart.ChartUtilities,org.jfree.chart.plot.CategoryPlot" %><% page import="java.awt.*" %><%DefaultCategoryDataset dataset=new DefaultCategoryDataset();dataset.addValue(300,"北京","苹果");dataset.addValue(200,"北京","西瓜");dataset.addValue(500,"北京","葡萄");dataset.addValue(340,"北京","芒果");dataset.addValue(280,"北京","香蕉"); JFreeChart chart=ChartFactory.createBarChart3D("水果销售量统计图",/图表标题"水果",/X轴的显示标题"销量",/Y轴的显示标题dataset,/数据集PlotOrientation.VERTICAL,/图表方向:水平、垂直false,/是否包含图例false,/是否包含提示false/是否包含URL);/设置背景颜色chart.setBackgroundPaint(new Color(200,200,200);CategoryPlot cp=chart.getCategoryPlot();cp.setBackgroundPaint(new Color(100,100,100);cp.setDomainGridlinePaint(Color.black);cp.setDomainGridlinesVisible(true);cp.setRangeGridlinePaint(Color.red);String fileName=ServletUtilities.saveChartAsJPEG(chart,800,600,null,null);String url=request.getContextPath()+"/DisplayChart?filename="+fileName; %><html> <head> <title>JFreeChart Example</title> </head> <body> <p align="center"> <img src="<%=url %>" border=1> </p> </body></html>8.在程序里怎样注册servlet.<servlet><servlet-name>displayChart</servlet-name><servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class></servlet> <servlet-mapping><servlet-name>displayChart</servlet-name><url-pattern>/displayChart</url-pattern></servlet-mapping>专心-专注-专业