Javaweb学习(六)JavaBean技术

JavaBean技术

题量: 16 满分: 100

作答时间:11-09 19:22至12-30 19:22

重做

100分

一. 单选题(共8题,49.6分)

1.不是JavaBean属性的项为( )。

A. constrained属性

B. id属性

C. bound属性

D. simple属性

我的答案: B正确答案: B

2.下面哪项是错误的设置Bean属性值的方法( )

A. <jsp:setPropertyname=\”beanInstanceName\” property= \”*\” />

B. <jsp:setPropertyname=\”beanInstanceName\”

property=\”propertyName\”value=\”123\”/>

C. <jsp:setPropertyname=\”beanInstanceName\”

property=\”propertyName\”param=\”parameterName\” />

D. <jsp:setPropertyname=\”beanInstanceName\”

property=\”*\” value=\”{string |<%= expression %>}\”/>

我的答案: D正确答案: D

3.在JSP中,使用<jsp:useBean>动作可以将javaBean嵌入JSP页面,对JavaBean的访问范围不能是( )

A. page

B. request

C. response

D. application

我的答案: C正确答案: C

4.关于JavaBean正确的说法是( )

A. Java文件与Bean所定义的类名可以不同,但一定要注意区分字母的大小写

B. 在JSP文件中引用Bean,其实就是用<jsp:useBean>语句

C. 被引用的Bean文件的文件名后缀为.java

D. Bean文件放在任何目录下都可以被引用

我的答案: A正确答案: A

5.JavaBean的scope取值( )可使该javabean被多个用户共享,即和web应用有相同的生命周期。

A. page

B. request

C. session

D. application

我的答案: D正确答案: D

6.下列( )作用范围的Bean,当客户离开这个页面时,JSP引擎取消为客户该页面分配的Bean,释放他所占的内存空间。

A. application

B. request

C. page

D. session

我的答案: C正确答案: C

7.JavaBean的属性可以使用( )来访问

A. 属性

B. get()和set()方法

C. 事件

D. Scriptlet

我的答案: B正确答案: B

8.不是JavaBean作用域的项为( )

A. bound

B. page

C. request

D. application

我的答案: A正确答案: A

二. 多选题(共3题,18.6分)

9.某JSP程序中声明使用javaBean的语句如下

<jsp:useBean id=”user” class=”mypackage.User” scope=”page”/>

要取出该javaBean的loginName属性值,以下语句正确的是( )。

A. <jsp:getProperty name=\”user\” property=\”loginName\”/>

B. <jsp:getProperty id=\”user\” property=\”loginName\”/>

C. <%=user.getLoginName()%>

D. <%=user.getProperty(\”loginName\”)%>

我的答案: AC正确答案: AC

10.下列关于getProperty标准动作的说法正确的是( )

A. 当JavaBean不存在所访问的属性时,显示null

B. 当JavaBean不存在所访问的属性时,发生异常

C. getProperty标准动作实际上是调用对应属性的get方法

D. 以上都不对

我的答案: BC正确答案: BC

11. 使用JavaBean的好处有( )

A. JavaBean拥有标准化接口的优点,在开发期有可视化编程工具的支持,在运行期有JSP和J2EE连接器的支持。

B. JavaBean更明确的把WEB页面的设计和软件的设计区分开来。

C. JavaBean可以在多个应用程序中重用。

D. JavaBean可以实现安全性、事务行为、并发性和持久性。

我的答案: ABC正确答案: ABC

三. 填空题(共4题,24.8分)

12.[填空(1)]操作可以定义一个具有一定生存范围以及一个唯一id的JavaBean的实例。

我的答案:

(1)<jsp:useBean>

正确答案:

(1) <jsp:useBean>

13.[填空(1)]和JSP相结合,可以实现表现层和商业逻辑层的分离。

我的答案:

(1)JavaBean

正确答案:

(1) JavaBean

14.Request对象中用来获得服务器的端口号的方法是[填空(1)]

我的答案:

(1)getServerPort(String name)方法

正确答案:

(1) getServerPort(String name)方法

15. JavaBean有四个scope,它们分别为[填空(1)]、request、session和

application。

我的答案:

(1)page

正确答案:

(1) Page

四. 判断题(共1题,7分)

16.JavaBean的属性必须声明为public,方法必须声明为private访问类型。

A. 对

B. 错

我的答案: 错正确答案: 错

JSP运行原理及运行过程

JSP的工作模式是请求/响应模式,客户端首先发出HTTP请求,JSP程序收到请求后将进行处理并返回处理结果。在一个JSP文件第一次被请求的时候,JSP引擎(容器)把该JSP文件转换成一个Servlet,而这个引擎本身也是一个Servlet。JSP的运行原理如图11-4所示。

