JSP程序设计 第11章习题答案
- 格式:pdf
- 大小:169.04 KB
- 文档页数:6
jsp程序设计教程课后习题答案JSP程序设计教程课后习题答案在学习JSP程序设计的过程中,课后习题是非常重要的一部分,通过完成习题可以巩固所学的知识,并且提升自己的编程能力。
本文将为大家提供一些常见JSP程序设计课后习题的答案,希望能够对大家的学习有所帮助。
一、基础题1. 编写一个JSP页面,实现一个简单的计算器功能,用户输入两个数字和一个操作符(+、-、*、/),页面输出计算结果。
```jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="UTF-8"><title>计算器</title></head><body><form action="" method="post"><input type="text" name="num1" placeholder="请输入第一个数字"><br> <input type="text" name="num2" placeholder="请输入第二个数字"><br> <input type="text" name="operator" placeholder="请输入操作符"><br><input type="submit" value="计算"></form><%-- 获取用户输入的数字和操作符 --%><% int num1 = Integer.parseInt(request.getParameter("num1")); int num2 = Integer.parseInt(request.getParameter("num2")); String operator = request.getParameter("operator");%><%-- 根据操作符进行计算 --%><% double result = 0;if(operator.equals("+")){result = num1 + num2;} else if(operator.equals("-")){result = num1 - num2;} else if(operator.equals("*")){result = num1 * num2;} else if(operator.equals("/")){result = num1 / num2;}%><%-- 输出计算结果 --%><h1>计算结果: <%= result %> </h1></body></html>```2. 编写一个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。
第11章理解MVC习题答案1.简述Web应用中表示层的两种架构模式,并比较这两种模式的优缺点。
答案:Web应用中表示层的两种架构模式分别为:Model1和Model2。
●Model1的工作原理如下:(1)客户端发出请求,该请求由JSP页面接收。
(2)Java Bean用于实现业务模型,JSP根据请求与不同Java Bean进行交互。
(3)业务逻辑操作指定Java Bean并改变其模型状态。
(4)JSP将改变后的结果信息转发给客户端。
● Model2的工作原理如下:(1)Servlet接收客户端发出的请求。
(2)Servlet根据不同的请求调用相应的Java Bean。
(3)业务逻辑操作指定Java Bean并改变其模型状态。
(4)Servlet将改变后Java Bean的业务模型传递给JSP视图。
(5)JSP将后台处理结果呈现给客户端。
这两种模式的优缺点比较如下:● Model1适合快速开发小型应用,但是控制逻辑与表示逻辑耦合紧密。
在大型应用程序开发过程中,容易造成程序的可移植性差,不易维护。
●与Model1模式相比,Model2更适合开发大型应用程序。
在Model2中实现了业务逻辑与表示逻辑的分离,相应地提高了程序的可维护性。
但是在开发一些小型应用时,使用Model2可能会增加程序的复杂程度。
2.说明MVC设计模式中,M、V、C分别代表什么,有什么作用。
答案:M代表Model(模型),该组件是对软件所处理问题逻辑的一种抽象,封装了问题的核心数据,逻辑和功能实现,独立于具体的界面显示以及I/O操作。
V代表View(视图),该组件将表示模型数据,逻辑关系以及状态信息,以某种形式展现给用户。
视图组件从模型组件获得显示信息,并且对于相同的显示信息可以通过不同的显示形式或视图展现给用户。
C代表Controller(控制器),该组件主要负责用户与软件之间的交互操作,控制模型状态变化的传播,以确保用户界面与模型状态的统一。
第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课后习题及答案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.B.C.D.2. 用来建立有序列表的标签是()A.B.C.D.3. 用来插入图片的标签是()A.D.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.B.C.D.5. 用于为其他动作传送参数的动作是()B.C.D.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,/doc/2f6691220.html,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//doc/2f6691220.html,和。
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编程优点:能够更好的实现表⽰层,逻辑层和数据访问层的分离。
习题11 课后习题答案1.常见网络端口有哪些?答案:在计算机中操作系统内部使用1-1024保留端口号,所以设计应用程序时需选择除此之外的端口。
如:20文件传输协议(默认数据口) ,80全球信息网超文本传输协议(www)。
2.如何连接和读取URL中的资源?答案:(1)通过URLConnection连接WWW:用URL的openStream()方法从网络上读取数据,若要输出数据,用类URLConnection,与URL建立连接,然后对其进行读/写操作。
(2)用URL读取WWW数据资源:在取得一个URL对象后,通过使用URL的openStream()方法,可以获得所需的特定的WWW 资源。
3.什么是套接字?有哪几种套接字?答案:套接字Socket是网络通信的应用程序接口,可以实现客户机与服务器之间的通信。
常用的TCP/IP协议的3种套接字类型有:流套接字(SOCK_STREAM);数据包套接字(SOCK_DGRAM);原始套接字(SOCK_RAW)。
流套接字用于提供面向连接、可靠的数据传输服务。
该服务将保证数据能够实现无差错、无重复发送,并按顺序接收。
数据包套接字提供了一种无连接的服务。
该服务并不能保证数据传输的可靠性,数据有可能在传输过程中丢失或出现数据重复,且无法保证顺序地接收到数据。
原始套接字与标准套接字(标准套接字指的是前面介绍的流套接字和数据包套接字)的区别在于:原始套接字可以读写内核没有处理的IP数据包,而流套接字只能读取TCP协议的数据,数据包套接字只能读取UDP协议的数据。
因此,如果要访问其他协议发送数据必须使用原始套接字。
4.简述TCP套接字的实现过程?答案:实现TCP套接字基本步骤分为服务器端和客户端两部分。
(1)服务器端步骤创建套接字;绑定套接字;设置套接字为监听模式,进入被动接收连接请求状态;接收请求,建立连接;读/写数据;终止连接。
(2)客户端步骤创建套接字;与远程服务器程序连接;读/写数据;终止连接。
java程序设计第二版课后答案Java程序设计第二版课后答案涵盖了多个章节,每个章节都包含了不同的编程概念和练习题。
以下是一些常见章节的课后答案概要,以供参考:第1章:Java简介- 1.1 Java的起源和特点- 1.2 Java平台的组成- 1.3 Java开发环境的搭建第2章:基本语法- 2.1 数据类型- 2.2 变量声明- 2.3 运算符- 2.4 控制语句(if, switch, loop)第3章:控制流程- 3.1 条件语句(if-else, switch-case)- 3.2 循环语句(for, while, do-while)- 3.3 跳转语句(break, continue, return)第4章:数据结构- 4.1 数组的定义和使用- 4.2 字符串的处理- 4.3 集合框架简介第5章:面向对象编程- 5.1 类和对象- 5.2 构造方法- 5.3 继承- 5.4 封装和多态第6章:异常处理- 6.1 异常的概念- 6.2 异常的分类- 6.3 异常的处理方式(try-catch-finally)第7章:输入输出- 7.1 标准输入输出- 7.2 文件输入输出- 7.3 序列化第8章:Java集合框架- 8.1 集合的基本概念- 8.2 List接口及其实现- 8.3 Set接口及其实现- 8.4 Map接口及其实现第9章:泛型- 9.1 泛型的概念- 9.2 泛型的使用- 9.3 泛型的限制第10章:多线程- 10.1 线程的概念- 10.2 创建和启动线程- 10.3 线程的同步第11章:网络编程- 11.1 网络编程基础- 11.2 Socket编程- 11.3 URL和URLConnection第12章:图形用户界面- 12.1 AWT和Swing- 12.2 事件处理- 12.3 布局管理器第13章:Java数据库连接- 13.1 JDBC基础- 13.2 数据库连接和操作- 13.3 SQL语句的使用第14章:Java Web应用- 14.1 Servlet基础- 14.2 JSP技术- 14.3 MVC架构模式每个章节的课后答案通常包括理论问题和编程练习题的解答。
J a v a程序设计精编教程(第2版)习题解答(总18页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--习题解答习题一(第1章)1.James Gosling2.需3个步骤:1) 用文本编辑器编写源文件。
2) 使用javac 编译源文件,得到字节码文件。
3) 使用解释器运行程序。
3.set classpath=D:\jdk\jre\lib\;.;4. B5. Java 源文件的扩展名是.java ,Java 字节码的扩展名是.class 。
6.D 。
习题二(第2章)1.2.public class Teacher {double add(double a,double b) {return a+b;}double sub(double a,double b) {return a-b;}}height bottopublic class Student {public void speak() {"老师好");}}public class MainClass {public static void main(String args[]) {Teacher zhang=new Teacher();Student jiang=new Student();();}}3.如果源文件中有多个类,但没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是.java就可以了,如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是.java。
4.行尾风格。
习题三(第3章)1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。
标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。
true不是标识符。
2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。
11 MVC
11 MVC
1 Web
Web Model1 Model2
Model1
1 JSP
2 Java Bean JSP Java Bean
3 Java Bean
4 JSP
Model2
1 Servlet
2 Servlet Java Bean
3 Java Bean
4 Servlet Java Bean JSP
5 JSP
Model1
Model1 Model2 Model2 Model2
2 MVC M V C
M Model I/O
View
Controller
11 MVC
3 MVC
MVC MVC
MVC
URL
4 Spring MVC
Spring MVC
1 Http
2 Spring DispatcherServlet
3 DispatcherServlet
4 ModelAndView DispatcherServlet ModelAndView
5 DispatcherServlet ViewResolver
6 DispatcherServlet View
7 View Http
5 Struts2
“sunyang “1234
1 Web login commons-logging-1.0.4.jar freemarker-2.3.8.jar ognl-2.6.11.jar struts2-core-2.0.11.jar xwork-2.0.4.jar 5
11 MVC
2 web.xml Struts2 FilterDispatcher
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="/xml/ns/javaee"
xmlns:xsi="/2001/XMLSchema-instance"
xsi:schemaLocation="/xml/ns/javaee
/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
3 com LoginAction.java
public class LoginAction {
private String username; //
private String password; //
public String getUsername() {
return username;
}
public void setUsername(String username) {
ername = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
11 MVC
this.password = password;
}
public String execute() {
// sunyang 1234
if(username.equals("sunyang")&&password.equals("1234"))
return "loginSuccess";
else
return "loginError";
}
}
4 src Struts2 struts.xml loginAction struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"/dtds/struts-2.0.dtd">
<struts>
<package name="sunyang" extends="struts-default">
<!-- Action -->
<action name="login" class="com.LoginAction">
<!-- Action success.jsp -->
<result name="loginSuccess">/success.jsp</result>
<!-- Action front.jsp -->
<result name="loginError">/error.jsp</result>
</action>
</package>
</struts>
5 WebRoot login.jsp success.jsp error.jsp
login.jsp
<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
<s:form action="login">
<s:textfield name="username" label=" "/>
<s:password name="password" label=" "/>
<s:submit value=" "/>
<s:reset value=" "/>
11 MVC
</s:form>
</body> </html>
success.jsp
<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<body> <s:property value="username"/>!
</body>
</html>
error.jsp
<%@ page language="java" contentType="text/html; charset=GBK"%> <html> <body>
<center>
<a href="login.jsp"> </a>
</center> </body>
</html>
6
“sun “123
11 MVC
“sunyang “1234。