用html做网站步骤安阳网站优化公司推荐

web/2025/9/26 18:38:05/文章来源:
用html做网站步骤,安阳网站优化公司推荐,网站制作公司排名前十,网站开发后端怎么开发一、什么是 ThreadLocal ThreadLocal 提供了线程的局部变量#xff0c;每个线程都可以通过 set() 和 get() 来对这个局部变量进行操作#xff0c;但不会和其他线程的局部变量冲突#xff0c;实现了线程间的据隔离。 简单讲#xff1a;一个获取用户的请求线程 A#xff0c;…一、什么是 ThreadLocal ThreadLocal 提供了线程的局部变量每个线程都可以通过 set() 和 get() 来对这个局部变量进行操作但不会和其他线程的局部变量冲突实现了线程间的据隔离。 简单讲一个获取用户的请求线程 A如果向 ThreadLocal 填充变量 AValue只能被线程 A 操作该变量对其他获取用户的请求线程 B、C...是隔离的. 最简单的使用方式 类似一次 HTTP 请求线程中利用 ThreadLocal 存储 Cookie 对象进行状态管理。set Cookie private ThreadLocal httpThreadLocal new ThreadLocal();httpThreadLocal.set(“Cookie: sid13420771402233”)上面存储格式是 String 实际场景存储的是具体的对象。在这次 HTTP 请求过程中任何时候都可以获取 Cookie 。获取方式很简单 get Cookie String cookieValue (String) httpThreadLocal.get(); Thread 与 ThreadLocal 对象引用关系图 二、你熟悉的场景 2.1 数据库连接池 比如一次请求线程进来业务 Dao 需要更新 user 表和 user-detail 表。如果是 new 出两个数据库 Connection 分别不同的 Connection 操作 user 表和 user-detail 表就无法保证事务。那么数据库连接池是如何保证的 答案是利用 ThreadLocal 存储唯一 Connection 对象。每次请求线程pool.getConnection 获取连接的时候都会这样操作 会从 ThreadLocal 获取 Connection 对象。如果有则保证了后面多个数据库操作共用同一个 Connection 从而保证了事务。如果没有往 ThreadLocal 新增Connection 对象并返回到线程错误的做法 public class XXXService {private Connection conn; } 因为 conn 是线程不安全的。这样会导致多个请求公用一个连接。请求量很大的情况下延迟各种。你懂。 因此使用 ThreadLocal 保证每个请求线程的 Connection 是唯一的。即每个线程有自己的连接。 继续讲到 Spring 框架在事务开始时会给当前线程一个Jdbc Connection,在整个事务过程都是使用该线程绑定的connection来执行数据库操作实现了事务的隔离性。Spring框架里面就是用的ThreadLocal来实现这种隔离 2.2 HTTP Cookie 比如你访问百度、我访问百度会有不同 Cookie 。而且你不能访问我的 Cookie我也不能。顾名思义使用 ThreadLocal 保证每个 HTTP 请求线程的 Cookie 是唯一的。 Cookie 这样才能做 Session 等状态管理。 三、实战场景 总结一下就是ThreadLocal 可以让同一个线程中上下文之间数据共享 在上面章节 二、你熟悉的场景 其实介绍了很多现有场景。那么我这边具体的实战场景是什么 简单的例子 适用满足这两个条件的场景1.每个线程独有的一些信息2.这些信息又会在多个方法或类中用到。 一个请求线程里面有两个异步小线程各有一个方法。分别处理 A 或 B 业务一种方法是传递不可变的入参另一种就是 ThreadLocal放在 ThreadLocal 的入参会被各个方法共享。而且多个请求线程互不影响复杂的例子 一次发货操作会根据入参进行组件化、流程编排话。那么入参会被各个地方用到而且有些流程组件是异步的类似 new thread 操作的。这时候可以定一个 XXContext 上下文 public class XXContext {private static ThreadLocalMapClass?, Object context new InheritableThreadLocal();/*** 把参数设置到上下文的Map中*/public static void put(Object obj) {MapClass?, Object map context.get();if (map null) {map new HashMap();context.set(map);}if (obj instanceof Enum) {map.put(obj.getClass().getSuperclass(), obj);} else {map.put(obj.getClass(), obj);}}/*** 从上下文中根据类名取出参数*/SuppressWarnings(unchecked)public static T T get(ClassT c) {MapClass?, Object map context.get();if (map null) {return null;}return (T) map.get(c);}/*** 清空ThreadLocal的数据*/public static void clean() {context.remove();} } 代码解析 都是 static 操作类似 DateUtil 玩法记得每次请求线程后清理。可以 AOP 去清理加个注解就行。因为同一个请求线程可能被业务方公用。完 转载于:https://www.cnblogs.com/Alandre/p/11145516.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/81280.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站设计 收费网站图片素材下载

