1、通过后台

【存-通过链接加参数或者用表单】

  1. <button><a href="/pageB?name=王志">A→B</a></button>

【取-后台取值发往前端】

  1. @RequestMapping("/pageB")
  2. public String trans(@RequestParam("name") String myname, Model model) {
  3. System.out.println(myname);
  4. model.addAttribute("name", "wangzhi");
  5. return "pageB";
  6. }

【取-获取后端的数据】

  1. //取--利用thymeleaf
  2. //法一
  3. <div th:text="${name}"></div>
  4. //法二,注意加th:inline="javascript"
  5. <script th:inline="javascript">
  6. let name = [[${name}]];
  7. </script>

2、通过js localStorage,最大支持5M

此为浏览器本地存储,清楚缓存时就不在了
【前端存】

  1. if(window.localStorage){
  2. alert("浏览器支持localstorage");
  3. let storage=window.localStorage;
  4. storage.setItem("c",3);
  5. console.log(typeof storage["c"]);
  6. }

【前端取】

  1. if(window.localStorage){
  2. let storage=window.localStorage;
  3. let c=storage.getItem("c");
  4. console.log(c);
  5. }
  6. alert(name)

3、利用sessionStorage

注意键名不要用中文,此为会话存储,会话结束即清除
【前端存】

  1. window.sessionStorage.setItem("name2", str);

【前端取】

  1. let tempData = window.sessionStorage.getItem("name2");

4、利用地址栏

【前端存】

  1. <button><a href="/pageB?name=王志">A→B</a></button>

【前端取】

  1. let loc=location.href;
  2. let n1=loc.length;//地址的总长度
  3. let n2=loc.indexOf("=");//取得=号的位置
  4. let id=decodeURI(loc.substr(n2+1, n1-n2));//从=号后面的内容
  5. console.log(id+"hahahahh");