江西农业大学jsp基础重点知识

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38230811/article/details/80906636

理解Jsp的include指令

<%@include file = “url”%>

执行特点:1)先包含,后执行

2)不识别被包含页面的类型

问题及解决方案:

1)被包含页面不能存在HTML的主标签

2)在被包含页面中不能有和当前页面相同的变量定义

理解Jsp的include标签和forward标签

1)include标签用于把另外一个资源的输出内容插入进当前JSP页面的输出内容之中,这种在JSP页面执行时的引入方式称之为动态引入。

2)forward从一个JSP文件传递request信息到另外一个JSP文件,<jsp:forward>后面的部分将不会被执行。

理解HTTP协议

基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用

理解Tomcat的目录

Bin:存放启动和关闭tomcat脚本

Conf:配置文件

Lib:所有Jar包 

Logs:日志文件。

Webapp:用来存放应用程序

Work:jsp编译后产生的class文件  

指令include和标签include的共同点和不同点

相同点:都用于包含其他页面。

不同点:(1) 语法格式

指令包含指令:<%@ include file="path" %>

标签包含指令:<jsp:include page="url" />

(2)编译过程 指令包含指令:先包含,后执行 标签包含指令:先执行,后包含

(3)变量或方法能否重名

指令包含指令:由于被包含的文件最终会生成一个文件,所以包含文件和被包含文件不能有重名的变量或方法。

标签包含指令:由于每个文件单独编译,所以变量和方法名不冲突。

服务端跳转和客户端跳转的共同点和不同点。

相同点:都是从一个页面或者组件调到另一个页面或者组件

不同点:(1)语法不同

2) 执行的实质不同(一个是浏览器执行,一个是服务器执行)

(3)客户端跳转后面的代码可以执行,服务端跳转后面的代码不执行

4)request内置对象的数据可以服务端跳转传递,客户端不能传递

(5)客户端跳转能重新传参,客户端跳转不能重新传参

(6)服务器跳转浏览器的地址的变化不会发生变化,客户端跳转浏览器的地址会发生变化

结论:服务端跳转使用正常流程,客户端跳转使用异常的流程

说说Session和Cookie的关系。

Cookies是属于Session对象的一种。但有不同,Cookies不会占服务器资源,是存在客服端内存或者一个cookie的文本文件中;而“Session”则会占用服务器资源。所以,尽量不要使用Session,而使用Cookies。我们一般认为cookie是不可靠的,session是可靠地,但是目前很多著名的站点也都以来cookie。有时候为了解决禁用cookie后的页面处理,通常采用url重写技术,调用session中大量有用的方法从session中获取数据后置入页面。

请写出9个内置对象的生存周期和功能

(1)request   作用:接收请求传递数据 完成动态编码 服务端跳转

生存周期:请求范围

特点:同一用户同一时刻只能有一个request

(2)response 作用:把结果发给浏览器显示

生存周期:请求范围

特点:同一用户同一时刻只能有一个response

(3)session(传递验证信息)作用:用户在服务器中的唯一标识

生存周期:用户范围

特点:同一用户只能对应一个session

(4)application作用:存放公共信息 生存周期:服务范围

特点:只能创建一个

(5)config作用:传递配置信息,存放web.xml的配置信息的初始化参数

生存周期:服务范围

特点:只能创建一个

(6)page、pagecontent 作用:存放临时数据

生存范围:页面范围

特点:一个页面只有一个

(7)out:跟response一样

(8)exception对象:作用是显示异常信息

表单和超链接发请求的共同点和不同点。

共同点:都是静态代码,都由浏览器处理。都自动发http协议请求

不同点:1、安全性。超链接发的是get请求;表单发的是post请求,更安全

2、交互性。表单能与用户进行交互,但超链接不能

理解POST和GET请求。

14,GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信

15,GET参数通过URL传递,POST放在Request body中。

16,GET请求在URL中传送的参数是有长度限制的,而POST没有。

为什么application可以通过getRealPath()方法,取得虚目录的真实路径。

1)该方法从request内置对象中取得请求字符串;2)对请求字符串进行分析取得项目的虚名;3)到servlet.xml文件中通过虚名工作目录的真实路径

将一个jsp页面保存在WEB-INF文件夹之下,如何通过配置web.xml文件 ,访问该页面?

在WEB-INF文件夹之下存在一个web.xml文件

<servlet>

<servlet-name>zte</servlet-name>

<jsp-file>/WEB-INF/sdemo.jsp</jsp-file>

</servlet>

<servlet-mapping>

<servlet-name>zte</servlet-name>

<url-pattern>/zs</url-pattern>

</servlet-mapping> 

猜你喜欢

转载自blog.csdn.net/qq_38230811/article/details/80906636