欢迎来到河南丰泽教育咨询有限公司官网!

河南IT培训领导品牌    全国咨询热线:0371-63614567

丰泽教育logo
当前位置: 首页 > 新闻 > Java技术

Jsp会话管理之Session

Java技术    28.03.17/10人气/ 15推荐

 1.jsp 会话session 对象简介
客户端浏览,访问服务器,直接在服务器上建立一个会话,会话ID是唯一的,不同电脑,不同浏览,会话ID及会话对象是不一样。Session在Web程序中必须掌握,只要有登录,就会用到会话,控制页面安全.
2.如何修改会话时间
//设置会话对象的属性值 名称为user 值为张三
session.setAttribute("user","张三");
//取出会话值
session.getAttribute("user")
//删除会话对话的属性值
//session.removeAttribute("user");
//会话的有效期 1800 秒 30分钟
//out.print(session.getMaxInactiveInterval());
方法一: 修改tomcat/conf/web.xml,但是这个方法将针对于服务器中的所有项目,不建议修改
如果修改了 tomcat/conf/web.xml
30分钟有效期
<session-config>
<session-timeout>30</session-timeout>
</session-config>
方法二:也可以修改当前项目 /WEB-INF/web.xml 文件加入如下配置
<!-- 配置当前项目会话有效期20分钟 -->
<session-config>
<session-timeout>20</session-timeout>
</session-config>
//销毁整个会话对话
session.invalidate();


session应用之------javaweb 验证码
服务器 发随机字符串
以图形的形式显示在客户端

c.jsp 代码
<%@page import="java.awt.Graphics2D"%>
<%@page import="java.awt.Font"%>
<%@page import="java.util.Random"%>
<%@page import="javax.imageio.ImageIO"%>
<%@page import="java.awt.Color"%>
<%@page import="java.awt.Graphics"%>
<%@page import="java.awt.image.BufferedImage"%>
<%@ page language="java" contentType="image/png; charset=utf-8" pageEncoding="UTF-8"%>
<%
int h = 30;
int len = 4;
int w = len*20;
BufferedImage i = new BufferedImage(w,h,1);
Graphics g = i.getGraphics();
g.setColor(Color.WHITE);
g.fillRect(0,0,w,h);
//g.setColor(Color.RED);
//g.drawRect(0,0,w-2,h-2);

String s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random r = new Random();
String cc = "";
for(int n=0;n<len;n++){
g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255),r.nextInt(100)+155));
int p = r.nextInt(s.length());
g.setFont(new Font("宋体",Font.BOLD,r.nextInt(8)+18));
String ss = s.substring(p,p+1);
cc+=ss;
g.drawString(ss,n*20+5,r.nextInt(5)+20);
}
session.setAttribute("check",cc);
for(int n=0;n<len;n++){
int p = r.nextInt(s.length());
g.setFont(new Font("宋体",Font.BOLD,r.nextInt(25)+15));
g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255),r.nextInt(50)));
int x = r.nextInt(w);
int y = r.nextInt(h);
int width = r.nextInt(w);
int height = r.nextInt(h);
//g.fillOval(x, y, width, width);
g.drawArc(x, y, width, height, r.nextInt(360),r.nextInt(360)-360);
}
// 随机干扰字
for(int n=0;n<len;n++){
int p = r.nextInt(s.length());
g.setFont(new Font("宋体",Font.BOLD,r.nextInt(25)+15));
g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255),r.nextInt(100)));
int x = r.nextInt(w);
int y = r.nextInt(h);
g.drawString(s.substring(p,p+1),x,y);
}
//随机线
for(int n=0;n<len*len;n++){
g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255),r.nextInt(50)));
int x1 = r.nextInt(w);
int x2 = r.nextInt(w);
int y1 = r.nextInt(h);
int y2 = r.nextInt(h);
g.drawLine(x1, y1, x2, y2);
}
out.clear();
out = pageContext.pushBody();
ImageIO.write(i,"png",response.getOutputStream());
g.dispose();
%>
10

点赞