JSP
运行在服务器上java页面(既可以写java代码 也可以写html),本质上一个jsp文件
就是一个java类;
常见的状态码:
404:找不到资源(路径问题)
500:服务器异常 (代码问题)
200:请求响应正常 (没有问题)
JSP的三大指令 九大内置对象 动作标签
三大指令
page指令
作用:声明jsp页面信息
常用属性:
isELIgnored:是否忽略EL表达式 (true/false)
errorPage: 指定错误页面
isErrorPage: 是否为错误页面
import:导包
include指令
作用:
静态包含 (include 引入页面)先包含在执行
taglib指令(后面讲)
作用:
引入标签库(JSTL)
九大内置对象
(4大作用域对象:都可以来存取数据(都有getAttribute,setAttribute),区别是作用域不同)
pageContext(只在当前页面有效)
得到其他的内置对象的信息 包括项目信息
request(只在一次请求中有效)
每一次请求都会产生一个新的request对象;
常用方法:
getParameter();获取参数
getParameterValues; 获取一组参数
//解决post提交中文乱码
setCharacterEncoding("utf-8");
getCookies();
session(在一次会话中有效)
每一个客户端和服务器交互的时候 都会产生一个会话,每个会话之间
彼此独立,互不影响,每一个会话中包含多次请求(request);会话
在客户端第一次发送请求时产生,服务器停止运行 或者 手动清除session
时消失(invalidate(),removeAttribute());
Session是存在服务器,每一个Session都有一个唯一标识SessionID,
application
(在一个整个项目运行期有效)
response
addCookie();
out
在浏览上输出内容(print println)
简写:<%=%>
config (不用)
page(不常用)
exception
异常处理对象 不能在普通的jsp页面上使用 只能在设置了isErrorPage=true的jsp页面上使用
动作标签
动态包含标签
<jsp:include> 先执行在包含
<jsp:forword> 跳转标签
<jsp:usebean> 引入java对象
<jsp:setProperty> 设置属性
<jsp:getProperty> 获取属性
<jsp:param> 传递参数
get post请求的区别(面试):
1,GET请求会被浏览器主动cache(缓存),而POST不会,除非手动设置。
2,GET请求只能进行url编码,而POST支持多种编码方式。
3,GET请求在URL中传送的参数是有长度限制的,而POST没有
4,对参数的数据类型,GET只接受ASCII字符,而POST没有限制
5,GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
6,Get,Post请求通常传递数据是通过url携带,但是同时也可以在requestBody里面传递参数,
但是不同的浏览器和服务器解析数据标准不一样,可能会导致数据接收不到的情况
7,GET产生一个TCP数据包 只发送一次;POST产生两个TCP数据包 会发生两次。
跳转页面的两种方式:
1,请求转发
request.getRequestDispatcher("url").forward(request,response);
相对于浏览器而言 只发了一次请求 (只产生一个request对象)
它是服务器内部行为
url地址不变
2,重定向
response.sendRedirect("url");
相对于浏览器而言 只发了两次请求 (产生两个request对象)
他是客户端(浏览器)行为
url地址改变
Cookie(存数据存在浏览器)
Cookie xxx = new Cookie("xxx", xxxx);
setMaxAge(秒);
getName();
getvalue();
IDEA笔记 会持续增加
最新推荐文章于 2022-08-17 12:40:10 发布