- spring boot程序启动时读取&覆盖配置文件中的变量
fusugongzi
springbootjava前端
1.自定义ApplicationContextInitializer,spring启动时会执行自定义的initialize方法newSpringApplicationBuilder(DsgCoreApplication.class).initializers(newMyPropertyInitializer()).run(args);@Slf4jpublicclassMyPropertyIniti
- Android StrictMode 使用与原理深度解析
伟江.Zeng
Android基础androidStrictMode性能优化内存泄漏代码规范耗时检测kotlin
AndroidStrictMode是Android系统提供的一种开发者工具,用于检测应用主线程中不合理的耗时操作(如磁盘I/O、网络请求等)和内存泄漏问题。通过配置策略和惩罚机制,它帮助开发者在早期发现潜在性能问题,提升应用流畅性。以下从使用方式和实现原理两方面进行深度解析。一、StrictMode使用详解1.基础配置在Application或Activity的onCreate()中初始化Stri
- 【Quarkus】通过Quarkus集成后端服务示例
Vesper63
Quarkusjava开发语言
说明:REST资源接口(AuthResource)。REST资源实现类(AuthResourceImpl)。服务接口(AuthService)。服务实现类(AuthServiceImpl)。配置文件(application.properties)。测试类(AuthResourceTest)。1.项目结构my-quarkus-app/├──src/│├──main/││├──java/│││└──c
- 远程推送didReceiveRemoteNotification代理方法调用详细说明
Ethan. L
iOS开发UIApplication远程推送代理
前言最近工作中实现远程推送点击状态栏的提醒,直接进入相应地详细界面的功能。遇到了问题,解决之后整理出来!UIApplication有两个关于接收到远程推送的代理:-application:didReceiveRemoteNotification:fetchCompletionHandler:-application:didReceiveRemoteNotification:这两个是什么关系?点击远
- OnionArch 项目教程
宁彦腾
OnionArch项目教程OnionArchA.NETCoredemoapplicationwhichusestheOnionArchitecture项目地址:https://gitcode.com/gh_mirrors/on/OnionArch1.项目介绍OnionArch是一个基于.NETCore的演示应用程序,采用了洋葱架构(OnionArchitecture)。洋葱架构是一种软件设计模式,
- JavaEE基础八之EL与JSTL相关知识(过时不谈)
ZHWVICDI
JavaEEJavaEEEL表达式JSTL
EL功能动态输出内容替代JSP中的表达式元素简化jsp主要就是取值一般格式${EL表达式}内置对象牢记!!因为其他也是差不多param/paramValues方便输出请求参数pageScope/requestScopre/sessionScope/applicationScope输出各范围的属性header/headerValues与请求头相关cookie/initParampageContext
- EventStream 处理实时数据流
小怪兽,让我来保护你
javascriptnode.jsvue.jsscss
简介text/event-stream和application/octet-stream本质上都是客户端与服务端打开了一个长连接,服务端可以多次写入一部分数据给客户端,客户端可以多次读取,直到全部读取完成。使用场景很多,例如:模拟机器人回复,几个词几个词的展示。下面我就以最近的一个功能需求为例,展示一下该如何使用event-stream:streamBack(){consturl="/api/..
- 前台实时获取数据
爱吃虾的五花肉
前端ajaxwebsocketjavascript前端
实现网站实时通信·四种方式,第二三四种方式需要服务器端做操作的写计时器进行Ajax轮询//每秒调用一次http请求setInterval(function(){varxhr=newXMLHttpRequest();xhr.open('POST','url',true);xhr.setRequestHeader('Content-Type','application/json');xhr.send(
- classfinal加密失败,踩坑了,不妨进来看看
行云的逆袭
classfinalspringbootjar包加密踩坑加密失败
最近在使用classfinal加密springboot,执行成功了,但是反编译后还是能看到源码,很郁闷!加密之后,反编译还是能看到源码,头疼我采用的加密方式是插件方式,放上配置net.roseboyclassfinal-maven-plugin${classfinal.version}#org.springxingyunapplication.yml,application-dev.yml,app
- 【Springboot知识】开发属于自己的中间件健康监测HealthIndicate
问道飞鱼
微服务相关技术springboot中间件后端HealthIndicate
文章目录**一、技术栈****二、项目结构****三、依赖配置(pom.xml)****四、配置文件(application.yml)****五、自定义健康检查实现****1.Redis健康检查****2.Elasticsearch健康检查****3.Kafka健康检查****4.MySQL健康检查****六、自定义健康检查接口(可选)****七、测试与验证****八、高级功能扩展****九、部署
- 理解 Retrofit 请求头与 GsonConverterFactory 的自动处理机制
居然是阿宋
retrofit
在现代Web开发中,特别是在与RESTfulAPI进行交互时,我们经常会遇到JSON格式的数据交换。为了确保请求的正确解析和响应的准确返回,通常需要通过HTTP请求头明确指定请求体的数据类型。而Content-Type:application/json就是用来告诉服务器,当前请求体中的数据格式是JSON。为什么需要明确指定Content-Type:application/json?数据格式的明确性
- QT系列教程(19) Qt MVC结构之QItemDelegate介绍
恋恋风辰
C++QTqtmvc开发语言
QItemDelegate当我们想重新实现一个代理时,可以子类化QItemDelegate。实现item编辑时特定的效果,比如在item编辑时我们设置一个QSpinBox返回。创建一个QApplication项目,然后我们新增一个类,类名叫做spinboxdelegate。classSpinBoxDelegate:publicQItemDelegate{Q_OBJECTpublic:explici
- Spring Boot启动流程及源码实现深度解析
黑猫Teng
springboot后端java
SpringBoot启动流程及源码实现深度解析一、启动流程概述SpringBoot的启动流程围绕SpringApplication类展开,核心流程可分为以下几个阶段:初始化阶段:推断应用类型,加载ApplicationContextInitializer和ApplicationListener环境准备:加载配置文件和命令行参数上下文创建:实例化ApplicationContext上下文刷新:执行r
- Spring 中的 BeanFactory 和 ApplicationContext 详解
青灯文案
Java后端springjava后端
文章目录一、BeanFactory1、BeanFactory的作用2、BeanFactory的实现类3、BeanFactory的创建4、BeanFactory与ApplicationContext的关系5、BeanFactory的工作原理二、ApplicationContext1、ApplicationContext的作用2、ApplicationContext的实现类3、ApplicationC
- 大语言模型微调和大语言模型应用的区别?
AI Echoes
人工智能深度学习机器学习
大语言模型微调和大语言模型应用的区别?1.定义与目标微调(Fine-tuning)目标:调整预训练模型(如GPT、LLaMA、PaLM)的参数,使其适应特定任务或领域。核心:通过额外的训练(使用特定数据集)优化模型的性能,提升其在特定场景下的效果。例如:将通用模型微调为法律咨询、医疗诊断或金融分析的专业模型。应用(Application)目标:直接使用预训练或微调后的模型解决实际问题,无需修改模型
- WAI-ARIA
前端岳大宝
前端核心知识总结前端html
以下是关于WAI-ARIA(WebAccessibilityInitiative-AccessibleRichInternetApplications)的核心知识梳理。一、WAI-ARIA的基本概念定义与作用WAI-ARIA是一套由W3C制定的技术规范,旨在通过语义补充使动态Web应用(如单页应用、复杂UI组件)对辅助技术(如屏幕阅读器)更可访问。核心目标:为无法通过原生HTML语义化标签表达的U
- 边缘计算Edge Computing
福梦
IoT
最近工作有接触到这个概念,先贴点资料在这里吧。OverviewEdgecomputingpushesapplications,dataandcomputingpower(services)awayfromcentralizedpointstothelogicalextremesofanetwork.Edgecomputingtakesadvantageofmicroservicesarchitec
- Oracle RAC 三种心跳机制
数据库急诊日记
故障处理oracle数据库databaselinuxjavapythonc语言
在OracleRAC(RealApplicationClusters)中,心跳(Heartbeat)是集群节点间用于检测存活状态的核心机制,确保节点间的通信正常并避免脑裂(SplitBrain)问题。以下是RAC的三种关键心跳机制及其作用:1.网络心跳(NetworkHeartbeat)作用:通过私有网络互联(PrivateInterconnect)实时检测节点间的通信状态。工作原理:每个节点周期
- SpringBoot整合RabbitMQ
z小天才b
RabbitMQruby开发语言后端
1、添加依赖org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-amqporg.projectlomboklomboktrue2.配置文件(application.yml)spring:rabbitmq:host:localhostport:5672username:g
- spring event发布及监听实例
weixin_33924220
java测试
序本文主要介绍下如何在spring中进行发布时间以及接收事件定义事件publicclassDemoEventextendsApplicationEvent{privateStringmessage;publicDemoEvent(Objectsource,Stringmessage){super(source);this.message=message;}publicStringgetMessag
- Spring中的Events
Leon_Jinhai_Sun
事件通过org.springframework.context.ApplicationEvent实例来表示。这个抽象类继承扩展了java.util.EventObject,可以使用EventObject中的getSource方法,我们可以很容易地获得所发生的给定事件的对象。这里,事件存在两种类型与应用程序上下文相关联所有这种类型的事件都继承自org.springframework.context.
- SpringBoot整合RabbitMq
qq_45923849
java-rabbitmqspringbootrabbitmq
1.引入依赖org.springframework.bootspring-boot-starter-amqp2.application.yml文件配置spring:rabbitmq:host:192.168.101.129port:5672username:adminpassword:adminvirtual-host:/3.编写配置类主要是声明RabbitTemplate,创建交换机和队列并进行
- SpringBoot调用deepseek
想买CT5的小曹
springboot后端java
1、效果截图:2、代码部分:application.propertiesserver.port=8080deepseek.api.token=sk-d34e929e887b4881813395241df2f745deepseek.api.url=https://api.deepseek.com/chat/completionscontroller部分请求参数可以缩短,写成实体类形式packagec
- Spring Boot 参数校验异常与错误编码映射方案
robin-cloud
springspringbootspringcloud
一、错误码定义与配置错误码结构采用分层编码格式:[模块][错误类型][序号](如1001表示公共模块参数校验错误中的第一个错误)配置文件(application.yml)yaml复制error:codes:#公共模块错误码common:param_invalid:1000#校验子错误码constraints:NotNull:1001Size:1002Pattern:1003Email:1004#用
- ANR和Crash的监控与分析
Ya-Jun
android
ANR和Crash的监控与分析在Android应用开发中,应用的稳定性是用户体验的重要组成部分。ANR(ApplicationNotResponding)和Crash(应用崩溃)是影响应用稳定性的两大主要问题。本文将深入探讨ANR和Crash的原因、监控方法以及分析策略,帮助开发者构建更加稳定可靠的应用。一、理解ANR1.1什么是ANRANR(ApplicationNotResponding)是指
- Spring Boot + InfluxDB 批量写入(同步、异步、重试机制)
火皇405
springbootjava后端
1.项目介绍本项目使用SpringBoot+InfluxDB2.x,主要介绍批量写入数据的三种方式:同步写入(BlockingWrite)异步写入(Non-blockingWrite)带重试机制的写入(HandlingErrorswithRetry)适用于高并发数据写入、物联网(IoT)、实时监控等场景。2.InfluxDB连接配置✅application.yml#InfluxDB独立配置infl
- 上万个Map运行时链接ApplicationMaster超时FAILED
500佰
大数据云计算bigdatamapreduce
#MapReduce业务常见故障#大数据#生产环境真实案例#MapReduce#批计算#离线业务#整理#经验总结说明:此篇总结MapReduce业务常见故障案例处理方案结合自身经历总结不易+关注+收藏欢迎留言更多专题(详见):MapReduce计算引擎详解--项目优化(指导书)上万个Map运行时链接ApplicationMaster超时FAILED症状Mapreduce任务会并发起几万个map,会
- SpringBoot 根据配置前缀绑定配置:@ConfigurationProperties
JiaHao汤
SpringBootspringboot后端javaspringboot
文章目录内部Bean配置绑定第三方Bean配置绑定@ConfigurationProperties是Spring在org.springframework.boot.context.properties包中提供的一个注解。它的作用是根据注解中配置的前缀对SpringBoot配置文件(即application.xxx)中前缀相同的配置进行属性绑定。对于@ConfigurationProperties注
- WPF-DataGrid的增删查改
观无
wpf
背景:该功能为几乎所有系统开发都需要使用的功能,现提供简单的案例。1、MyCommandusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Input;namespaceWpfApplication2
- springboot访问请求404解决方法
java全套学习资料
javajava后端
新手在刚接触springboot的时候,可能会出现访问请求404的情况,代码怎么看都是对的,但就是404。在十分确定代码没问题的时候,可以看下自己的包是不是出问题了,什么意思么?答案:SpringBoot注解@SpringBootApplication默认扫描当前类的同包以及子包下的类;如:启动程序在包名com.yang.test.ymkribbonconsumer下,则会查找所有com.yang
- LeetCode[Math] - #66 Plus One
Cwind
javaLeetCode题解AlgorithmMath
原题链接:#66 Plus One
要求:
给定一个用数字数组表示的非负整数,如num1 = {1, 2, 3, 9}, num2 = {9, 9}等,给这个数加上1。
注意:
1. 数字的较高位存在数组的头上,即num1表示数字1239
2. 每一位(数组中的每个元素)的取值范围为0~9
难度:简单
分析:
题目比较简单,只须从数组
- JQuery中$.ajax()方法参数详解
AILIKES
JavaScriptjsonpjqueryAjaxjson
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。
type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持。
timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局
- JConsole & JVisualVM远程监视Webphere服务器JVM
Kai_Ge
JVisualVMJConsoleWebphere
JConsole是JDK里自带的一个工具,可以监测Java程序运行时所有对象的申请、释放等动作,将内存管理的所有信息进行统计、分析、可视化。我们可以根据这些信息判断程序是否有内存泄漏问题。
使用JConsole工具来分析WAS的JVM问题,需要进行相关的配置。
首先我们看WAS服务器端的配置.
1、登录was控制台https://10.4.119.18
- 自定义annotation
120153216
annotation
Java annotation 自定义注释@interface的用法 一、什么是注释
说起注释,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义。而J2SE5.0中提供的注释就是java源代码的元数据,也就是说注释是描述java源
- CentOS 5/6.X 使用 EPEL YUM源
2002wmj
centos
CentOS 6.X 安装使用EPEL YUM源1. 查看操作系统版本[root@node1 ~]# uname -a Linux node1.test.com 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [root@node1 ~]#
- 在SQLSERVER中查找缺失和无用的索引SQL
357029540
SQL Server
--缺失的索引
SELECT avg_total_user_cost * avg_user_impact * ( user_scans + user_seeks ) AS PossibleImprovement ,
last_user_seek ,
 
- Spring3 MVC 笔记(二) —json+rest优化
7454103
Spring3 MVC
接上次的 spring mvc 注解的一些详细信息!
其实也是一些个人的学习笔记 呵呵!
- 替换“\”的时候报错Unexpected internal error near index 1 \ ^
adminjun
java“\替换”
发现还是有些东西没有刻子脑子里,,过段时间就没什么概念了,所以贴出来...以免再忘...
在拆分字符串时遇到通过 \ 来拆分,可是用所以想通过转义 \\ 来拆分的时候会报异常
public class Main {
/*
- POJ 1035 Spell checker(哈希表)
aijuans
暴力求解--哈希表
/*
题意:输入字典,然后输入单词,判断字典中是否出现过该单词,或者是否进行删除、添加、替换操作,如果是,则输出对应的字典中的单词
要求按照输入时候的排名输出
题解:建立两个哈希表。一个存储字典和输入字典中单词的排名,一个进行最后输出的判重
*/
#include <iostream>
//#define
using namespace std;
const int HASH =
- 通过原型实现javascript Array的去重、最大值和最小值
ayaoxinchao
JavaScriptarrayprototype
用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能。本次主要是实现了Array的去重、获取最大值和最小值。
实现代码如下:
<script type="text/javascript">
Array.prototype.unique = function() {
var a = {};
var le
- UIWebView实现https双向认证请求
bewithme
UIWebViewhttpsObjective-C
什么是HTTPS双向认证我已在先前的博文 ASIHTTPRequest实现https双向认证请求
中有讲述,不理解的读者可以先复习一下。本文是用UIWebView来实现对需要客户端证书验证的服务请求,网上有些文章中有涉及到此内容,但都只言片语,没有讲完全,更没有完整的代码,让人困扰不已。但是此知
- NoSQL数据库之Redis数据库管理(Redis高级应用之事务处理、持久化操作、pub_sub、虚拟内存)
bijian1013
redis数据库NoSQL
3.事务处理
Redis对事务的支持目前不比较简单。Redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。当一个client在一个连接中发出multi命令时,这个连接会进入一个事务上下文,该连接后续的命令不会立即执行,而是先放到一个队列中,当执行exec命令时,redis会顺序的执行队列中
- 各数据库分页sql备忘
bingyingao
oraclesql分页
ORACLE
下面这个效率很低
SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_FS_RETURN order by id desc) A ) WHERE RN <20;
下面这个效率很高
SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_
- 【Scala七】Scala核心一:函数
bit1129
scala
1. 如果函数体只有一行代码,则可以不用写{},比如
def print(x: Int) = println(x)
一行上的多条语句用分号隔开,则只有第一句属于方法体,例如
def printWithValue(x: Int) : String= println(x); "ABC"
上面的代码报错,因为,printWithValue的方法
- 了解GHC的factorial编译过程
bookjovi
haskell
GHC相对其他主流语言的编译器或解释器还是比较复杂的,一部分原因是haskell本身的设计就不易于实现compiler,如lazy特性,static typed,类型推导等。
关于GHC的内部实现有篇文章说的挺好,这里,文中在RTS一节中详细说了haskell的concurrent实现,里面提到了green thread,如果熟悉Go语言的话就会发现,ghc的concurrent实现和Go有点类
- Java-Collections Framework学习与总结-LinkedHashMap
BrokenDreams
LinkedHashMap
前面总结了java.util.HashMap,了解了其内部由散列表实现,每个桶内是一个单向链表。那有没有双向链表的实现呢?双向链表的实现会具备什么特性呢?来看一下HashMap的一个子类——java.util.LinkedHashMap。
- 读《研磨设计模式》-代码笔记-抽象工厂模式-Abstract Factory
bylijinnan
abstract
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* Abstract Factory Pattern
* 抽象工厂模式的目的是:
* 通过在抽象工厂里面定义一组产品接口,方便地切换“产品簇”
* 这些接口是相关或者相依赖的
- 压暗面部高光
cherishLC
PS
方法一、压暗高光&重新着色
当皮肤很油又使用闪光灯时,很容易在面部形成高光区域。
下面讲一下我今天处理高光区域的心得:
皮肤可以分为纹理和色彩两个属性。其中纹理主要由亮度通道(Lab模式的L通道)决定,色彩则由a、b通道确定。
处理思路为在保持高光区域纹理的情况下,对高光区域着色。具体步骤为:降低高光区域的整体的亮度,再进行着色。
如果想简化步骤,可以只进行着色(参看下面的步骤1
- Java VisualVM监控远程JVM
crabdave
visualvm
Java VisualVM监控远程JVM
JDK1.6开始自带的VisualVM就是不错的监控工具.
这个工具就在JAVA_HOME\bin\目录下的jvisualvm.exe, 双击这个文件就能看到界面
通过JMX连接远程机器, 需要经过下面的配置:
1. 修改远程机器JDK配置文件 (我这里远程机器是linux).
 
- Saiku去掉登录模块
daizj
saiku登录olapBI
1、修改applicationContext-saiku-webapp.xml
<security:intercept-url pattern="/rest/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
<security:intercept-url pattern=&qu
- 浅析 Flex中的Focus
dsjt
htmlFlexFlash
关键字:focus、 setFocus、 IFocusManager、KeyboardEvent
焦点、设置焦点、获得焦点、键盘事件
一、无焦点的困扰——组件监听不到键盘事件
原因:只有获得焦点的组件(确切说是InteractiveObject)才能监听到键盘事件的目标阶段;键盘事件(flash.events.KeyboardEvent)参与冒泡阶段,所以焦点组件的父项(以及它爸
- Yii全局函数使用
dcj3sjt126com
yii
由于YII致力于完美的整合第三方库,它并没有定义任何全局函数。yii中的每一个应用都需要全类别和对象范围。例如,Yii::app()->user;Yii::app()->params['name'];等等。我们可以自行设定全局函数,使得代码看起来更加简洁易用。(原文地址)
我们可以保存在globals.php在protected目录下。然后,在入口脚本index.php的,我们包括在
- 设计模式之单例模式二(解决无序写入的问题)
come_for_dream
单例模式volatile乱序执行双重检验锁
在上篇文章中我们使用了双重检验锁的方式避免懒汉式单例模式下由于多线程造成的实例被多次创建的问题,但是因为由于JVM为了使得处理器内部的运算单元能充分利用,处理器可能会对输入代码进行乱序执行(Out Of Order Execute)优化,处理器会在计算之后将乱序执行的结果进行重组,保证该
- 程序员从初级到高级的蜕变
gcq511120594
框架工作PHPandroidhtml5
软件开发是一个奇怪的行业,市场远远供不应求。这是一个已经存在多年的问题,而且随着时间的流逝,愈演愈烈。
我们严重缺乏能够满足需求的人才。这个行业相当年轻。大多数软件项目是失败的。几乎所有的项目都会超出预算。我们解决问题的最佳指导方针可以归结为——“用一些通用方法去解决问题,当然这些方法常常不管用,于是,唯一能做的就是不断地尝试,逐个看看是否奏效”。
现在我们把淫浸代码时间超过3年的开发人员称为
- Reverse Linked List
hcx2013
list
Reverse a singly linked list.
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
p
- Spring4.1新特性——数据库集成测试
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- C# Ajax上传图片同时生成微缩图(附Demo)
liyonghui160com
1.Ajax无刷新上传图片,详情请阅我的这篇文章。(jquery + c# ashx)
2.C#位图处理 System.Drawing。
3.最新demo支持IE7,IE8,Fir
- Java list三种遍历方法性能比较
pda158
java
从c/c++语言转向java开发,学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象,测试代码例如以下:
package com.hisense.tiger.list;
import java.util.ArrayList;
import java.util.Iterator;
- 300个涵盖IT各方面的免费资源(上)——商业与市场篇
shoothao
seo商业与市场IT资源免费资源
A.网站模板+logo+服务器主机+发票生成
HTML5 UP:响应式的HTML5和CSS3网站模板。
Bootswatch:免费的Bootstrap主题。
Templated:收集了845个免费的CSS和HTML5网站模板。
Wordpress.org|Wordpress.com:可免费创建你的新网站。
Strikingly:关注领域中免费无限的移动优
- localStorage、sessionStorage
uule
localStorage
W3School 例子
HTML5 提供了两种在客户端存储数据的新方法:
localStorage - 没有时间限制的数据存储
sessionStorage - 针对一个 session 的数据存储
之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不