zoukankan      html  css  js  c++  java
  • 云笔记项目-保存网页端数据的方式

    在做云笔记项目的时候,经常需要用到调用数据的情况,比如添加笔记时,需要先确认是否点击了笔记本,在确认的过程中需要获取笔记本Id,此时往往需要将笔记本Id绑定在一个DOM元素里,比如li,div等任何DOM元素均可以。在绑定数据方面,刘老师列举了好几个可以绑定数据的对象,如下:

    1. ServletContext(Application):一个Web应用,多个用户之间共享数据。
    2. Session:一个会话的多个请求期间,多个线程的请求期间,可以把通过session共享多个请求线程之间的数据,当然session底层使用cookie保存session id,还有就是保存在服务器的内存中。
    3. Request:一次请求期间,代表浏览器发送请求给服务器时,服务器会给请求开辟一个线程,请求经历过滤器,Servlet控制器,再执行jsp,这一个过程就是一次请求。
    4. Page:一个JSP页面内部,一般现在很少使用,可能老企业会用。

    以上全部为服务端保存数据的方式,如果只想在浏览器端共享数据,以上几个都不适用,只能使用网页端的对象来保存数据。DOM对象为在浏览器运行的网页的运行状态,包括ducument,p,div,ul等元素。如果在网页的js脚本里有像如下图定义的变量,这样的变量称为window下的全局变量,在控制台下可以直接输出,这样的变量一般在网页刷新后消失

    定义全局变量:

    控制台下可以直接输出:

    也可以在控制台下直接定义变量,这样的变量也变成了全局变量,点击window后会自动提示变量名

    自定义的window对象可以绑定数据实现数据共享,范围为在当前网页下,刷新就消失失效。此外在window对象下,可以使用document对象来绑定数据,这个应该是window下能保存数据的最大对象,就算某些子元素在运行中因为业务需求消失,只要网页还在没有刷新,绑定在document中的数据就存在。如果要实现在多个网页之间共享数据,就算网页刷新数据也存在的话,可以使用cookie,保存数据,一般cookie中不要保存中文。

    总结:如果只是在当前网页共享数据,可以使用document或者其下面的子元素保存数据实现数据共享。如果需要在多个网页之间共享数据,使用cookie保存数据,尽量不要保存中文字符在cookie里。

  • 相关阅读:
    Using JConsole
    python mysql开发日志
    ubuntu在终端使用的常用命令
    centOS基本操作和命令(更新)
    每日一问(如何在List中加入、设置、获取和删除其中的元素?)
    每日一问(常用的集合接口和类有哪些【二】)—ArrayList类和数组之间的转换
    笔试习题回顾
    明天要赶回武汉面试去了
    每日一问(常用的集合接口和类有哪些【二】)—最常用的集合ArrayList类
    每日一问(时间相关的类有哪些常用的?如何进行计算和输出)
  • 原文地址:https://www.cnblogs.com/youngchaolin/p/10446429.html
Copyright © 2011-2022 走看看