JSP课本习题答案
- 格式:doc
- 大小:188.50 KB
- 文档页数:25
《动态网页设计(JSP)》课程习题集一、单选题1.下面哪种技术不属于B/S设计模式:( )A. CGI B. XML C. ASP D. PHP2.下面关于B/S、C/S设计模式比较的描述哪项错误()A. C/S开发和维护成本高B. B/S 客户端负载重C. C/S移植困难D. B/S用户的界面是由客户端所装软件决定的3.下面哪种B/S模式设计技术由SUN公司倡导()A. CGI B.JSP C. ASP D. PHP4.下面关于JSP与ASP比较的描述,哪一项不是JSP独有特点()A. 跨平台性B. 一次编写,到处运行C. 编写容易,快速上手D. 通过JDBC驱动程序与数据库连接5.下面哪一个不能作JSP的服务器()A. IBM WebSphereB. BEA WebLogicC. TomcatD. PWS6.下面哪个不是配置tomcat运行环境所需的环境变量 ( )A. CLASSPATHB.TOMCAT_HOMEC.JAVA_HOMED. OS7.在配置tomcat虚拟目录时,需要打开哪个文件? ()A. index.jspB. web.xmlC.server.xmlD.以上都不是8.在配置tomcat虚拟目录时,需要在哪两个元素之间插入配置信息?()A. Context与HostB. Context与ListenerC. Context与ServerD.以上都不是9.一个标准的HTML文件是以<html>标记开始,并以什么标记结束( )A.<html>B. </htm>C. <htm>D. </html>10.下面哪个标记表示html文件的头元素( )A. <html> B. <body> C. <head> D. <title>11.下面哪个标记表示html文件的标题元素( )A. <html>B. <body>C. <head>D. <title>12.下面哪个是属性而不是标记 ()A.IMGB. FORMC. HREFD.TD13.下面哪个是标记而不是属性()A.HREFB.HTMLC.SRCD.BORDER14.下面哪个不是表单标记( )A. INPUTB.RADIOC.CHECKBOXD. TR15.下面哪个对象与另外三个不在一个层次上( )A. FRAMEB.DOCUMENTC.LOCATIOND.HIDDEN16.下面哪个对象与另外三个不在一个层次上()A. SELECTB.PASSWORDC.HISTORYD.TEXTAREA17.下面哪个对象与另外三个不在一个层次上()A. FORMB. AREAC.PLUGIND. FILEUPLOAD18.在下面的FORM元素、方法、事件与属性中哪一项与另外三个不同( )B.ONBLURC.VALUED.DEFAULTVALUE19.在下面的FORM元素、方法、事件与属性中哪一项与另外三个不同( )A.ONFOCUSB.ONSLECTC.ONCHANGED.OPTIONS20.在JavaScript中弹出一个提示信息框的函数是:( )A. messageB. warnC. alertD. 以上都不是21.下面哪个不是Java中关键字( )A. abstractB.breakC. nullD.int22.下面哪个不是包装类( )A. BooleanB.CharacterC. IntegerD.System23.下面哪个不是包装类()A.LongB.StringC.FloatD.Double24.在下面html头元素中定义样式规则的代码中<___?___ TYPE="TEXT/CSS">H2 { FONT-SIZE: LARGE; COLOR: BLUE }</____?___>问号处应该是: ( )A. head B. style C. body D. 以上都不是25.在简单数据类型之间进行转换时,需要考虑优先级关系,下面哪个描述不正确()A. byte<shortB. char<shotC. float<doubleD. long>int26.下面哪一项不是Java类访问控制关键字()A. publicB. protectedC. thisD. private27.下面哪一项不是JSP注释()A.<!-- -->B.<%-- --%>C.//D. & &28.下面哪一项不是JSP的page指令的属性()A. importB. contentTypeC. sessionD. useBean29.下面哪一项不是JSP的page指令的属性()A. extendsB. errorPageC.paramsD. isThreadSafe30. <jsp:forward page="test.jsp"/> 代码属于Jsp中的()A.(编译指令)指令 directiveB.(操作指令)动作 actionC.(Jsp代码)脚本元素 sriptletD. 以上都不是31. <%@ page import=”java.util.Date”%> 代码属于Jsp中的( )A.(编译指令)指令 directiveB.(操作指令)动作 actionC.(Jsp代码)脚本元素 sriptletD. 以上都不是32.下面哪项不是Jsp内置对象( )A. JDBCB. responseC. sessionD. out33.下面哪项不是JavaScript的内置对象( )A. dateB. mathC. documentD. string34.下面哪项不是默认情况下已经被加入到当前JSP页面,而不需要特殊声明( )A. ng.*B. java.servlet.*C. java.util.*D. java.servlet.http.*35.下面哪项不是JSP操作指令()A. getPropertyB. forwardC. includeD. import36.下面哪项不是JSP操作指令的作用()A. 与服务器端资源进行通信B. JSP的解释引擎,需要在编译时做什么动作C. 通过标记库定义自定义标记D. 使 JSP 页面可与 JavaBean 对象进行交互37.下面哪项不是与Bean进行交互的JSP操作指令( )A. useBeanB. includeC. getPropertyD. setProperty38.下面哪项不是useBean动作scope属性可能的值( )A. pageB. requestC. response D.session39.下面哪项不是useBean动作可能的属性值( )A.contentTypeB. idC. scope D.class40.面哪项是错误的设置Bean属性值的方法( )A. <jsp:setProperty name="beanInstanceName" property= "*" />B. <jsp:setProperty name="beanInstanceName" property="propertyName"/>C. <jsp:setProperty name="beanInstanceName" property="propertyName"param="parameterName" />D.<jsp:setProperty name="beanInstanceName" property="*" value="{string | <%= expression %>}"/>41.下面哪项不是Jsp内置对象( )A.requestB.sessionC.config D.Cookie42.下面哪项不是request对象的方法( )A. getAttribute(String str)B. getCookies()C. getParameter(String str)D. sendRedirect(String url)43.下面哪项不是response对象的方法( )A. setContentType(String contentTypestr)B. setHeader(String headername,String headervalue)C. getParameter(String str)D. sendError(int errorcode)44.下面哪项不是Cookie类的方法()A. invalidate()B. getMaxAge()C. setValue(String newValue )D. setVersion(int v)45.下面哪项不是session对象的方法()A.getAttribute (String name)B.invalidate()C.getServletInfo()D.setAttribute(String name, Object value)46.下面哪项不是application对象的方法()A. getAttribute (String name)B. getCookies()C. getInitParameter()D. setAttribute(String name, Object value)47.下面哪项不是out对象的方法()A.invalidate()B.newLine()C.flush()D.close()48.下面哪项不是File类的构造方法()A.File(String fileName)B.File(File directory)C.File(String directory, String fileName)D.File(File directory, String fileName)49.下面哪项不是File类的方法()A.boolean createNewFile()B.boolean mkdirs()C.void flush()D.String getParent()50.下面哪项不是File类的方法()A.String getAbsolutePath()B.String [] list()C.boolean canRead()D.void write(byte[] b)51.选出与其他三个不类似的选项()A.ReaderB.InputStreamC.FileD.Writer52.下面哪项是Reader和Writer都有的方法( )A.long skip(long n)B.int read()C.void close()D.void flush()53.下面哪个方法在RandomAccessFile类有,而在Reader或Writer类中没有()A.void close()B.int read()C.setLength(long newLength)D.以上都不是54.下面哪项不属于SQL语句的子类()A.数据定义语言(DDL)B.数据查询语言(DQL)C.事务控制语言(TCL)D.数据插入语言 (DIL)55.下面哪项不属于JDBC访问接口()A.ConnectionB.StatementC.ResultSetD.Callable56.下面哪项不属于数据库最常用的基本操作()A.查询(Select)B.装载(Load)C.插入(Insert)D.更新(Update)57.下面哪项不属于常见的JDBC驱动程序( )A.JDBC-ODBC桥加ODBC驱动程序B.本地协议纯Java驱动程序C.远程APID.本地API58.下面哪项不属于某个数据库JDBC驱动程序包()A.db2java.jarB.jspsmartupload.jarC.mssqlserver.jarD.mysql.jar59.下面哪个接口不具有executeQuery方法(不考虑参数) ()A.StatementB.ResultSetC.PreparedStatementD.CallableStatement60.下面哪项不属于结果集类型( )A.TYPE_FORWORD_ONLYB.TYPE_BACKWORD_ONLYC.TYPE_SCOLL_INSENSITIVED.TYPE_SCOLL_SENSITIVE61.下面哪项不属于结果集并发性()A.CONCUR_WRITE_ONLYB.CONCUR_READ_ONLYC.CONCUR_UPDATABLED.以上都不是62.下面关于通过JDBC访问数据库哪项说明正确( )A.对数据库操作一定要驱动程序B.对数据库操作一定要DriverManager.getConnectionC.对数据库操作一定要ResultSet对象D.以上说明都不正确63.下面哪项不属于JDBC for SQL Server 驱动程序包()A.msbase.jarB.msdriver.jarC.mssqlserver.jarD.msutil.jar64.在配置数据库连接池时,哪项说法错误()A.需要配置server.xml文件B.需要配置web.xml文件C.需要配置manager.xml文件D.以上都错误65.在配置数据库连接池时,配置server.xml,不需要修改哪个元素()A.ContextB.ServerC.ResourceD.ResourceParams66.在配置数据库连接池时,配置server.xml,哪项不属于要修改的parameter元素()A.factoryB.driverClassNameC.portD.maxWait67.下面哪项不是Hashtable类的方法()A.clear()B.contains()C.next()D.put()68.下面哪项不是Servlet处理客户请求的方法()A.doPost()B.doGet()C.service()D.destroy()69.在配置Servlet时,需要书写web.xml文件,哪个元素不是必须的()A.servlet-nameB.servlet-classC.url-patternD.url-mapping70.下面哪项不是常用邮件协议()A.SMTPB.POP3C.IMAPD.TCP71.下面哪项不是Servlet生命周期的方法()A.initB.serviceC.updateD.destroy72.下面哪项不是JavaMail所需的jar包 ( )A.mail.jarB.activation.jarC.xmail.jarD.以上都不是73.下面哪项不是JavaMail所需的类 ( )A. SessionB. MimeMessageC. MailD. Store74.下面哪项不是XML的三种显示样式 ( )A. CSSB. XSLC. Data IslandD. Schema75.下面哪项不是JSP操作XML文件的方式( )A. DOMB. SAXC. XDOMD. JDOM二、简答题76.在JSP中专门提供了3个页面指令来与JavaBean交互,它们分别是哪3个指令,并简述它们的功能。
JSP应用与开发技术第二版课后练习题含答案前言JSP(Java Server Pages)是一种基于Java技术的动态网页开发技术。
它允许Java代码和特定JSP标记混合在一起,从而实现了动态生成HTML、XML等网页文件的功能。
JSP应用与开发技术是JSP的入门教材,本书包括了大量的案例和练习,本文将重点介绍课后练习题,并提供答案供参考。
课后练习题1. 什么是JSP?列举JSP的优点和缺点。
答案:JSP(Java Server Pages)是一种基于Java技术的动态网页开发技术,它允许Java代码和特定JSP标记混合在一起,从而实现了动态生成HTML、XML等网页文件的功能。
以下是JSP的优点:•可以结合Java代码实现动态网页生成,具有高度的灵活性;•基于Java技术,具有跨平台、安全性高、能与其他开发技术互通等优点;•模板化的编写方式,提高了代码的可读性和维护性;•可以方便地与Java Web框架集成。
以下是JSP的缺点:•JSP容易出现逻辑与视图耦合的问题;•JSP中可能存在HTML、CSS等前端技术和Java代码的混合,不利于前后端分离;•JSP代码较为复杂,不利于开发效率。
2. 请列举JSP的指令。
答案:JSP有三种指令,分别是page指令、include指令和taglib指令。
•page指令:定义网页的属性和导入相关包;•include指令:用于把其他文件(例如HTML、JSP等)包含进当前的文件中;•taglib指令:用于导入标签库,方便重用标签。
3. 请列举JSP中的注释标记。
答案:注释标记是JSP中的一种特殊标识符,用于标记JSP页面中的注释信息。
JSP中的注释标记分为两种:•HTML注释:<!–这是HTML注释– >•Java注释:<%–这是Java注释–%>4. 请列举JSP中的一些隐含对象,并简要介绍其作用。
答案:JSP中的隐含对象是指可以直接在JSP代码中访问的默认对象,不需要进行任何声明和初始化操作。
第1章:参考答案:一、填空题(1)HTTP、HTML、RSS/ATOM(2)Java Server Pages、Sun Microsystem、Java(3)path、classpath、C:\jdk\bin、.;C:\Java\jdk\lib\da.jar;C:\Java\jdk\lib\tools.jar;(4)JSP、Servlet二、选择题1-5:ABCD、ABD、D、D、D第2章:参考答案:实验指导:2.5.1.第一处需要填写的代码:page contentType="text/html;charset=GB2312" import="java.util.*;"第二处需要填写的代码:break;2.5.2.第一处需要填写的代码:int i=1;i<=n;i++第二处需要填写的代码:sum=Factorial(j);2.5.3.第一处需要填写的代码:page="jspinclude.jsp"/第二处需要填写的代码:i>0;i--习题集:一、填空题(1)include 、page(2)i++; double p=(a[0]+a[1]+a[2])/2;(3)Math.PI*2*r; double r;(4)声明了一个long型变量sum:然后调用方法continueSum,将调用方法continueSum得到的值显示到客户:1到101的连续和是:5151您计算的项数超过100项了。
(5)year%4==0 year%100==0 year%400==0二、选择题1-3:B、A、B第3章答案:3.6.1.第一处需要填写的代码:String username=request.getParameter("username");第二处需要填写的代码:"admin".equals(username)&&"admin".equals(password) 3.6.2.第一处需要填写的代码:!goodsName.equals("")第二处需要填写的代码:list.add(goodsName);3.6.3.第一处需要填写的代码:oCount==null第二处需要填写的代码:String dateTime = dateFm.format(new java.util.Date()); 第二处需要填写的代码:一、填空题(1)session、application、request、response、out。
JSP课后习题答案单元3 课本60页课后练习填空题1、tomcat服务器的默认端口是:80802、静态网页的内容是相对固定的,而动态网页的内容是随着访问时间的访问者发生变化。
(填:动态网页或静态网页)3、在tomcat成功安装和启动后,可以在浏览器中输入http://localhost:8080来测试安装配置是否正常。
4、在WEB-INF下必须有一个XML文件是web.xml选择题1、B2、D3、A4、D单元4 课本87页课后练习填空题1、脚本程序是一段在客户端请求时需要先被服务器执行的java 代码,它可以产生输出,同时也是一段流控制语句。
2、在jsp的3种指令中,用来定义与页面相关的指令是Page指令;用于在jsp页面中包含另一个文件的指令是Include指令(静态包含);用来定义一个标签库以及其自定义标签前缀的指令是Taglib指令。
3、<jsp:include>动作元素允许在页面被请求时包含一些其他资源,如一个静态的HTML文件和动态的JSP文件。
4、Page指令的MIME类型的默认值为text/html,默认字符集是iso-8859-1 。
5、Jsp的隐藏注释格式为<%-- --%>或者<%--comment--%> Jsp的输出注释的格式是<!-- -->。
选择题1、A2、A3、D4、C5、B6、D简答题(答案在课本79页)请查阅资料并结合课堂上所讲内容,阐述include静态包含和动态包含<jsp:include>指令的区别。
答:动态include指令是在执行时才将对包含的文件进行处理,要进行编译,可以带参数;静态的include的指令是简单的将两个文件进行合并,使其成为一个新的文件。
单元5 课本130页课后练习填空题1、在jsp内置对象中,用于请求相关的对象是Request对象。
该对象可以使用getParameter(String s)方法来获取表单元素提交的信息。
一、选择题(每小题2分)1.浏览器对下列那些程序可以执行解释(C)A. Jsp程序 B Java Bean C Java Script D Servlet2.下列代码<form action=”login.jsp”>Username:<input type=”text” name=”username” id=”myname” value=”user”><input type=”submit” value=”submit”></form>执行提交后,服务器正确取得文本框值是(D )A 无法取得,因为代码在html中B request.getAttribute(“username”)C request.getParameter(“myname”)D request.getParameter(“username”)3.开发一个JSP项目最合理的做法是(C )A 直接编写代码B 分析、设计、编码C分析、设计、寻求成功可用案例、最后编码D前面都不正确,具体问题要具体分析4.不同客户端要共享信息,需要使用(A )A Application对象B Sesion对象C Request对象D 响应对象5.关于Session对象,下列那个是正确的(B)A 关闭服务器,在启动Session依然存在B Session是内存对象C Session创建在服务器,保存在客户端D 在购物车应用中不能使用session二、分析写出下列程序功能,并对画线部分进行说明(20分)Chap1.htm<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body bgcolor="#FFCCCC"><form method="post" action="1.jsp"> //指定表单提交后由服务器1.jsp执行<p>数1:<input name="base" type="text" size="15"><br>数2:<input name="seq" type="text" size="15"></p><input type="submit" value="计算" ><input type="reset" value="清除" > //定义一个复位按钮</form></body></html>1.jsp<html><head><title>计算结果</title></head><body bgcolor="#FFCCCC"><%String base=request.getParameter( "base" );String seq=request.getParameter( "seq" ); //得到数2的值int base_i=Integer.parseInt(base);int seq_i=Integer.parseInt(seq);int result=1;for(int i=1;i<=seq_i;i++)result=result*base_i; //计算Base的seq次方%><hr><font color="#663333" size="4" face="隶书">计算结果为:</font><font color="#663333" size="4" ><%=result%></font><p><a href="javascript: history.back();">返回</a></p> //返回到上一个页面</body></html>/////////////////////////////////////功能:Base的seq次方三、完善程序,填空。
第7章一、选择题1.A 2. D 3.D 4. B 5. A6. C7. A8. A9.D 10.D二、判断题1. 对2. 错3. 错4. 对5. 错三、填空题1、java,属性,方法2、WEB-INF/classes3、jsp+javabean jsp+javabean+servlet4、application5、(可视化JavaBean)和(非可视化JavaBean)三、问答题1. 试说明什么是JavaBean。
答:JavaBean是一种特殊的Java程序,是用于包装特定功能的程序代码,可以被JSP 网页重复使用,其本身无法独立运行,是JSP网页程序组件化的核心。
2. 请说出如何在JSP网页中载入JavaBean。
A:<jsp:useBean id=id-name scope=scope-name class=class-name />3. JavaBean对象可声明哪些不同的生命周期?答:request、session、page及applaction。
4. JavaBean程序除了必须要有一个无传入值的建构式之外,还有哪些特色?答:除了必须要有一个无传入值的建构式之外,还必须是一个公开的类,并以set及get 开头的方法来设置与取得属性。
5. 试说明Get和Post方法之间的差异?答:Post和Get这两种设置方式主要的差异在于数据的传送方式,前者将所要传送的数据包含在HTTP文件头中,后者则是将数据直接串接在网址栏的后端,两者都可使用GetParameter取得传送的数据内容。
第8章一、选择题1、C2、D3、A 4. C 5.C二、判断题1、对2、错3、错4、对5、对三填空题1、InputStream 、OutputStream、Writer、Reader2、WEB-INF\lib3、1,2三、问答题1. import="java.io.*"2. 试说明如何利用File类进行文件目录的操作?答:利用File类进行文件目录的操作首先必需建立一个File对象,将所要操作文件或是目录完整路径当作参数传入,当File对象建立之后,JSP网页便可以利用这个对象调用File类的所有方法,以进行各种文件目录的操作。
第一章1)如果做动态网站开发,以下()可以作为服务器端脚本语言。
A.HTML B.JSP C.JavaScript D.Java2)在设计Web项目的目录结构时,一般吧JSP 和HTML文件放在()下。
A.src目录B.文档根目录或其子文件下C.META-INT目录D.WEB-INF目录3)在Web项目的目录结构中,web.xml文件位于()中。
A.src目录B.文档根目录C.META-INF目录D.WEB-INF目录4)下面对于B/S架构与C/S架构的描述错误的是()。
A.B/S架构解决了C/S架构的弊端,因而在程序开发中将会逐步取代C/S架构B.B/S机构是基于internet网络实现的,使得用户访问的范围扩大C.C/S架构师基于局域网实现的,当程序发生改的后,需要对每一个客户端进行维护D.C/S可以设计出丰富的界面,而B/S则相对处于劣势5)以下选项中()是正确的URL,(选两项)A./talk/talk1.htm B.ftp://C. D./news/welcome.html第二章6)在某个JSP页面中存在这样一行代码,<%= “2” + “4” %> 运行该JSP后,以下说法正确的是()。
A.这行代码没有对应的输出B.这行代码对应的输出时6C.这行代码对应的输出时24 D.这行代码将引发错误7)与page指令<%@ page import= “java.util.*, java.text.* “ %> 等价的是()。
A.<%@ page import= “java.util.* %><%@ page import= “java.text.* “ %>B.<%@ page import= “java.util.*”, import= “java.text.* “ %>C.<%@ page import= “java.util.* “; %><%@ page import= “java.text.* “; %>D.<%@ page import= “java.util.* ; java.text.* “ %>8)下列选项中,()是正确的表达式。
第一章JSP入门基础1.填空(1)动态网页是指网页上显示的内容是可以改变、可以交互的。
(2)HTML文件中可以包含文字、图片、动画、声音和超级链接。
(3)在JSP网页中以<% 和%> 标记括起来部分是JSP中动态执行的代码。
(4)从严格意义上来讲,JSP是建立在Java Servlet 技术之上。
(5)JSP服务器端操作环境的软件包括:操作系统、JSP编译程序、Web应用程序服务器、后台数据库和JDBC接口。
(6)JDK在JSP环境中的作用是:编译。
(7)Tomcat在JSP环境中的作用是:提供Web应用程序服务。
(8)本书中,对于Tomcat服务器,地址http://localhost:8080对应的真实文件路径是:C:\ Tomcat 5.5\webapps\ROOT(9)JSP代码中,以//开头的行表示注释语句行2.问答(1)相对于ASP来说,JSP有哪些优点?相对于ASP来说,JSP是在服务器端先编译成Servlet包(以.class文件形式存储),再动态执行,这种编译只在第一次访问JSP内容时进行,以后在访问时候就可以快速地得到执行。
而ASP是解释型的,每次访问网页时都是一边解释一边执行,即使访问的是同一网页内容也是如此。
因此,JSP的执行速度快于ASP。
(2)简述安装JSP环境所需要的主要步骤1.JDK下载安装2.Tomcat下载安装3.JSP操作环境的设定:设置环境变量4.SQL Server2000 数据库的安装第二章习题一.填空1,HTML 是一切网页实现的基础。
2,HTML 文件中包含文字图片动画声音和超文本文件。
3,HTML 文档通常分两部分,位于<head> 和</head> 标记之间的部分称为HTML 文件头,位于<body> 和</boay> 之间的部分称为正文。
4,<meta> 标记的name 属性主要用于描述网页,以便于搜索引擎对网页进行查找、分类5,将<meta>标记的http-equiv 属性设置为program 可以实现网页的定时刷新功能。
第1章Web技术简介1.6.1选择题1.A2.B3.D1.6.2填空题1.JSP2.JSP+JavaBean+Servlet、J2EE/JavaEE3.视图和控制4.编译5.JSP Model1和JSP Model21.6.3简答题1.简述JSP的优点。
答:(1)一次编写、到处运行(2)系统的多平台支持(3)内容和显示分离(4)生成可重用的组件(5)采用标签简化页面(6)健壮的存储管理和安全性2.简述JSP的工作原理。
答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。
当第一次运行一个JSP页面时,JSP引擎要完成以下操作:●将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序。
●JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。
●JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。
●服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。
由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。
当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。
3.简述JSP开发Web站点的主要方式。
答:JSP开发Web站点主要有以下几种方式。
(1)直接使用JSP(2)JSP+JavaBean(3)JSP+JavaBean+Servlet(4)J2EE/JavaEE开发模型(5)SSH开发框架4.简述JSP两种体系结构。
答:JSP规范中分别称作JSP Model1和JSP Model2,它们的本质区别在于处理批量请求的位置不同。
Model1,在Model1体系中,JSP页面独自响应请求并将处理结果返回客户。
JSP程序设计课后习题答案第⼀章 JSP概述1-1 JSP的全称是什么?JSP有什么优点?JSP与ASP、PHP的相同点是什么?JSP的全称是Java Server Pages。
优点:跨平台、分离静态内容和动态内容、可重复使⽤的组件、沿⽤了Java Servlet的所有功能、具有预编译性。
共同点:可以在页⾯中加⼊脚本代码来⽣成动态内容。
1-2 JSP中可重复使⽤的组件有哪些?JavaBean组件、JSP的标准标签和⾃定义标签。
1-3 什么是JSP的预编译特征?预编译是JSP的另⼀个重要的特性。
JSP页⾯在被服务器执⾏前,都是已经被编译好的,并且通常只进⾏⼀次编译,即在JSP页⾯被第⼀次请求时进⾏编译,在后续的请求中如果JSP页⾯没有被修改过,服务器只需要直接调⽤这些已经被编译好的代码,这⼤⼤提⾼了访问速度。
1-4 开发JSP程序需要具备哪些开发环境?Web浏览器、Web服务器、JDK开发⼯具包以及数据库。
1-5 在成功安装JDK后,需要配置哪些环境变量?JAVA_HOME变量、Path变量、CLASSPATH变量1-6 Tomcat的默认端⼝、⽤户名和密码分别是什么?端⼝为“8080”、⽤户名为“admin”、密码为空。
1-7 本章介绍的⽤来开发JSP程序的开发⼯具是什么?Eclipse1-8 开发JSP程序可采⽤哪⼏种开发模式?分别介绍它们的优缺点。
单纯的JSP页⾯编程:优点:通过应⽤JSP中的脚本标志,可直接在JSP页⾯中实现各种功能。
缺点:⼤部分的Java代码与HTML代码混淆在⼀起,给程序的维护和调试带来很多的困难。
JSP+JavaBean编程优点:jsp与javabean的结合,使web程序更加的直观,使⽤简单,不⽤于后台进⾏交互,直接在前端处理业务逻辑,更快速。
缺点:性能不好,jsp作为web的前端程序包含了太多的业务逻辑,给前端jsp造成了压⼒。
不便于维护。
JSP+Servlet+JavaBean编程优点:能够更好的实现表⽰层,逻辑层和数据访问层的分离。
课后习题参考答案1、简单叙述TomCaI服务器安装路径下各目录的作用。
【参考答案】以TomCat6.0为例,列出其子目录的各项功能:(1)∖bin∖ ---------------------- T omcat中的一些可执行文件和批处理文件,用于启动、停止服务等。
(2)∖cong∖ -------------------- 存放TonlCat中的各种全局配置文件。
(3)∖lib∖ ----------------------- T omCat运行库文件。
(4)∖logs∖ --------------------- 运行日志。
(5)∖temp∖ -------------------- 临时目录。
(6)∖webapps\ ------------------ 项目发布目录。
(7)∖work∖ -------------------- 存放JSP编译后生成的Java代码和class类。
2、归纳在MyECliPSe环境下创建、发布、运行Web项目过程。
【参考答案】第一步,创建项目:创建或选择工作空间(WorkSpace,工作空间),进入后默认的视图为MyECliPSC视图。
选择[File]-*[new]-[WebProject],后出现创建Web项目的窗口,在【ProjectName]中填入项目名称如test,点击【finish】完成;第二步,项目编码:(创建JSP页面等)略;第三步,发布项目:首先,配置外部服务器。
选择MyECliPSe菜单中的[Window]下的[Preferences]选项,进入到配置环境界面,在左边的工具条中,选择【Myeclipse】一【Servers】一【Tomcat】,进行相关配置。
其次,发布过程。
服务器配置完成后,选择工具条中的发布工具,将项目部署到TomCat中。
最后,启动项目。
项目成功发布后,选择工具条中的服务器启动工具选择配好的服务器,启动服务器。
在地址栏中输入项目地址αhttp://localhost:8080/test/index.jsp v启动项目。
习题1 JSP 简介1. 安装Tomcat5.5所在的计算机需要事先安装JDK吗?答:需要。
2. 运行startup.bat启动Tomcat服务器的好处是什么?答:能够确保Tomcat服务器使用的是JA V A_HOME环境变量设置的JDK.3. Boy.jsp和boy.jsp是否是相同的JSP文件名字不是4. 请在D:\下建立一个名字为water的目录,并将该目录设置成一个Web服务目录,然后编写一个简单的JSP页面保存到该目录中,让用户使用权虚拟目录fish来访问该JSP页面?答:设置方法:①建立D:\ water目录;②修改server.xml文件,在</host>上一行添加:<Context path="/fish" docBase="D:\ water" debug="0" reloadable="true"/>③使用http://localhost:8080/ fish /example1_1.jsp访问example1_1.jsp页面.5. 假设Dalian是一个Web服务目录,其虚拟目录为moon, A.jsp保存在Dalian 的子目录sea中。
那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问A.jsp的正确方式?A.http://127.0.0.1:8080/A.jsp B. http://127.0.0.1:8080/Dalian/A.jspC. http://127.0.0.1:8080/moon/A.jspD. http://127.0.0.1:8080/moon/sea/A.jsp 答:D6. 如果想修改的端口号,应当哪个文件?能否将端口号修改为80?答:修改Tomcat服务器的conf目录下的主配置文件server.xml可以更改端口号.若Tomcat服务器上没有其他占有80端口号的程序,可以将其修改为8080,否则不能。
JSP简答题答案第1题:JSP程序开发的主要模式有哪些?分别叙述下特点?四大模式:1、单纯的JSP页面编程2、JSP+javabean编程3、JSP+Servlet+javabean编程4、MVC模式。
特点:1.Jsp+Servlet+JavaBean开发模式优点:JSP作为视图,来表现页面;Servlet作为控制器,控制程序的流程并调用业务进行处理;JavaBean封装了业务逻辑。
遵循了MVC设计模式。
2.MVC模式的特点:(1)开发人员可以只关注整个结构中的其中某一层;(2)可以很容易的用新的实现来替换原有层次的实现;(3)可以降低层与层之间的依赖;(4)有利于标准化;(5)利于各层逻辑的复用。
概括来说,分层式设计可以达至如下目的:分散关注、松散耦合、逻辑复用、标准定义。
3.JSP+javaBean的优点:(1)提高代码的可复用性:对于通用的事务处理逻辑,数据库操作等都可以封装在JavaBean中,通过调用JavaBean的属性和方法可快速进行程序设计。
(2)程序易于开发维护:实现逻辑的封装,使事务处理和显示互不干扰。
(3)支持分布式运用:多用JavaBean,尽量减少java代码和html的混编。
4.JSP页面编程的优点:(1)一次编写,到处运行。
除了系统之外,代码不用做任何更改(2)系统的多平台支持。
(3)强大的可伸缩性。
(4)多样化和功能强大的开发工具支持。
(5)支持服务器端组件。
第2题:JSP中可重复使用的组件有哪些?Java Bean/JSP标准标签/自定义标签第3题:什么是成员变量和局部变量?它们的区别是什么?在类体中变量定义部分所声明的变量为类的成员变量,而在方法体中声明的变量和方法的参数则称为局部变量。
成员变量和局部变量的区别在于其有效范围不同成员变量在整个类中有效,而局部变量只在定义它的成员方法内才有效。
第4题:什么是servlet?servlet与jsp有什么区别?servlet是在jsp纸钱就存在的运行在服务器端的一种Java技术,它是用Java语言编写的服务器端程序,servlet 是一种独立于平台和协议的服务器端的Java技术,可以用来生成动态的web页面。
1. Web技术的设想在()年提出A.1954B.1969C.1989D.19902. JSP页面在第一次运行时被JSP引擎转化为()A.HTML文件B. CGI文件C. CSS文件D.Servlet 文件3. JavaEE体系中Web层技术是()A. HTMLB. JavaBeanC. EJBD. JSP1 用来换行的标签是()A.<P>B.<br>C.<hr>D.<pre>2. 用来建立有序列表的标签是()A.<ol></ol>B.<ul></ul>C.<dl></dl>D.<il></il>3. 用来插入图片的标签是()A.<img>B.<image>C.<bgsound>D.<table>4. css文件的扩展名为()A.docB. textC. htmlD. css1. 有关JSP中的HTML注释叙述正确的是()A.发布网页时看不到,在源文件中也看不到。
B.发布网页时看不到,在源文件中能看到。
C.发布网页时能看到,在源文件中看不到。
D.发布网页时能看到,在源文件中也能看到。
2. JSP支持的语言是()A. C语言B. C++语言C. C#语言D. Java语言3. 在同一个JSP页面中page指令的属性中可以使用多次的是()A. ImportB. sessionC. extendsD. Info4. 用于获取Bean属性的动作是()A.<jsp:useBean>B.<jsp:getProperty>C.<jsp:setProperty>D.<jsp:forward>5. 用于为其他动作传送参数的动作是()A.<jsp:include>B.<jsp:plugin>C.<jsp:param>D.<jsp:useBean>1. Pesponse对象的setHeader(String name,String value)方法的作用是()A.添加HTTP文件头B.设定指定名字的HTTP文件头的值C.判断指定名字的HTTP文件头是否存在D.向客户端发送错误信息2. 设置session的有效时间(也叫超时时间)的方法是()A. setMaxInactiveInterval(int interval)B. getAttributeName()C. setAttributeName(String name,ng.Object value)D. getLastAccessedTime()3. Out对象中能清除缓冲区中的数据,并且把数据输出到客户端的方法是()A. out.newLine()B. out.clear()C. out.flush()D. out.clearBuffer()4. pageContext对象的findAttribute()方法作用是()A. 用来设置默认页面的范围或指定范围之中的已命名对象B. 用来删除默认页面范围或指定范围之中已命名的对象C. 按照页面请求、会话以及应用程序范围的顺序实现对某个已命名属性的搜索D. 以字符串的形式返回一个对异常的描述1. JDBC提供3个接口来实现SQL语句的发送,其中执行简单不带参数SQL 语句的是()A. Statement类B. PreparedStatement类C. CallableStatement类D. DriverStatement类2. Statement类提供3种查询执行方法,用来执行更新操作的是()A. executeQuery()B. executeUpdateC. next( )D. query( )3.负责处理驱动的调入并产生对新的数据库连接支持的接口是()A. DriverManagerB. ConnectionC. StatementD. ResultSet1.在JSP/Servlet的生命周期中,用于初始化的方法是()A.doPost()B. doGet()C. init()D. Destroy()2. Servlet文件在Java Web开发中的主要作用是()A. 开发页面B. 作为控制器C. 提供业务功能D. 实现数据库连接1.以下不是Java Bean的作用域的是()A. boundB. pageC. requestD. Application2.JavaBean分为()种A. 2B. 3C. 4D. 51.当前主流的三大动态Web开发技术是PHP、ASP/和。
《JSP实用教程(第三版)》课后答案第1章 JSP简介1.安装Tomcat引擎的计算机需要事先安装JDK吗答:需要。
2.怎样启动和关闭Tomcat服务器答:bin目录下使用启动Tomcat服务器。
bin目录下使用关闭Tomcat服务器。
3. 和是否是相同的JSP文件名字答:不是4. 请在D:\下建立一个名字为water的目录,并将该目录设置成一个Web服务目录,然后编写一个简单JSP页面保存到该目录中,让用户使用虚拟目录fish 来访问该JSP页面。
答:设置方法:①建立D:\ water目录;②修改文件,在</host>上一行添加:<Context path="/fish" docBase="D:\ water" debug="0" reloadable="true"/>③使用 fish /访问页面.5. 假设Dalian是一个Web服务目录,其虚拟目录为moon。
保存在Dalian的子目录sea中。
那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问的正确方式A. B. D. 答:D6.如果想修改Tomcat服务器的端口号,应当修改哪个文件能否将端口号修改为80答:修改Tomcat服务器的conf目录下的主配置文件可以更改端口号.若Tomcat服务器上没有其它占有80端口号的程序,可以将其修改为80,否则不能。
第2章 JSP语法1."<%!"和"%>"之间声明的变量与"<%"和"%>"声明的变量有何不同答:"<%!"和"%>"声明的变量为类的成员变量,其所占的内存直到Tomcat服务器关闭才释放."<%"和"%>"为类方法中声明的局部变量,仅在JSP页面后继的程序片及表达式中有效.2. 如果有2个用户访问一个JSP页面,该页面中的Java程序片将被执行几次答:2次(当有一个用户访问JSP页面,JAVA程序片就被访问一次).5. 假设有两个不同用户访问下列JSP页面,请问第一个访问和第二个访问页面的用户看到的页面的效果有何不同<%@ page contentType="text/html;charset=GB2312" %><%@ page isThreadSafe="false" %><BODY><HTML><%! int sum=1;void add(int m){sum = sum +m;}%><% int n =100;add(n);%><%=sum%></BODY></HTML>答:第一个客户看到结果是101;第二个客户看到结果是201;6. 请编写一个简单的JSP页面,显示英文字母表。
JSP课后习题答案单元3 课本60页课后练习填空题1、tomcat服务器的默认端口是:80802、静态网页的内容是相对固定的,而动态网页的内容是随着访问时间的访问者发生变化。
(填:动态网页或静态网页)3、在tomcat成功安装和启动后,可以在浏览器中输入http://localhost:8080来测试安装配置是否正常。
4、在WEB-INF下必须有一个XML文件是web.xml选择题1、B2、D3、A4、D单元4 课本87页课后练习填空题1、脚本程序是一段在客户端请求时需要先被服务器执行的java 代码,它可以产生输出,同时也是一段流控制语句。
2、在jsp的3种指令中,用来定义与页面相关的指令是Page指令;用于在jsp页面中包含另一个文件的指令是Include指令(静态包含);用来定义一个标签库以及其自定义标签前缀的指令是Taglib指令。
3、<jsp:include>动作元素允许在页面被请求时包含一些其他资源,如一个静态的HTML文件和动态的JSP文件。
4、Page指令的MIME类型的默认值为text/html,默认字符集是iso-8859-1 。
5、Jsp的隐藏注释格式为<%-- --%>或者<%--comment--%> Jsp的输出注释的格式是<!-- -->。
选择题1、A2、A3、D4、C5、B6、D简答题(答案在课本79页)请查阅资料并结合课堂上所讲内容,阐述include静态包含和动态包含<jsp:include>指令的区别。
答:动态include指令是在执行时才将对包含的文件进行处理,要进行编译,可以带参数;静态的include的指令是简单的将两个文件进行合并,使其成为一个新的文件。
单元5 课本130页课后练习填空题1、在jsp内置对象中,用于请求相关的对象是Request对象。
该对象可以使用getParameter(String s)方法来获取表单元素提交的信息。
第1 章Web 技术简介1.7.1选择题1. Web 技术的设想于哪一年提出()。
A.1954 年B.1969 年C.1989 年D.1990 年2. JSP 页面在第一•次运行时被 JSP引擎转化为()。
A.HTML文件B.CGI 文件C.CSS文件D.Servlet 文件3. JavaEE 体系中Web层技术是()。
A.HTMLB.JavaBeanC.EJBD.JSP参考答案: 1.C 2.D 3.D1.7.2填空题1.当前主流的三大动态 Web开发技术是:PHR ASP/和 ____________________ 。
2.JSP 的两种体系结构是:_________________ 和________________ 。
3.JSP 开发 Web 站点的主要方式有:直接JSP、JSP+JavaBean、____________________ ________________ 和SSH。
参考答案:1.JSP2.JSP Model1 和 JSP Model23.JSP+JavaBean+Servlet 、 J2EE/JavaEE1.7.3简答题1.简述JSP的工作原理。
答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。
当第一次运行一个JSP页面时,JSP引擎要完成以下操作:将 JSP 文件翻译成 Servlet 文件, Servlet 文件是 Java 应用程序。
JSP引擎调用Java编译器,编译 Servlet文件得到可执行的代码文件(.class文件)。
JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。
服务器将运行结果以 HTML形式作为响应返回给客户端的浏览器。
由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。
当该页面再次被访问时,它对应的.class 文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。
习题1 JSP 简介1. 安装Tomcat5.5所在的计算机需要事先安装JDK吗?答:需要。
2. 运行startup.bat启动Tomcat服务器的好处是什么?答:能够确保Tomcat服务器使用的是JA V A_HOME环境变量设置的JDK.3. Boy.jsp和boy.jsp是否是相同的JSP文件名字不是4. 请在D:\下建立一个名字为water的目录,并将该目录设置成一个Web服务目录,然后编写一个简单的JSP页面保存到该目录中,让用户使用权虚拟目录fish来访问该JSP页面?答:设置方法:①建立D:\ water目录;②修改server.xml文件,在</host>上一行添加:<Context path="/fish" docBase="D:\ water" debug="0" reloadable="true"/>③使用http://localhost:8080/ fish /example1_1.jsp访问example1_1.jsp页面.5. 假设Dalian是一个Web服务目录,其虚拟目录为moon, A.jsp保存在Dalian 的子目录sea中。
那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问A.jsp的正确方式?A.http://127.0.0.1:8080/A.jsp B. http://127.0.0.1:8080/Dalian/A.jspC. http://127.0.0.1:8080/moon/A.jspD. http://127.0.0.1:8080/moon/sea/A.jsp 答:D6. 如果想修改的端口号,应当哪个文件?能否将端口号修改为80?答:修改Tomcat服务器的conf目录下的主配置文件server.xml可以更改端口号.若Tomcat服务器上没有其他占有80端口号的程序,可以将其修改为8080,否则不能。
习题2 JSP页面1."<%!"和"%>"之间声明的变量与"<%"和"%>"声明的变量有何不同? 答:"<%!"和"%>"声明的变量为类的成员变量,其所占的内存直到Tomcat服务器关闭才释放."<%"和"%>"为类方法中声明的局部变量,仅在JSP页面后继的程序片及表达式中有效.2. 如果有2个用户访问一个JSP页面,该页面中的Java程序片将被执行几次? 答:当有一个用户访问JSP页面,JAVA程序片就被访问一次.3. 假设有2个不同用户访问下列JSP页面test.jsp,请问第一个和第二个访问test.jsp页面的用户看到的页面效果有何不同?test.jsp<%@ page contentType="text/html;Charset=GB2312" %><html><body><%!String str=new String("你好");synchronized void f(String s){ str=str+s; }%><%String s="abcd";f(s);%><%=str%></body></html>答: 第一个客户看到结果是你好abcd第二个客户看到结果是你好abcdabcd4.<%@ page contentType="text/html;Charset=GB2312" %><html><body><%int i,j;for(i=2;i<=100;i++){for(j=2;j<i;j++){if (i%j==0){ break;}}if(j==i){%><%=i%> <%}}%></body></html>结果:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 975.a.jsp<%@ page contentType="text/html;charset=GB2312" %><html><body><form action="b.jsp" method="post" name="form"><p>请输入一个字符串:<br/><input type="text" name="mes"/><br/><input type="submit" name="submit" value="提交"/></form></body></html>b.jsp<%@ page contentType="text/html;charset=GB2312" %><html><body><%String str=request.getParameter("mes");out.print(str+"<br/>");out.print("其长度为:"+str.length());%></body></html>6.inputNumber.jsp<%@ page contentType="text/html;charset=GB2312" %><html><body><form action="getNumber.jsp" method="post" name="form"><p>请输入一个数字:<br/><input type="text" name="number"/><br/><input type="submit" name="submit" value="提交"/></form></body></html>getNumber.jsp<%@ page contentType="text/html;charset=GB2312" %><html><body><%int number=Integer.parseInt(request.getParameter("number"));out.print(number+"的平方为:"+number*number+"<br/>");out.print(number+"的立方为:"+number*number*number+"<br/>");%></body></html>习题3 JSP标记1.只能1个2.可以3.include指令标记:是把被包含的文件的内容放于包含文件中,组成一个文件后编译运行.include动作标记: 是把被包含的文件的运行结果放于包含文件运行产生的结果中,这2个文件各自编译运行.4.param动作标记经常作为include、forward动作标记的字标记,作用是向动态加载的页面传值5.服务目录下建立WEB-INF\tags,将Tag文件存放在“服务目录下WEB-INF\tag s”下或其子目录下6.用浏览器不可以直接访问Tag文件,可以通过jsp页面访问7.(1)JSP页面用<taglib>指令标记将其引入标记库:<%@ taglib tagdir="/WEB-INF/tags" prefix="***" %>(2)JSP页面使用Tag标记调用Tag文件:<***:tag文件名/>8.8.jsp<%@ page contentType="text/html;Charset=GB2312" %><%@ taglib tagdir="/WEB-INF/tags" prefix="area" %><html><body><h3>以下是调用Rect.tag文件的效果:</h3><area:Rect width="6" height="4"/><h3>以下是调用Circle.tag文件的效果:</h3><area:Circle radius="10"/></body></html>Rect.tag<%@ attribute name="width" required="true" %><%@ attribute name="height" required="true" %><html><body><p>该Tag文件计算长方形的面积.<%!public String getArea(double a,double b){double area;area=a*b;return "<br/>面积:"+area;}%><%out.println("JSP页面传递过来的长、宽分别为:"+width+" "+height); double a=Double.parseDouble(width);double b=Double.parseDouble(height);out.println(getArea(a,b));%></body></html>Circle.tag<%@ attribute name="radius" required="true" %><html><body><p>该Tag文件计算园的面积.<%!public String getArea(double a){double area;area=a*a*3.141593;return "<br/>面积:"+area;}%><%out.println("JSP页面传递过来的半径为:"+radius);double a=Double.parseDouble(radius);out.println(getArea(a));%></body></html>结果:以下是调用Rect.tag文件的效果:该Tag文件计算长方形的面积. JSP页面传递过来的长、宽分别为:6 4面积:24.0以下是调用Circle.tag文件的效果:该Tag文件计算园的面积. JSP页面传递过来的半径为:10面积:314.1593习题4 JSP 内置对象1.假设JSP使用的表单中有如下的GUI(复选框)<input type="checkbox" name="item" value="bird">鸟<input type="checkbox" name="item" value="apple">苹果<input type="checkbox" name="item" value="cat">猫<input type="checkbox" name="item" value="">月亮该表单所请求的JSP可以使用内置对象request对象获取该表单提交的数据,那么,下列哪些是request获取该表单提交值的正确语句?A. String a=request.getParameter("item");B. String b=request.getParameter("checkbox");C. String c[]=request.getParameterValues("item");D. String d[]=request.getParameterValues("checkbox");答: C.2. 如果表单提交的信息中有汉字,接收该信息的页面应做怎样的处理?答:处理方法有2种:第1种:<%@ page contentType="text/html;Charset=GB2312" %>指令中的Charset首字母”C”大写.第2种:重新编码<% String str1=request.getParameter("number");byte c[]=str1.getBytes("ISO-8859-1");str1=new String(c);%>4. reponse调用sendRedirect(URL: url)方法的作用是什么?答:从一个页面跳转到sendRedirect(URL: url)中url指定的页面,并且这种跳转是客户端跳转.6. 一个用户在不同Web服务目录中的session对象相同吗?答:不相同.7. 一个用户在同一Web服务目录中的session对象相同吗?答:相同.8. 如果用户长时间不关闭浏览器,用户的session对象可能消失吗?答:可能消失.9. 用户关闭浏览器后,用户的session对象一定消失吗?答:一定消失.习题5 JSP与Javabean1. 假设Web服务目录Dalian中的JSP页面要使用一个bean,该bean的包名为blue.sky.请说明,应当怎样保存bean的字节码文件?答:(1)在当前Web服务目录下建立如下目录结构:Web服务目录\WEB-INF\classes(2)根据类的包名,在目录classes下建立相应的子目录,将获得的字节码文件保存在子目录下2. tom.jiafei.Circle是创建bean的类,下列哪个标记是正确创建session周期bean 的标记?答:<jsp:useBean id="circll" class="tom.jiafei.Circle" scope="page"/><jsp:useBean id="circll" class="tom.jiafei.Circle" scope="request"/><jsp:useBean id="circll" class="tom.jiafei.Circle" scope="session"/><jsp:useBean id="circll" class="tom.jiafei.Circle" scope="application"/>答: C.3. 假设创建bean的类有一个int型的属性number,下列哪个方法是设置该属性值的正确方法?A. public void setNumber(int n)B. void setNumber(int n){number=n; {number=n;} }C. public void SetNumber(int n)D. void Setnumber(int n){number=n; {number=n;} }答: A.4.input_1.jsp<%@ page contentType="text/html;Charset=GB2312" %><%@ page import="tom.*" %><html><body><form action="" method="post">请输入圆的半径(数字字符):<input type="text" name="radius"/><input type="submit" value="计算周长、面积" /></form><jsp:useBean id="circle" class="tom.Circle" scope="page" /><jsp:setProperty name="circle" property="radius" param="radius" /><br/>圆的周长:<jsp:getProperty name="circle" property="perimeter"/> <br/>圆的面积:<jsp:getProperty name="circle" property="area"/></body></html>Circle.javapackage tom;public class Circle{double radius,perimeter,area;public Circle(){radius=0;}public void setRadius(double r){radius=r;}public double getRadius(){return radius;}public double getPerimeter(){perimeter=2*3.141593*radius;return perimeter;}public double getArea(){area=3.141593*radius*radius;return area;}}结果:请输入圆的半径(数字字符):圆的周长:0.0圆的面积:0.0输入“10”提交请输入圆的半径(数字字符):圆的周长:62.83186圆的面积:314.15935.a.jsp<%@ page contentType="text/html;Charset=GB2312" %><html><body><form action="b.jsp" method="post">长:<input type="text" name="length" />宽:<input type="text" name="width" /><input type="submit" value="计算面积:" /></form></body></html>b.jsp<%@ page contentType="text/html;Charset=GB2312" %><%@ page import="tom.*" %><html><body><jsp:useBean id="countArea" class="tom.Rectangle" scope="page" /><jsp:setProperty name="countArea" property="length" param="length" /> <jsp:setProperty name="countArea" property="width" param="width" /> 面积:<jsp:getProperty name="countArea" property="area" /></body></html>Rectangle.javapackage tom;public class Rectangle{double length,width,area;public Rectangle(){length=0;width=0;}public void setLength(double l){length=l;}public double getLength(){return length;}public void setWidth(double w){width=w;}public double getWidth(){return width;}public double getArea(){area=length*width;return area;}}结果:“100”、“20”点击计算面积面积:2000.06.getNumber.jsp<%@ page contentType="text/html;Charset=GB2312" %><%@ page import="java.util.*" %><%@ page import="tom.GuessNumber" %><html><body><%int n=(int)(Math.random()*100)+1;%><jsp:useBean id="guess" class="tom.GuessNumber" scope="session" /><jsp:setProperty name="guess" property="answer" value="<%=n%>" /><% session.setAtribute("time",new Date()); %><p>随机给你一个1到100之间的数,请猜这个数是多少?<% String str=response.encodeRedirectURL("guess.jsp"); %><form action="<%=str%>" method="post">输入你的猜测:<input type="text" name="guessNumber" /><input type="submit" value="提交:" /></form></body></html>guess.jsp<%@ page contentType="text/html;Charset=GB2312" %><%@ page import="java.util.*" %><%@ page import="tom.GuessNumber" %><html><body><%String strGuess=response.encodeRedirectURL("guess.jsp");String strGetNumber=response.encodeRedirectURL("getNumber.jsp");%><jsp:useBean id="guess" class="tom.GuessNumber" scope="session" /><jsp:setProperty name="guess" property="guessNumber" param="guessNumber" /><br/><jsp:getProperty name="guess" property="result" />,这是第<jsp:getProperty name="guess" property="guessCount" />猜<p>你给出的数是:<jsp:getProperty name="guess" property="guessNumber" /> <%if (guess.isRight()==false){%><form action="<%=strGuess%>" method="post">再输入你的猜测:<input type="text" name="guessNumber" /><input type="submit" value="提交" /></form><%}elseout.println("<br/>您用的时间是"+((new Date()).getTime()-((Date)session.getAttribute("time")).getTime())/1000+"秒");%><br/><a href="<%=strGetNumber%>">链接到getNumbe.jsp重新玩猜数</a></body></html>GuessNumber.javapackage tom;public class GuessNumber{int answer,guessNumber,guessCount;String result=null;boolean right=false;public GuessNumber(){answer=0;guessNumber=0;guessCount=0;result=null;right=false;}public void setAnswer(int a){answer=a;guessCount=0;}public int getAnswer(){return answer;}public void setGuessNumber(int a) {guessNumber=a;guessCount++;if (guessNumber==answer){right=true;result="恭喜,猜对了";}else if (guessNumber>answer){result="猜大了";right=false;}else if (guessNumber<answer){result="猜小了";right=false;}}public int getGuessNumber(){return guessNumber;}public int getGuessCount(){return guessCount;}public String getResult(){return result;}public boolean isRight(){return right;}}习题6 JSP中的文件操作1.File类对象主要用来获取文件本身的一些信息,如文件所在的目录、文件的长度、文件的读写权限等。