精华内容
下载资源
问答
  • 如何把数据保存到session中

    千次阅读 2020-12-23 08:10:51
    这个算是个新的知识,经过来同学的提示先选中的房间保存到session中。让后再查询session的中的数据。我当时疑问为什么要报存到session中呢而不是直接报存到数据库中呢。我就想为什么不能直接报存到数据呢?后来...

    博客转载于https://blog.csdn.net/weixin_44512123/article/details/95043087

    看到这两个表格的时候不知是怎么把这两个表格的数据移来移移去的。这个算是个新的知识,经过来同学的提示先把选中到的房间保存到session中。让后再查询session的中的数据。我当时疑问为什么要报存到session中呢而不是直接报存到数据库中呢。我就想为什么不能直接报存到数据呢?后来认真细想了一下。就明白了很多就是如果直接保存数据库而操作员不小心选错房间要移除重新选过房间,那样的话又要从数据库中删除了。那样显然做法不太对,而保存到session他只是临时如果要移除直接从session中移除就行了,当房间确定后我在保存的时候提取session中所选到的房间保存到数据就行了在这里插入图片描述
    首先声明一个sessionApartment列表。判断传过来拼接的ID是为空,不为空就分割ID再遍历这个数组的ID,再把string类型转换成int类型。查询要添加到列表中所需要的数据。在这里插入图片描述

    如果查询查到需要添加的数据长度小于0等于0表示是没有数据,就直接跳出。不用往下执行了。如果查询的数据是大于0,说明是有数据的就遍历列表,还要声明一个行行列表,就相当表中的一行数据。把查询的字段一个一个赋给这新的行里。再把这这行data添加到声明的sessionApartment中,然后再保存
    在这里插入图片描述
    这里的判断也比较重要的一步,一开始没有判断的时候,在添加房间的时候发现可添加重复的房间,出现同样的房间的房号吧,一个酒店应该不会出现相同的房间的房号吧,这就是一个bug了。

    解决方法:判断如果session中等于为空那么直接往里面添加一条数据并保存到session中,如果session中不等于空那么就查询session中是是否已经有相同的的数据了,根据session中的房间和穿过来的ID对比,如果相等则条件成立,长度大于0直接让他输出不让他新增,如果没有查到到有,则长度等于0表示session中没有相同,就添加数据并保存到session中。

    在这里插入图片描述
    效果图如下如图所示

    在这里插入图片描述

    展开全文
  • 自己在分页查询时出现了一个错误,后来调试了半天才发现出错在这里,例如我的 ...//将餐桌号保存到session中,以便下单使用 HttpSession session = req.getSession(); session.setAttribute("table_id", tabl
    自己在分页查询时出现了一个错误,后来调试了半天才发现出错在这里,例如我的
    //获取餐桌号
    String table_id = req.getParameter("table_id");
    //将餐桌号保存到session中,以便下单使用
    HttpSession session = req.getSession();
    session.setAttribute("table_id", table_id);

    当你点击下一页时由重新获取了table_id,而这次获取的结果为null,下面又执行了设置到session中,故后面取到时获得的为null,只需加上一个条件判断即可。
    //获取餐桌号
    String table_id = req.getParameter("table_id");
    //将餐桌号保存到session中,以便下单使用
    HttpSession session = req.getSession();
    if(table_id != null){
    session.setAttribute("table_id", table_id);

    }

    展开全文
  • java 将某一变量存到session并取出

    千次阅读 2018-11-08 11:16:53
    存session HttpSession session = request.getSession(); session.setAttribute("phone", phone); 从session取值 HttpSession session = request.getSession(); String phone = session.getAttribute(&...

    存session

    HttpSession session = request.getSession();
    session.setAttribute("phone", phone);
    

    从session取值

    HttpSession session = request.getSession();
    String phone = session.getAttribute("phone").toString();
    
    展开全文
  • session数据保存到mysql数据库

    千次阅读 2016-11-19 21:01:29
     * session数据保存到数据库  * 使用session_set_save_handler 函数  * php.ini 设置  * 默认为session.save_handler = files,必须将其修改为session.save_handler = user,即变为用户自定义方式。  */ ...

    /**
     * session数据保存到数据库中
     * 使用session_set_save_handler 函数
     * php.ini 设置
     * 默认为session.save_handler = files,必须将其修改为session.save_handler = user,即变为用户自定义方式。
     */
    class SessionMysql{
    	private static $handler=null;
    	private static $ip=null;
    	private static $lifetime=null;
    	private static $time=null;
    	
    	private static function init($handler){
    		self::$handler=$handler;
    		self::$ip=!empty($_SERVER["REMOTE_ADDR"]) ? $_SERVER["REMOTE_ADDR"] : "unknown";
    		self::$lifetime=ini_get('session.gc_maxlifetime');
    		self::$time=time();
    	}
    	
    	public static function start(PDO $pdo){
    		self::init($pdo);
    		session_set_save_handler(
    			array(__CLASS__, "open"),
    			array(__CLASS__, "close"),
    			array(__CLASS__, "read"),
    			array(__CLASS__, "write"),
    			array(__CLASS__, "destroy"),
    			array(__CLASS__, "gc")
             );
    		session_start();
    	}
    	
    	public static function open($path, $name){
    		return true;
    	}
    	
    	public static function close() {
    		return true;
    	}
    	
    	public static function read($id){
    		echo "read读取信息<br>";
    		$sql="select sessionid,updatetime,client_ip,data from session where sessionid= ?";
    		$stmt=self::$handler->prepare($sql);
    		$stmt->execute(array($id));
    
    		if(!$result=$stmt->fetch(PDO::FETCH_ASSOC)){
    			echo "无内容";
    			return "";
    		}
    	
    		if (self::$ip !=$result["client_ip"]){
    			echo "ip不对";
    			self::destroy($id);
    			return '';
    		}
    
    		echo $result["updatetime"]."<br>";
    		echo self::$lifetime."<br>";
    		echo ($result["updatetime"]+self::$lifetime)."<br>";
    		if (($result["updatetime"]+self::$lifetime) < self::$time){
    			echo "时间过期";
    			self::destroy($id);
    			return '';
    		}
    		return $result['data'];
    	}
    	
    	public static function write($id ,$data){
    		echo "write写信息<br>";
    		$sql="select sessionid,updatetime,client_ip,data from session where sessionid= ?";
    		$stmt=self::$handler->prepare($sql);
    		$stmt->execute(array($id));
    		if($result=$stmt->fetch(PDO::FETCH_ASSOC)){
    			if($result['data'] != $data || self::$time > ($result['updatetime']+300)){
                  $sql="update session set updatetime = ?, data =? where sessionid = ?";
                  $stm=self::$handler->prepare($sql);
                  $stm->execute(array(self::$time, $data, $id));
    			}
    		}else {
    			if(!empty($data)){
    				$sql="insert into session(sessionid, updatetime, client_ip, data) values(?,?,?,?)";
    				$sth=self::$handler->prepare($sql);
    				$sth->execute(array($id, self::$time, self::$ip, $data));
    			}
    		}
    		return true;
    	}
    	
    	public static function destroy($id){
    		echo "destroy清除信息<br>";
    		$sql="delete from session where sessionid = ?";
    		$stmt=self::$handler->prepare($sql);
    		$stmt->execute(array($id));
    		return true;
    	}
    	
    	private static function gc($lifetime){
    		echo "gc回收信息<br>";
    		$sql = "delete from session where updatetime < ?";
    		$stmt=self::$handler->prepare($sql);
    		$stmt->execute(array(self::$time-$lifetime));
    		return true;
    	}
    }
    
    try {
    	$pdo=new PDO("mysql:host=localhost;dbname=wenzxx", "root", "admin");
    } catch (PDOException $e) {
    	echo $e->getMessage();
    }
    
    SessionMysql::start($pdo);
    
    
    

    调用文件1 mysql1.php

    include 'SessionMysql.class.php';
    
    $_SESSION["islogin3"] = 1;
    $_SESSION["username"] = "admin";
    $_SESSION["uid"] = 333;
    
    echo session_name().'='.session_id()."<br>";
    echo time();


    调用文件2 mysql2.php

    include 'SessionMysql.class.php';
    
    print_r($_SESSION);
    echo "<br>";
    echo $_SERVER["REMOTE_ADDR"];
    echo "<br>";
    
    //echo session_name().'='.session_id()."<br>";
    echo time();


    调用文件3 mysql.3php

    include 'SessionMysql.class.php';
    
    $_SESSION = array();
    if (isset($_COOKIE[session_name()])){
    	setcookie(session_name(), '' , time()-100, '/');
    }
    session_destroy();
    
    echo session_name().'='.session_id()."<br>";


    展开全文
  • Java Webcookie和session详解

    千次阅读 2016-07-21 18:05:46
    Java Webcookie和session详解
  • 如何添加数据到session中

    千次阅读 2019-06-18 08:30:37
    开发工具与关键技术:Visual Studio、MVC 作者:幻奏 撰写时间:2019.6.17 ...所以session是有期限的,我们可以利用session把一些临时的数据存储它里面去。 我现在做的一个功能是选择可选房间,然后点击添加,...
  • JAVA中Session

    2017-07-25 18:45:01
    Session技术Cookie局限性: 1.Cookie只能字符串类型,不能保存对象... 会话数据保存在服务器端(内存);HttpSession类:用于保存会话数据 1.创建或者得到session对象HttpSession getSession(); HttpSession getS
  • java中session的用法与原理

    万次阅读 多人点赞 2019-05-21 23:05:50
    session简介 在WEB开发中,服务器可以为每个用户浏览器创建一个...因此,在需要保存用户数据时,服务器程序可以用户数据用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的s...
  • Java中Session总结

    千次阅读 2018-03-06 15:00:53
    因此,在需要保存用户数据时,服务器程序可以用户数据用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。二、Session和Cookie的主要...
  • java web项目Session获取不

    千次阅读 2019-02-27 15:20:59
    在servlet类Session进行了设置 但当servlet跳转页面时 页面获取不到Session!!! 关于session的生命周期 Session保存在服务器端。Session在用户第一次访问服务器的时候自动创建。需要注意只有访问JSP、...
  • Java中Session域对象

    千次阅读 2018-03-30 08:55:59
    Session域对象 /* * HttpSession 服务端的技术 * 服务器会为每一个用户 创建一个独立的HttpSession * HttpSession原理 * 当用户第一次访问Servlet时 服务器端会给该用户创建一个独立的... * 从而被保存到浏览器
  • 这篇文章主要介绍了Java简单实现session保存到redis的方法,结合实例形式分析了Javasession存入redis缓存服务器的相关设置、实现技巧与操作注意事项,需要的朋友可以参考下 本文实例讲述了Java简单实现session保存...
  • Java中session详解

    千次阅读 2017-07-15 10:28:11
    因此,在需要保存用户数据时,服务器程序可以用户数据用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。 二、Session和Cookie
  • \\由于我这里是一个学生对象保存进 了session中,所以我在取出来的时候也要转型‘ request.getSession().setAttribute("student", (Student)user); request.getRequestDispatcher("/student/Student.jsp")....
  • // 从session中获取用户信息 String email = (String) session.getAttribute("email"); System.out.println("过滤器获取邮箱值:" + email + "\n " + session.getAttribute("LoginFilter")); System.out....
  • Java中通过Session存储用户信息

    千次阅读 2019-04-24 10:05:15
    存储: //创建session对象 ...//用户数据保存session域对象 session.setAttribute("presentUserName", users); 获取: //获取信息 String loginName = (String)session.getAttribute("loginNa...
  • java岗面试考察session与cookie的区别

    千次阅读 2018-01-12 20:32:56
    session的实现依赖于cookie,cookie存放了sessionId,sessionId是session的唯一标识,需要存放在客户端。 (1)cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份; (2)...
  • Java Web之Cookie和Session详解

    千次阅读 多人点赞 2018-07-27 17:15:40
    Cookie和Session详解,Cookie和Session之间的联系
  • java php 共享session

    2018-03-28 01:49:55
    使用redis数据库存储, 数据无法对接。 java存进去java能读的,php也是一样,两者不能通用 。该怎么解决呢?? 用过或者知道的大神帮帮啊!!
  • 本来是想通过session一些数据的,但是,发现当两次访问的方法不同时,后台的session是不一样的,也就是说sessionId,不一致,所以导致的问题就是:当我需要从session取值的时候,总是出现取不值的情况,后面也...
  • java中session和cookies区别与联系 1:cookies:将用户相关数据保存客户端,用户每次访问服务器自动携带cookies数据  session:将用户相关数据保存服务器端,为每个客户端生成一个独立的session数据对象,通过...
  • Java Session2

    千次阅读 2012-11-06 13:27:00
    因此,在需要保存用户数据时,服务器程序可以用户数据用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。 Session和Cookie的主要...
  • Java会话技术之Session

    千次阅读 2021-06-14 23:34:21
    文章目录1.3 服务端会话...它本质仍是采用客户端会话管理技术,只不过保存客户端的是一个特殊的标识,并且要共享的数据保存到了服务端的内存对象。 (后面看懵逼的再回来看一下这句话,其实还是为了存数据,不
  • java Session缓存

    2020-10-20 17:28:32
    1.原理:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象。HttpSession2.快速入门:1.获取HttpSession对象:HttpSession session = request.getSession();2.使用HttpSession对象...
  • Java中Session和Cookie的区别

    千次阅读 2018-07-31 14:51:09
    Cookie数据保存在客户端,Session数据保存在服务器端。 Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID 为标识符来存取服务器端的...
  • 首先用Java生成验证码和验证码图片,调用验证码接口,验证码使用session保存在客户端,并且发送图片前端展示, 然后点击注册,前端传递用户输入的验证码后台,后台获取用户输入的验证码和用...
  • java使用session存登录的用户信息

    万次阅读 2019-05-22 17:40:27
    创建基础控制器,里面实现session存和取的方法: /** * 基础控制器 * * @author tuc */ public abstract class BaseController { /** * 当前账号常量 */ private static final String ACCOUNT = ...
  • Cookie是客户端技术,通常保存在客户端,即本地,IE浏览器Cookie信息保存在类似于C:\windows\cookies的目录下。因为Cookie在客户端所以可以编辑伪造,不是十分安全 Session是服务器端技术,在服务端,利用这个技术...
  • java中如何实现session共享

    千次阅读 2019-05-16 13:50:28
    比如用户登录邮箱后,接下来要收邮件、写邮件,总不能每次操作都让用户输入用户名和密码吧,为了解决这个问题,session的方案就被提了出来,事实上它并不是什么新技术,而且也不能脱离http协议以及任何现有的web技术...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 188,559
精华内容 75,423
关键字:

java把数据存到session中

java 订阅