学习笔记_java web——JSP基础
服务器端的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();
}
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。