Web应用程序设计案例教程第11章
- 格式:ppt
- 大小:1.41 MB
- 文档页数:23
第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(控制器),该组件主要负责用户与软件之间的交互操作,控制模型状态变化的传播,以确保用户界面与模型状态的统一。
第11章练习与实验答案练习111.选择题(1)B (2)D (3)D (4)B (5)D (6)B2.填空题(1)<caption></caption>、<tr></tr>、<th></th>(2)rowspan、3;colspan、5(3)frame、rules(4) cellpadding 、cellspacing3.简答题答案略,见教材。
实验111.代码:<!-- exp_11_1.html --><html><head><title> 表格实验</title><style type="text/css">table{border:10px groove #ff0000;}td{border:1px solid black ;text-align:center;} </style></head><body><table width=300 border="1" align=center ><tr><td rowspan="2" ><b>A</b></td><td colspan="2" height="100" ><b>B</b></td> <tr align="center"><td height="100"><b>E</b></td><td rowspan="2"><b>C</b></td><tr align=center><td colspan="2" height="100"><b>D</b></td> </tr></table></body></html>2.代码<!-- exp_11_2.html --><html ><head><title>div应用实例——计算器布局</title><style type="text/css">#wrap{width:410px;height:420px;background-color:rgb(230,230,130);z-index:0;}#result{height:60px;width:390px;border:solid 1px;z-index:1;position:absolute;top:50px;left:20px;background-color:white;}#op{height:280px;width:390px;border:solid 1px;z-index:1;position:absolute;top:115px;left:20px;}.d_num{border:solid 1px black;width:58px;height:40px;margin:10px; /*margin表示边距,在8.5CSS盒模型介绍*/cursor:pointer; /*设置鼠标指针变成手的形状*/}</style></head><body><div id="wrap"><img src="casio.bmp"></img><div id="result"></div><div id="op"><table cellspacing="30"><tr align="center"><td class="d_num">1</td><td class="d_num">2</td><td class="d_num">3</td><td class="d_num">+</td></tr><tr align="center"><td class="d_num">4</td><td class="d_num">5</td><td class="d_num">6</td><td class="d_num">-</td></tr><tr align="center"><td class="d_num">7</td><td class="d_num">8</td><td class="d_num">9</td><td class="d_num">*</td></tr><tr align="center"><td class="d_num">0</td><td class="d_num">=</td><td class="d_num">CE</td><td class="d_num">/</td></tr></table></div></div></body></html>。
第11章参考答案1. 请编写一个JavaScript程序,将一个摄氏温度值转换为一个华氏温度值,并将转换的结果输出在页面上,要求输出的转换结果包含在一个具有描述性的语句中。
摄氏温度转换为华氏温度的公式为:华氏温度= 9 / 5 * 摄氏温度+ 32。
参考代码:<!DOCTYPE HTML><html><head><meta charset="UTF-8"><title>摄氏度转为华氏度</title></head><body><script>var cTemp = 100;var hTemp = ((cTemp*9)/5) + 32;document.write("摄氏度:"+ cTemp);document.write("</br>");document.write("华氏度:"+ hTemp);</script></body></html>2. 使用switch语句,判断表达式的数值是否为‘one’、‘tow’或‘three’,当表达式为‘one’或‘two’时,将变量值设置为‘Yes’;当表达式为‘three’时,将变量值设置为‘No’;如果没有匹配的值,将变量值设置为‘None’。
参考代码:<!DOCTYPE HTML><html><head><title> Switch语句</title><script>function funcSwitch(sFlag){switch(sFlag){case "one":alert("Yes");break;case "tow":alert("Yes");break;case "three":alert("No");break;default:;}}funcSwitch("one");</script></head><body></body></html>3. 请使用document.write( )方法,输出12的乘法表,输出结果如下所示:12 x 1 = 1212 x 2 = 2412 x 3 = 36……12 x 11 = 13212 x 12 = 144参考代码:<!DOCTYPE HTML><html><head><meta charset=utf-8" /><title>乘法表2</title></head><body><script type="text/javascript">var s=0;for (var i=1; i<=12; i++){s = 12*i;document.write("12 x”+ i +” = "+ s +”<br>”);}</script></body></html>4. 将习题3中的代码修改为一个函数,用于计算某个数的乘法表,这个数作为函数的一个参数传入,另外,函数还有两个参数,分别表示乘法表的起始值和终止值。
Java Web 程序设计教程(范立锋、林果园编著)第11章 Spring框架入门习题答案1.Spring框架有哪些突出的优点?Spring框架技术之所以受到广泛的欢迎和使用,与其自身的特点有密切联系:开源:自从Spring框架问世之初,它就是一个开放源代码的框架。
而正是由于这一点,才使得它能够被更多的Java开发人员所研究、使用,并不断得以完善、发展。
轻量级:Spring无论是大小还是系统开销都算是轻量级的,整个框架可以被压缩在几M的JAR包中,应用中处理Spring的开销也微乎其微。
方便解耦:Spring提倡通过控制反转(IoC)技术实现松耦合。
通过Spring中的IoC容器管理各个对象之间的依赖关系,能够有效避免硬性编码造成的耦合过于紧密的状况。
面向切面编程(AOP):Spring对面向切面编程提供了良好的支持,通过Spring提供的AOP功能,可以轻松实现业务逻辑与系统服务(例如日志,事务等)的分离。
因此,开发人员能够更加专注于业务逻辑实现。
方便集成其它框架:Spring框架允许集成其它多种框架共同进行开发设计,例如Hibernate、Struts、Struts 2、Ibatis等。
2.Spring框架由哪7个模块组成?关于Spring架构中各个模块实现的功能说明如下:核心模块(Core):该模块是整个框架的最基本组成部分,它提供了依赖注入的功能以及对Bean容器的管理功能。
通过依赖注入,使得类与类之间不再由硬性编码方式发生关系,而是通过配置实现这一过程,降低了各个类之间耦合的紧密度。
Spring框架提供的BeanFactory接口,进一步消除了应用对工厂的依赖。
AOP模块(AOP):该模块提供了对AOP的支持,允许以面向切面的方式开发程序。
同时Spring框架提供了AspectJ的整合。
上下文模块(Context):该模块构建于核心模块之上,提供了对Bean的框架式访问。
该模块还扩展了BeanFactory功能。