JSP Java Server Pages
服务器端的java页面的动态网页技术标准
JSP常用标签
设置JSP页面属性
<%@page%>
需要导入包时
<%@page import = ""%>
声明全局变量
<%! %>
编写java代码
<% %>
实现输出 <%out.pringln();%>
<%= %>
添加注释 HTML注释<!-- -->
JSP注释<%-- --%>
JSP代码注释<%// %>
<%/* */%>
JSP执行过程
翻译阶段:先编译文件成文一个java类(servlet)
编译阶段:把java编译成class
执行阶段:动态生成显示页面并显示给用户
字符编码问题
jsp中默认ios-8859-1不支持中文
常见支持中文的方式GB2312,GBK,UTF-8
设置请求和响应的编码方式
设置post请求
request.setCharacterEncoding("utf-8");
设置响应
response.setCharacterEncoding("utf-8");
或,页面<%@ page contentType="text/html;charset=ytf-8"%>
设置get请求
治标
如果s时取出的乱码
s = new String (s.getBytes("iso-8859-1"),"utf-8")
治本 在server.xml中
修改<Connector connectionTomeout = "" prot="" protocol=""
redirtPort="" URIEncoding="UTF-8">
转发和重定向
转发
request.getRequestDispatcher("url").forward(request,response);
重定向
response.sendRedirect("url");
对比 转发
重定向
URL变化 否
是
重新请求 不
是
是否现代请求
是 否
目标URL 本Web
任意
JSP内置对象request和response
内置对象,无需声明即可使用的对象
提交方式get和post的区别
get post
参数出现在URL
是 否
长度限制 有
无
安全性 差
强
URL可传播
是 否
请求对象:request
常用方法
getParameter(String name);
getParameterValues(String name);
setAttribute(String name , Object object)
getAttribute(String name);
注意, 1、null值判断
2、取出的对象要转换类型
getRequestDispatcher("url").forward(request,response);
转发
setCharacterEncoding("utf-8");
改变字符编码方式
回话对象:session
session回话原理
每个session都有一个id,session保存在服务器端,通过id
找到session,从而实现交互
session的清除
1、主动清除
调用以下方法
session.invalidate();
session失效
session.removeAttrbute(String name);
session key为name属性实现
2、自动清除
回话过期时间
设置回话过期时间
调用方法:setManInaciveInterval(int intervale(单位秒))
配置XML:<session-config> <session-timeout> 30单位分钟() </session-timeout></session-config>
常用方法
setAttribute(String name , Object object)
getAttribute(String name);
注意, 1、null值判断
2、取出的对象要转换类型
getId()
获取sessionID
response.sendRedirect("url");
重定向
全局对象:application
application在整个项目*享使用数据
常用方法
setAttribute(String name , Object object)
getAttribute(String name);
注意, 1、null值判断
2、取出的对象要转换类型
Cookie
常用方法
Cookie cookie = new Cookie(String name , Object value);
setMaxAge(int expiry);
设置有效期(单位秒)
response对象:void addCookie(Cookie cookie);
添加数据
request对象:Cookie[] getCookies();
获取数据
使用方法
//==============请求页面===================================
Cookie cookie = new Cookie("user" , usernmae);
cookie.setMaxAge(60 * 60);
response.addCookie(cookie);
//==============响应页面===================================
Cookie[] cookies = request.getCookies();
String a ;
for(cookie : cookies) {
if(cookie.getname().equals("user")) {
a = cookis.getValue();
}
}
相关文章
- 08-13[理论-学习]Web安全-文件上传-基础05
- 08-13数据仓库基础知识学习笔记
- 08-13【学习笔记】 unity基础_Day05
- 08-13web前端学习笔记(五)—定位层
- 08-13DELPHI语法基础学习笔记-Windows 句柄、回调函数、函数重载等(Delphi中很少需要直接使用句柄,因为句柄藏在窗体、 位图及其他Delphi 对象的内部)
- 08-13AI打游戏(DL基础)pytorch框架学习笔记
- 08-13c++基础学习笔记——04-c++day04
- 08-13「学习笔记」多项式基础
- 08-13数据结构学习笔记(一丶基础知识及时间空间复杂度)
- 08-13学习笔记——单片机简介 & 点亮LED & 流水灯 & 电路基础【更新Ing】