图11-4 JSP的运行原理

  JSP的运行过程具体如下。

  (1)客户端发出请求,请求访问JSP文件。

  (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果发现JSP文件中存在任何语法错误,则中断转换过程,并向服务端和客户端返回出错信息。

  (3)如果转换成功,则JSP容器会将生成的Java源文件编译成相应的字节码文件*.class。该class文件就是一个Servlet,Servlet容器会像处理其他Servlet一样处理它。

  (4)由Servlet容器加载转换后的Servlet类(class文件)创建一个该Servlet(JSP页面的转换结果)的实例,并执行Servlet的jspInit()方法。jsInit()方法在Servlet的整个生命周期中只会执行一次。

  (5)执行jspService()方法处理客户端的请求。对于每一个请求,JSP容器都会创建一个新的线程处理它。如果多个客户端同时请求该JSP文件,则JSP容器会创建多个线程,使每一个客户端请求都对应一个线程。

  (6)如果JSP文件被修改了,则服务器将根据设置决定是否对该文件重新进行编译,如果需要重新编译,则使用重新编译后的结果取代内存中的Servlet,并继续上述处理过程。需要注意的是,虽然JSP效率很高,但在第一次调用时往往由于需要转换和编译,所以会产生一些轻微的延迟。

  (7)如果系统出现资源不足等问题,JSP容器可能会以某种不确定的方式将Servlet从内存中移除,发生这种情况的时候,首先会调用jspDestroy()方法,然后Servlet实例会被作为“垃圾”进行处理。

  (8)当请求处理完成后,响应对象由JSP容器接收,并将HTML格式的响应信息发送回客户端。

jsp原理详解

jsp

1 什么是JSP

Java Server Pages : Java服务器端页面,也和Servlet一样,用于动态web技术!

最大的特点:

写Jsp就像写HTML

区别:

HTML只给用户提供静态的数据

JSP页面中可以嵌套Java代码,为用户提供动态数据

2 jSP原理

思路: JSP到底怎么执行的!

代码层面没有任何问题

服务器内部 工作

tomcat 中有一个work目录

idea中使用tomcat会在idea中产生一个work目录

这个是 idea tomcat的工作空间

路径:

浏览器向服务器发送请求,不管访问什么资源,起始都是在访问Servlet

JSP最终也会被转换成为一个Java类

JSP本质上就是一个Servlet

1.判断请求

2.内置对象

3.输出页面前增加的代码

以上的这些个对象我们可以在JSP页面中直接使用

jsp原理图

在JSP页面中;

只要是Java代码就会原封不动的输出

如果是HTML代码,就会被转换

这样的格式,输出到前端

3 JSP基础语法

任何语言都有自己的语法,Java中有,JSP作为Java技术的一种应用,它拥有一些自己的扩容的语法,Java所有语法都支持

JSP表达式

述(最多18字

jsp 脚本片段

脚本片段的实现

JSP声明

JSP声明: 会被编译到JSP生成Java类中! 其他的,就会被生成到 _jspService 方法中

在JSP中嵌入Java代码即可

jsp的注释,不会在客户端显示,HTML就会

4 JSP指令

总结:

在实际开发中建议使用 下面 jsp:include/的方式

如果使用上面那一种的话 如果在header.jsp或者在footer.jsp中声明了 int a=1; 又在当前jsp中声明了相同的变量 在jsp页面不会报错,去了浏览器里面 就报错了。

所以建议使用 jsp标签 进行页面拼接

5 九大内置对象

>PageContext 存东西

>Request 存东西

>Response

>Session 存东西

>Application 【ServletContext 】 存东西

>config 【ServletConfig】

>out

>page

>exception

equest:客户端向服务器发送请求,产生的数据,用户看完了就没作用了,比如:新闻 用户看完了没作用了。

session:客户端向服务器发送请求,产生的数据,用户用完了一会还有用,比如:购物车;

application:客户端向服务器发送请求,产生的数据,一个用户用完了,其他用户还可能使用:比如:聊天数据

6 JSP标签 JSTL标签 EL表达式

开始之前导入所学的依赖

EL表达式: ${ }

>获取数据

>执行运算

>获取web开发的常用对象

JSP 标签

发送:

接收:

JSTL 表达式

JSTL表达式的使用就是为了弥补HTML标签的不足;它自定义许多标签,供我们使用,标签的功能和Java代码一样

核心标签

JSTL 标签库使用步骤

引入对应的taglib

使用其中的方法

在Tomcat也需要引入jstl的包,否则会报错

c:if

c:choose c:when

c:forEach

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。