RabbitMQ RabbitMQ是一个开源的消息队列中间件,它实现了高效、可靠的消息传递机制。它支持多种消息传递模式,如发布/订阅、点对点、请求/回应等。RabbitMQ以其可靠性、灵活性和易用性受到广泛的关注和应用。 RabbitMQ基于AMQP(Advanced Mess…

织梦网站被挂马怎么处理申请免费个人网站

转载http://hi.baidu.com/ddumy/blog/item/d96b361901776e7ddab4bdd6.html固定资产减值准备与累计折旧会计核算的关系【摘 要】 固定资产减值准备与累计折旧是固定资产核算的重要组成部分,又都是“固定资产”的备抵项目,它们共同反映着固定资产的现时价值…

可以直接进入网站的代码网站前台用什么做

云计算参考架构: 上图阐释如何创建私有和混合云,最终用户可以自行提供计算、 存储和网络。许多大型组织开始创建内部的私有云,来增强其数据中心战略。 58同城的云架构: 百度社区的云架构 结合对弹性服务的理解,第一个是弹性伸缩,你…

制作网站语言wordpress汉化手机版

学习目标: 联邦学习目前面临的挑战以及解决方案 学习内容: 联邦学习是一种新兴的人工智能基础技术,它在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算结点之间开展高效率的…

网站打不开怎么解决网站域名注册信息

Tomcat调优原理: 1、增加最大连接数(增大值避免队列请求过多,导致响应缓慢) 2、调整工作模式 Bio(BlockingI/O):默认工作模式,阻塞式I/O操作,没有任何优化技术处理,性能比较低。Nio(…

曲靖模板网站建设企业官网流程

光模块(optical module)由光电子器件、功能电路和光接口等组成,光电子器件包括发射和接收两部分。光模块主要应用在光通信、数据中心等地方的。那么,光模块到底是什么呢?光模块有什么用呢?接下来我们就跟随飞畅科技的小编一起来详…

网站页面怎么优化定制网站建设多少钱

一、摘要(本系列汇总说明) - 总纲 FTP、SFTP上传下传、进度监控、断点续传、连接池封装JAVA一网打尽(一) FTP、SFTP上传下传、进度监控、断点续传、连接池封装JAVA一网打尽(二) FTP、SFTP上传下传、进度监…

惠安网站建设费用wordpress 多语言网站

字典表 前端页面显示 依据这个字典表实现动态查询 初始化数组 首先先在全局变量里定义一个数据存放查询出来的数据 data() {return {dicts: []};},生命周期 查询的时候是声明周期开始的时候,原本增删改查页面在生命周期开始的时候就查询了页面的数据获得了列表值…

营销型网站的要素广告设计与制作教程

乔布斯有一句话,叫做我们是站在人文与技术的十字路口上,很多人把这句话的理解为苹果除了追求技术性能,还追求艺术美感,但如果你看看他 2001 年接受 NHK 的采访,你会明白乔布斯说的不是这个意思,他的意思应该…

成都微信网站制作wordpress 源码 分析

im2bw函数是MATLAB用于图像二值化的函数&#xff0c;调用形式为&#xff1a; J im2bw(I,level) 其中阈值level是一个0-1的值&#xff0c;如果输入的图像像素值范围0-255&#xff0c;设置阈值level160&#xff0c;则该函数会将图像中像素值<160的点置为0&#xff0c;像素值…

怎么在网站后台挂马国际网站 建设

人工智能量子计算&#xff0c;这是一种可能改变世界的伙伴关系。 在科技的前沿&#xff0c;两大革命性技术——人工智能&#xff08;AI&#xff09;和量子计算——正站在合作的十字路口。人工智能&#xff0c;以其强大的数据分析能力和模式识别&#xff0c;正在改变着我们生活…

seo怎么优化网站排名购买网站外链

一.OpenCV安装环境配置 1.OpenCV安装 &#xff08;1&#xff09;下载 官方下载链接&#xff1a;http://opencv.org/releases 这边选择需要的版本&#xff0c;我是在windows下的4.9.0。&#xff08;科学上网下载很快&#xff0c;否则可能会有点慢&#xff09; (2)安装 双击下…

视频下载网站软件做副屏个人如何注册小程序

您可以通过以下解决方案之一来实现此目的&#xff1a;使用构造函数Autowired这种方法将构造需要一些bean作为构造函数参数的bean。在构造函数代码中&#xff0c;设置静态字段的值为参数为构造函数执行。样品&#xff1a;Componentpublic class Boo {private static Foo foo;Aut…

西安建设局网站地址曲靖做网站需要多少钱

具体思路 先设置画布的宽高&#xff0c;再将每个图片整理成一个对象的数组通过某个方法传出合成后的base64 &#xff08;1&#xff09;、创建一个画布的类&#xff0c;他的属性是canvas虚拟dom和ctx &#xff08;2&#xff09;、构造器初始化convas对象、ctx、convas的宽高 …

建站之星收费版国内全屏网站有哪些

前言:在你无聊的时候,想想比你优秀还努力的人,也许就不觉的无聊了今天下午没事干把买的java并发编程艺术这本书拿出来看了看,看了下也记不住,还是好记性不如烂笔头,今天讲四个并发中可能会用到的工具类,分别是&#xff1a;CountDownLatchCyclicBarrierSemaphoreExchangerCountD…

设计软件网站推荐一般网站空间多大

本文将介绍Python安装的详细步骤如下&#xff1a; 下载 python安装 python配置环境变量&#xff08;安装时勾选配置环境变量的则无需此步骤&#xff09; 一、python下载 官网&#xff1a;Download Python | Python.org 根据电脑位数下载所需的版本 二、Python安装 1.打开安…

个人空间网站做面包有哪些网站知乎

Hive SQL-DML-Load加载数据 在 Hive 中&#xff0c;可以使用 SQL DML&#xff08;Data Manipulation Language&#xff09;语句中的 LOAD 命令来加载数据到表中。LOAD 命令用于将本地文件系统或 HDFS&#xff08;Hadoop 分布式文件系统&#xff09;中的数据加载到 Hive 表中。 …

虚拟主机和网站空间公司平台网站建设

应用场景&#xff1a;一个游戏可能会衍生出其他APP或小程序之类的软件&#xff0c;例如王者营地是王者荣耀的官方APP&#xff0c;王者营地提供资讯、赛事、社区、战绩等功能。所以游戏端会和衍生出来的软件端做一些数据互通。这里把软件端称为中台系统。 Get请求和Post请求的区…

海南建设网站公司新品手机上市

一 什么是虚拟化在计算机中&#xff0c;虚拟化&#xff08;Virtualization&#xff09;是一种资源管理技术&#xff0c;是计算机的各种实体资源&#xff0c;如服务器&#xff0c;网络&#xff0c;内存及存储等&#xff0c;予以抽象&#xff0c;转换后呈现出来&#xff0c;打破实…

兰州网站制作公司排名网站通知系统

对于缺失的数据&#xff1a; 我们对连续数值的特征做标准化&#xff08;standardization&#xff09;&#xff1a;设该特征在整个数据集上的均值为 μ &#xff0c;标准差为 σ 。那么&#xff0c;我们可以将该特征的每个值先减去 μ 再除以 σ 得到标准化后的每个特征值。对于…