jsp测试题:

jsp测试选择题
题号 答案
1 C
2 A
3 A
4 A
5 A
6 A
7 B
8 C
9 B
10 A
11 A
12 A
13 A
14 A
15 C

简答题:

1.在JSP中,<% int a = 3; %><%! int b = 3; %>中定义的变量有何不同?若要在某一JSP页面中定义一个方法void f() 应用什么样的语法? 

答:a为局部变量,b为全局变量;

定义语法:

<%!

修饰符 返回值 函数名(参数){

    函数体....

%>

2.Jsp中的静态包含与动态包含语法以及区别是什么?

答:静态包含:<%@ include file="被包含的文件地址"%>

动态包含:

区别:

1静态包含将多个页面的内容合并后输出,多个jsp页面生成一个java文件,编译成一个class文件;

动态包含将多个页面的内容合并后输出,多个jsp页面生成多个java文件,编译成多个class文件(被包含的页面编译处理后将结果包含在页面中)。

2静态包含只能引入遵循JSP格式的文件,被引入文件与当前JSP文件需要共同合并才能翻译成一个Servlet源文件;

动态包含要引入的资源与当前JSP页面是两个彼此独立的执行实体,即被动态引入的资源必须能被Web容器独立执行。

3静态包含引入的资源是在编译时期包含的,包含的是源代码; 动态包含引入的资源是在运行时才包含的,而且只包含运行结果。

4静态包含在编写代码的时候一般放在最顶部,主要附加的是被重用的代码;

动态包含导入一个重用文件的时候,这个文件是经过编译的,通俗点说就是附加这个要导入文件经过编译后的效果,所以可以含有与当前jsp程序中重复的内容,因为在附加过来之前就会被解析掉。

5静态包含可以认为 这两个页面代码是写在同一个页面里; 动态包含:当向这个页面发出请求后。会转发到 include的哪个页面去执行。 执行完了后又接着执行本页面余下的代码。

3.简述jsp九大内置对象以及其对应的功能

答:request内置对象:request内置对象中包含了有关浏览器请求的信息,并提供了多个用于获取cookie、header以及session内数据的方法。

response内置对象:它是用于响应客户请求,向客户端输出信息。

page内置对象:就是指当前JSP页面本身

session内置对象:session是与请求有关的会话期,用来表示和存储当前页面的请求信息。

application内置对象:application用于实现用户之间的数据共享(多使用于网络聊天系统)。

out内置对象:用于向页面输出打印信息;

exception内置对象:exception内置对象是用来处理页面出现的异常错误

config内置对象:在Servlet初始化的时候,JSP引擎通过config向它传递信息。

pageContext内置对象:使用它可以访问到本页面中所有其他对象

4.简述转发和重定向的区别

答:转发使用的是request对象,当浏览器请求到达servlet时候不会结束,而是等待处理完成之后继续跳转一次页面,因为request是一个作用域,故可以将信息携带到指定的参数到指定的页面中去。

当请求传达到servlet的时候,我们会同样可以通过response对象去跳转到新的页面,但是这种跳转不能携带参数,因为response没有域对象,相当于服务器重新做了一个新的url,和原来的对象没有什么关系了,实际上发生了新的资源定位,重定向发生了两次的资源的跳转

5.简述session与cookie的区别

答:作用范围不同,Cookie 保存在客户端(浏览器),Session 保存在服务器端。

存取方式的不同,Cookie 只能保存 ASCII,Session 可以存任意数据类型,一般情况下我们可以在 Session 中保持一些常用变量信息,比如说 UserId 等。

有效期不同,Cookie 可设置为长时间保持,比如我们经常使用的默认登录功能,Session 一般失效时间较短,客户端关闭或者 Session 超时都会失效。

隐私策略不同,Cookie 存储在客户端,比较容易遭到不法获取,早期有人将用户的登录名和密码存储在 Cookie 中导致信息被窃取;Session 存储在服务端,安全性相对 Cookie 要好一些。

存储大小不同, 单个 Cookie 保存的数据不能超过 4K,Session 可存储数据远高于 Cookie。

6.简述servlet的生命周期

答:共三个步骤即:初始化------>处理请求------>销毁

创建Servlet对象后---------->初始化(调用 init () 方法)--------->处理/响应客户端的请求(调用 service() 方法)--------->销毁(调用 destroy() 方法,最后由 JVM 的垃圾回收器进行垃圾回收)

7.简述filter的执行过程

答:Filter对用户请求进行预处理,接着将请求交给Servlet进行处理并生成响应,最后Filter再对服务器响应进行后处理。

8.在servlet如何获取application,session,config?

答:session可以通过request.getSession();来获取

application可以通过this.getServletContext()来获取

Config可以通过this.getServletConfig ()来获取;

9.简述tomcat 各个目录的功能

答:bin目录主要是用来存放tomcat的命令

conf目录主要是用来存放tomcat的一些配置文件。

lib目录主要用来存放tomcat运行需要加载的jar包。

logs目录用来存放tomcat在运行过程中产生的日志文件,非常重要的是在控制台输出的日志。

temp目录用户存放tomcat在运行过程中产生的临时文件。

webapps目录用来存放应用程序,当tomcat启动时会去加载webapps目录下的应用程序。可以以文件夹、war包、jar包的形式发布应用

work目录用来存放tomcat在运行时的编译后文件,例如JSP编译后的文件。 
清空work目录,然后重启tomcat,可以达到清除缓存的作用。

10.简述jsp的执行过程

答: 当用户通过浏览器访问Tomcat上的JSP页面时,Web应用服务器使用JSP引擎对该页面进行编译 (.class文件)和 执行 ,然后将执行结果(静态页面代码)返回给客户端浏览器,最后浏览器解释执行返回的结果呈现给用户。

编程题:

jsp测试题:_第1张图片

 

SELECT sno ,

    MAX(CASE course WHEN '数学' THEN score ELSE 0 END ) 数学,

    MAX(CASE course WHEN '英语' THEN score ELSE 0 END ) 英语

FROM sc

GROUP BY sno;

你可能感兴趣的:(web作业,servlet,java,开发语言)