jsp程序设计(第2版)习题解答,含题目资料
更新时间:2024-06-02 13:22:01 阅读量: 综合文库 文档下载
- JSP程序设计(第2版)推荐度:
- 相关推荐
习题一
1.怎么启动和关闭Tomcat服务器
答:确保Tomcat服务器使用的是Java_home环境变量设置的JDK。 3.怎样访问Web服务目录子目录中的JSP页面
答:Web服务目录的下的目录称为该Web服务目录下的相对Web服务目录。浏览器的地址栏中键入:http://IP:8080/Web目录名字/子目录名字/JSP页面。
4.如果想修改Tomcat服务器的端口号,应当修改哪个文件?能否将端口号修改为80?
答:修改Tomcat服务器安装目录中conf文件夹中的主配置文件:server.xml,只要没有其他应用程序正在占用80,就可以将端口号设置为80。
习题二
1.“<%!”和“%>”之间声明的变量与“<%”和“%>”之间声明的变量与有何不同 答:“<%!”和“%>”之间声明的变量在整个JSP页面内都有效,称为JSP页面的成员变量,成员变量的有效范围与标记符号<%!、%>所在的位置无关。所有用户共享JSP页面的成员变量,因此任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。
“<%”和“%>”之间声明的变量称为局部变量,局部变量在JSP页面后继的所有程序片以及表达式部分内都有效。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。当一个线程将Java程序片执行完毕,运行在该线程中的Java程序片的局部变量释放所占的内存。
2.如果有两个用户访问一个JSP页面,该页面中的Java程序片将被执行几次?答:两次。 5.请编写一个简单的JSP页面,显示大写英文字母表。 答:<%@ page contentType=\
<%for(char c='A';c<='Z';c++) {
out.print(\ } %>
6.请简单叙述include指令标记和include动作标记的不同。
答:include指令标记的作用是在JSP页面出现该指令的位置处,静态插入一个文件,即JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。因此,插入文件后,必须保证新合并成的JSP页面符合JSP语法规则,即能够成为一个JSP页面文件。include动作标记告诉JSP页面动态加载一个文件,不把JSP页面中动作指令include所指定的文件与原JSP页面合并一个新的JSP页面,而是告诉Java解释器,这个文件在JSP运行时(Java文件的字节码文
1
件被加载执行)才被处理。如果包含的文件是普通的文本文件,就将文件的内容发送到客户端,由客户端负责显示;如果包含的文件是JSP文件,JSP引擎就执行这个文件,然后将执行的结果发送到客户端,并由客户端负责显示这些结果。 7.编写两个JSP页面:main.jsp和lader.jsp,将两个JSP页面保存在同一Web服务目录中。main.jsp使用include动作标记动态加载lader.jsp页面。lader.jsp页面可以计算并显示梯形的面积。当lader.jsp被加载时获取main.jsp页面中include动作标记的param子标记提供的梯形的上底、下底和高的值。 答:main.jsp:
<%@ page contentType=\
lader.jsp:
<%@ page contentType=\
<%String strA=request.getParameter(\ String strB=request.getParameter(\ String strH=request.getParameter(\ double a=Double.parseDouble(strA); double b=Double.parseDouble(strB); double h=Double.parseDouble(strH); double area=(a+b)*h/2; %>
梯形面积:<%=area%>
习题三
1. 用户可以使用浏览器直接访问一个Tag文件吗?答:不可以 2.Tag文件应当存放在怎样的目录中?
答:如果某个Web服务目录下的JSP页面准备调用一个Tag文件,那么必须在该Web服务目录下,建立目录:Web服务目录\\WEB-INF\\tags,其中,WEB-INF和tags都是固定的子目录名称,而tags下的子目录名字可由用户给定。一个Tag文件必须保存到tags目录或其下的子目录中。
2
3.Tag文件中的tag指令可以设置哪些属性的值? 答:body-content、language、import、pageEncoding 。 4.Tag文件中的attribute指令有怎样的作用?
答:使用attribute指令可以动态地向该Tag文件传递对象的引用。 5.Tag文件中的varibute指令有怎样的作用?
答:使用variable指令可以将Tag文件中的对象返回给调用该Tag文件的JSP页面。
6.编写两个Tag文件Rect.tag和Circle.tag。Rect.tag负责计算并显示矩形的面积,Circle.tag负责计算并显示圆的面积。编写一个JSP页面lianxi6.jsp,该JSP页面使用Tag标记调用Rect.tag和Circle.tag。调用Rect.tag时,向其传递矩形的两个边的长度;调用Circle.tag时,向其传递圆的半径。
答:Lianxi6.jsp:
<%@ page contentType=\<%@ taglib tagdir=\
以下是调用Tag文件的效果:
这是一个Tag文件,负责计算矩形的面积。 <%@ attribute name=\<%@ attribute name=\ <%!
public String getArea(double a,double b) { if(a>0&&b>0) {
double area=a*b ;
return \矩形的面积:\ } else
{ return(\不能构成一个矩形,无法计算面积\ } } %>
<% out.println(\页面传递过来的两条边:\ double a=Double.parseDouble(sideA); double b=Double.parseDouble(sideB); out.println(getArea(a,b)); %> Circle.tag:
这是一个Tag文件,负责计算园的面积。
3
<%@ attribute name=\ <%!
public String getArea(double r) { if(r>0)
{
double area=Math.PI*r*r ; return \圆的面积:\ } else
{ return(\不能构成一个圆,无法计算面积\ } } %>
<% out.println(\页面传递过来的半径:\ double r=Double.parseDouble(radius); out.println(getArea(r)); %>
7.编写一个Tag文件GetArea.tag负责求出三角形面积,并使用variable指令返回三角形的面积给调用该Tag文件的JSP页面。JSP页面负责显示Tag文件返回的三角形的面积。JSP在调用Tag文件时,使用attribute指令将三角形三边的长度传递给Tag文件。one.jsp和two.jsp都使用Tag标记调用GetArea.tag。one.jsp将返回三角形的面积保留最多3位小数、two.jsp将返回的三角形面积保留最多6位小数。 答:one.jsp:
<%@ page contentType=\<%@ page import =\
<%@ taglib tagdir=\
NumberFormat f=NumberFormat.getInstance(); f.setMaximumFractionDigits(3); double result=area.doubleValue(); String str=f.format(result); out.println(str); %> two.jsp:
<%@ page contentType=\<%@ page import =\
4
<%@ taglib tagdir=\
NumberFormat f=NumberFormat.getInstance(); f.setMaximumFractionDigits(6); double result=area.doubleValue(); String str=f.format(result); out.println(str); %> GetArea.tag:
<%@ attribute name=\<%@ attribute name=\<%@ attribute name=\
<%@ variable name-given=\ <%
double a=Double.parseDouble(sideA); double b=Double.parseDouble(sideB); double c=Double.parseDouble(sideC); if(a+b>c&&a+c>b&&c+b>a) { double p=(a+b+c)/2.0;
double result=Math.sqrt(p*(p-a)*(p-b)*(p-c)) ; jspContext.setAttribute(\ } else
{ jspContext.setAttribute(\ } %>
习题四
2.页面接收汉字信息所做的处理?
答:将获取的字符串用ISO-8859-1进行编码,并将编码存放到一个字节数组中,然后再将这个数组转化为字符串对象。
3.编写两个jsp页面inputString.jsp和computer.jsp,用户可以使用inputstring.jsp提供的表单输入一个字符串,并提交给computer.jsp,该页面通过内置对象获取inputstring.jsp页面提交的字符
5
串,并显示该字符串的长度。 答:inputString.jsp:
<%@ page contentType=\
computer.jsp:
<%@ page contentType=\
<% String textContent=request.getParameter(\ byte b[]=textContent.getBytes(\ textContent=new String(b); %>
字符串:<%=textContent%>的长度:<%=textContent.length()%>
4.Response调用sendRdirect(URL)方法的作用是什么?答:实现用户的重定向。
习题五
1. File对象能读写文件吗? 答:不能
2.File对象怎样获取文件的长度? 答:调用public long length()方法。 4. RandomAccessFile类创建的流在读/写文件时有什么特点?
答:RandomAccessFile类既不是输入流类InputStream类的子类,也不是输出流类Outputstream类的子类。想对一个文件进行读写操作时,可以创建一个指向该文件的RandomAccessFile流,这样我们既可以从这个流中读取这个文件的数据,也可以通过这个流给这个文件写入数据。
5. 编写两个JSP页面input.jsp和read.jsp,input.jsp通过表单提交一个目录和该目录下的一个文件名给read.jsp,read.jsp根据input.jsp提交的目录和文件名调用Tag文件Read.jsp读取文件的内容。答:input.jsp:
<%@ page contentType=\
read.jsp:
<%@ page contentType=\<%@ taglib tagdir=\
<%String s1=request.getParameter(\ String s2=request.getParameter(\ if(s1.length()>0&&s2.length()>0) {
%>
<% } %> Read.tag:
<%@ tag pageEncoding=\<%@ tag import=\
<%@ attribute name=\<%@ attribute name=\<%@ variable name-given=\<%
StringBuffer str=new StringBuffer(); try{
File f=new File(dirName,fileName); FileReader in=new FileReader(f);
BufferedReader bufferin=new BufferedReader(in); String temp;
while((temp=bufferin.readLine())!=null) { str.append(temp); }
bufferin.close(); in.close(); }
catch(IOException e) 7
{
str.append(\ }
jspContext.setAttribute(\%>
习题七
1.设WEB服务目录mymoon中的JSP页面要使用一个bean,该bean的包名为blue.sky。请说明,应当怎样保存bean的字节码。
答:把创建bean的字节码保存到 mymoon\\WEB-INF\\classes\\blue\\sky中。
2.一个名字为moon的bean,该bean有一个String类型、名字为number的属性。如果创建moon的java类没有提供public String getNumber()方法,在JSP页面中是否允许使用getProperty标记获取moon的number属性的值。答:不允许。
习题八
1.Servlet对象是在服务器端还是在用户端被创建?答:在服务器端。
2.Servlet对象被创建后将首先调用init方法还是service方法?答:首先调用init方法。
2. 假设创建servlet的类是star.flower.Dalian,创建的servlet对象的名字是myservlet,应当怎样
配置web.xml文件?答:要在web.xml中添加如下内容:
5.如果Servlet类不重写service方法,那么应当重写那两个方法? 答:doGet和doPost方法。 6. HttpServletResponse类的sendRedirect方法和RequestDispatcher类的forward方法有何不同? 答:HttpServletResponse类的sendRedirect方法可以把用户重新定向到其他页面或servlet,但是不能将用户对当前JSP页面或servlet的请求和响应(HttpServletRequest对象和HttpServletResponse对象)传递给所重新定向JSP页面或servlet。RequestDispatcher对象使用forward方法可以把用户对当前JSP页面或servle的请求转发给另一个JSP页面或servlet,而且将用户对当前JSP页面或servlet的请求和响应(HttpServletRequest对象和HttpServletResponse对象)传递给所转发的JSP页面或servlet。也就是说,当前页面所要转发的目标页面或servlet对象可以使用request获取用户提交的数据。
7.Servlet对象怎样获得用户的session对象?
答:HttpServletRequest对象request调用getSession方法获取用户的session对象
8
习题九
1.MVC模式中的数据模型的角色由谁担当? 答:Javabean。 2. MVC模式中的控制器的角色由谁担当?答:Servlet。 3.MVC模式中的视图色由谁担当?答:JSP页面。 4.MVC的优点:
答:MVC结构可以使Web程序更具有对象化特性,也更容易维护。 5.MVC模式中的javabean是由谁创建的? 答:由servlet负责创建。
9
正在阅读:
施工组织计划范本09-04
门禁考勤系统-维护及故障分析12-19
南京师范大学中北学院就业工作自检报告05-23
2011经济师考试中级房地产大纲05-10
初中生知法懂法守法讲话稿优选例文04-04
新闻英语的标题的特点05-13
二手房房源描述经典05-28
2号机EH油循环方案解析09-29
人口迁移_高中地理必修二07-23
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 习题
- 程序设计
- 题目
- 解答
- 资料
- jsp
- 青岛版小学数学一年级下册《厘米的认识》说课稿
- 16天记住700考研英语单词
- 2015电力电子课程设计题目
- 第1课时 整十数乘整十数及两位数乘整十数口算 台儿庄 实验小学
- 江苏农村商业银行招聘考试公共基础复习题库
- 初中科学知识点总结(最完整的知识点大全)
- 整理版《广播电视基础知识》汇总
- 2013年11月份我国网络不良与垃圾短信息分析报告
- 品牌项目部设备与环保管理考核标准
- 2016-2021年中国醋酸甲泼尼龙市场发展战略及投资前景预测咨询报
- 机加工车间及辅房建筑电气安装工程
- 新时代交互英语读写译答案更新1-4
- 四年级下册语文改写句子练习题
- 2017年安徽省中考历史预测试题(一)(含答案)
- 法律硕士辅:对外观设计侵权行为的认定
- 青海事业单位考试公共基础知识:公文之函的分类
- 兽医传染病学复习资料
- 句容经济开发区村庄拆迁的做法与经验
- 河南省建设厅关于进一步加强烧结制品确认管理工作的通知
- 教师科研启动项目总结报告