概述
- 事件根据事件模型规定的传播路径被逐级传递, 在传播过程中依次触发对应的事件监听器, 然后被继续传递. 直到完成事件传播, 或是传播过程被终止.
事件路径 和 DOM 分支 ( branch )
- 从事件源所在节点 ( event.target ) 逐级向上一直追溯到 window 对象的路径中的一系列节点, 构成了一个 DOM 分支.
- 这个分支就是该事件传播的路径
- 示意图:
-
在下图中,
元素就是 事件源所在节点. 它和父级元素层层向上构成了一个事件在不同阶段传播的路径.
事件传播的阶段 Event Propagation Phases:
- 事件传播是JS DOM事件中各阶段的概括, 由三个阶段组成:
-
捕获阶段 capture phase
- 事件从 window 对象逐级向下传播, 直到目标对象的父节点的过程
-
目标阶段 target phase
- 事件到达目标节点自身
-
冒泡阶段 bubble phase
- 事件从目标的父节点逐级向上传播, 一直到达 window 对象的过程
-
event.target 和 event.currentTarget
- event.target :
- 事件源, 事件传播路径的中心
- event.currentTarget:
- 在事件传播过程中, 每次触发监听器时, 监听器所在(绑定)的对象.
监听器的绑定
- 在一个节点上, 可以绑定多个同类型的事件监听器. 当事件传播到这个节点上的时候, 监听器根据绑定的先后依次触发. (队列)
不同类型的监听器在三个阶段的表现:
- 使用 addEventListener() 绑定事件监听器
target.addEventListener(type, listener[, useCapture])
- 捕获型事件监听器:
- 在 addEventListener() 函数中, 第三个参数 (捕获标志位) 为true 的事件监听器.
el.addEventListener('click', listener, true)
- 在 addEventListener() 函数中, 第三个参数 (捕获标志位) 为true 的事件监听器.
- 捕获型事件监听器:
-
捕获阶段:
- 在捕获阶段的路径中, 捕获器 ( capturer listener ) 会主动捕获事件, 然后触发.
-
目标阶段:
- 在这个阶段, 目标节点上的所有监听器会按照绑定的顺序依次地触发.
-
冒泡阶段:
- 在这个阶段, 节点上的非捕获监听器会被触发.
-
不会冒泡的事件
- 需要注意的是, 有一部分事件是不会冒泡的:
- 例如 focus, blur, load 事件.
- 因此它们的监听器必须设置为捕获器才会有效.
- 需要注意的是, 有一部分事件是不会冒泡的:
控制事件传播
-
event.stopPropagation()
- 事件的传播路径停止在当前监听器的节点上.
- 路径中该位置上的其他同类事件监听器仍然能够响应事件.
-
event.stopImmediatePropagation()
- 事件的传播立即结束.
- 该位置上的其他同类事件监听器不会被触发
-
取消事件默认行为
- event.preventDefault()
- 参考
- https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Events
- https://www.sitepoint.com/event-bubbling-javascript/
你可能感兴趣的:(Javascript 事件的传播)
- 2023-05-26
谭大哥
当我第一次写作的时候,不知如何动笔,漫漫长夜久久无法入睡,想想白天发生的事情时时浮现脑海当中,心情久久不能平静,来深圳创业二十多年发生过种种事情,从失败到成功,遇各种挫折都一一克服。每遇到一件微机感,老婆都我加油打气甚至鼓励我,让我把每次都能一一化解度过难关,今天不知道什么勇气让我把二十年的心里话全部都说出来全部释放。心情久久不能平静无法入睡,好想努力创造一帆事业闯出一个新的天地,让家人过上更好的
- 微信小程序如何获取当前页面栈中有几个页面
玄学大师
//获取当前页面栈的数量letarr=getCurrentPages();console.log('页面',arr.length);
- 抖音申诉失败还可能解封吗?抖音怎么申诉才能通过?
优惠券高省
抖音怎么申诉才能成功?在使用抖音的过程中,有时候可能会遇到一些意外情况,导致账号被封禁或者限制。为了解决这样的问题,抖音提供了申诉功能,用户可以通过申诉来恢复被封禁的账号或解除限制。先给大家分享一个小编在做的网络项目,不用投资一分钱,只要淘宝、京东、拼多多等电商不倒,这个项目永久可做,而且收入稳定!抖音怎么申诉才能成功?申诉失败还可能解封吗?先给大家分享一个网购省钱又赚钱的方法,不用投资一分钱,只
- 为什么许多人坐月子都选择去月子中心?
屁孩王木木
为什么许多人坐月子都选择去月子中心?整个月子坐下来,我觉得这些选择去月子中心的人太明智了!为啥会发出这样的感叹全来源于我不快乐的月子生活。因为我愚蠢的选择了让自己的妈妈来照顾我的月子,本来从孕期到生产一直很顺的,没想到所有的不快乐出现在了月子里,怪就怪我心疼去月子中心的花费。但其实算下来,我这个月子坐下来也没少花钱,爸妈来回飞机,其实就1万了。这里真心奉劝大家千万不要学我,即使是离的很近也不要,否
- Web安全之CSP
weixin_30649641
web安全开发工具网络
内容安全策略(Content-Security-Policy,简称CSP)概念:内容安全策略(CSP)是一种web应用技术用于帮助缓解大部分类型的内容注入攻击,包括XSS攻击和数据注入等,这些攻击可实现数据窃取、网站破坏和作为恶意软件分发版本等行为。该策略可让网站管理员指定客户端允许加载的各类可信任资源。浏览器支持:统计来源:caniuse.com/contentsecuritypolicy&Mo
- 从面试到晋升:美团技术专家的职业发展全记录
AI天才研究院
ChatGPT实战ChatGPTAI大模型应用入门实战与进阶面试职场和发展ai
从面试到晋升:美团技术专家的职业发展全记录关键词:美团技术专家、技术职级体系、面试准备、晋升路径、能力模型、技术管理、职业发展摘要:本文深度解析美团技术专家的职业发展路径,从面试准备阶段的简历优化、技术笔试、多轮面试策略,到晋升过程中的能力模型构建、项目实战经验、跨团队协作技巧,结合具体案例和实战经验,完整呈现从初级工程师到资深技术专家的成长轨迹。通过剖析美团独特的T序列职级体系、能力评估标准和考
- java 求1_java 求1 2i
新智元
java求1
1-2求斐波拉契数求斐波拉契数斐波拉契数为,Fib(N)=Fib(N-1)+Fib(N-2)F(0)=F(1)=1用Java编写能求Fib(N)的程序输入为N,须输出Fib(N)如输入3输出:3importjava.util.Scanner;publicclassMai...文章uiiuiiu2018-07-12903浏览量求字符串的len组合数(java程序)importjava.util.Li
- 第七节课后感想
3e35f508017b
这节课很有意思,老师让我们给别人和给自己画自画像。自画像:纸片拼贴还看了阿基里斯与龟的电影,讲述了命运坎坷的真知寿坚持不懈地走着艺术之路,最终得到最珍贵的宝物的故事。
- 转发【同频共振】
木子阿娟
有人为了合群,总是逼自己参与到其他人的聊天中,连笑都要把握时机和节奏。有人曾为了融入一个圈子,努力模仿别人的穿着打扮、言行举止,最后把自己弄得既不像别人,也不像自己;还有人为了不被孤立,一直强迫自己参加一些并不喜欢的饭局,还假装很开心的样子。现实生活里,很多人都是如此,费尽心思讨好别人,委屈求全。但是,一味地讨好和迎合,换不来对应的尊重。人与人之间相处,比合群更重要的,是先找到能够同频共振的人。愚
- 2023-09-15
如鱼饮水2020
中原焦点团队坚持分享第1319天(20230915)昨晚就有些小兴奋,想象三个月不见的宝宝,会有哪些惊喜的变化。为迎接周岁生日回家的宝贝大扫除。早晨起来再次重新擦地板除尘,忽然听到微信里的消息是孩子发烧了,一瞬间脑子僵住了,怎么办?先上医院吧。除了牵挂之外,这边定好的宾馆、酒店、宴席、蛋糕等庆生活动以及旅游安排,如何更改?可能这些都无法成行。完全能理解孩子突发状况,内心还是有失落的,准备了这么多,
- 2022-08-30
君惕若
20220830星期二早。早哈。哈哈,心情不错呀。对。说说昨天的开心事。目标的完成,我很满意。确实。完成了整体的调整、背景更换和第一部分的逐字稿。虽然昨天真正开始执行目标已经比较晚了,但是效率很高。是的。昨天还把8月份的账对清楚了。真是吃不穷穿不穷,算计不到才受穷。这么些年,认认真真算账太少了,而且昨天想明白了一点。支出要每天思考的,不仅是钱,时间、能量都需要仔细计算,这样才能更有效利用资源。嗯。
- 练太极拳的不能有刀兵气
玄同说太极
看倌:太极拳的形,干什么用的?玄同:就是为更好的理解气。例如金刚捣碓,其实捣的不是碓,是碓舀里的物件;太极拳的震脚,其实震的不是脚,是身体里的气。我们对气的下行不清晰,所以借一下:震脚。看倌:太极拳怎么看待呼吸?玄同:无论打拳还是不打拳,每一个呼吸都要走小肚子,这是太极拳的核心。慢慢的,懂了丹田的开合之后,再炼弹抖。太极拳的弹抖不是手抖,都是丹田的弹抖。丹田的弹抖,不能空,要逐渐增加负重。看倌:开
- 2018-05-19
史响庆
5.19日周六小雨庆妈妈263篇今天周末,我受生物钟影响,还是老时间就睡醒了,我蹑手蹑脚的走出卧室。洗刷结束去厨房开始做饭。心想:让孩子睡个懒觉吧,今天不上学!看到孩子的房门关着,以为她还在睡觉!昨天晚上睡觉前我和庆庆聊天:庆庆,见过美人鱼吗?妈妈,你说美人鱼是人还是鱼?我也不知道,你觉得呢?我也不知道!那你想看看吗?想看呀!你知道去哪能看到美人鱼?嗯,周末这两天都可以看,但是得……放心吧,妈妈,
- 教育者与教书匠
啊大甘
教育者与教书匠教育是教师终身奉行的事业,也是必须负责的工作。因为我们面对的是人,是具有生命张力的个体。所以在教育中我一直也在区分教育家与教书匠的区别。一名教师有超高的教学能力,我认为不是叫教育家,而没有教学实践的积累的教师空有一套教学理论也走不到教育家的行列。纵观历史每一位教育专家是一步到位的。没有听说谁从师范院校出来就去了教育管理的岗位,教育容不得差错,教育也不是随便试试。教育需要付出实际行动,
- 博古通今的林总
幸福的味道伊利酸奶
项红萍—学习打卡10.2【成长日记—成长是解决一切问题的根本答案】日期:2022年10月2日第126天/总180天静心3总1385经典:1总103大拜108总4*108+3觉悟人生奉献人生圆满人生恪守初心/勤学明辨/博学慎思/习礼化人/反求诸己/家族兴旺/国富民安觉:接受结果,种下善因,从因上发力发愿:愿天下父母皆得欢心、愿天下儿女皆成栋梁。【今日金句】1.什么人能认识心?明心见性,心光明的时候见
- 《左轮手枪 》韩国电影资源【1080p超清中文字幕】免费在线观看未删减完整版夸克网盘高清迅雷网盘百度云下载步骤
全网优惠分享君
《左轮手枪》是一部充满悬疑与犯罪元素的韩国电影,由吴胜旭执导,汇集了全度妍、池昌旭、林智妍等实力派演员,于2024年8月7日在韩国上映。影片以其紧凑的剧情、深刻的角色塑造和紧张的氛围,吸引了众多观众的关注。提示:文章排版原因,观影资源链接地址放在文章结尾,往下翻就行故事围绕着背负所有罪责、被诬陷入狱的前警察河秀英(全度妍饰)展开。河秀英本是一位正直勇敢的警察,却因某种原因被栽赃陷害,失去了职业生涯
- 最新麦当劳优惠券折扣,怎么吃麦当劳最便宜,麦当劳优惠折扣技巧
高省_飞智666600
麦当劳优惠券怎么获得?作为全球规模最大的快餐集团,麦当劳食品对人们具有十分强大的诱惑力,很多人都喜欢麦当劳食品,而麦当劳优惠券的使用自然受人们所关注。但是,麦当劳优惠券怎么获得呢?至于我为何用高省APP领取淘宝商城优惠卷返佣金呢,当然是高省佣金更高,模式更好。【高省】是一个可省钱佣金高,能赚钱有收益的平台,百度有几百万篇报道,也期待你的加入。高省邀请码666888,注册送2皇冠会员。麦当劳优惠券怎
- 疯狂小杨哥推荐的产品如何购买更便宜?三只羊产品省钱秘籍!
浮沉导师
在这个数字化浪潮汹涌澎湃的时代,经济的发展日新月异,平台化和数字化已然成为驱动经济增长的核心引擎。内容电商正如一颗璀璨的星辰,与各行各业深度交融,为解决社会民生问题释放出巨大的能量。疯狂小杨哥和三只羊,作为行业内的佼佼者,始终秉持着“有家的地方有工作”的神圣使命砥砺前行。众小二-微易购小程序的诞生,是这一使命的有力践行,它立志在五年内让四万人的年收入显著提升,为众多渴望改变生活的人带来了希望的曙光
- ???实现高可用的故障转移策略的工具——Keepalived(含数据库的主从复制、MHA高可用简单配置)
Lotus 沈棋
Linux运维_架构运维架构keepalived
文章目录一、高可用与keepalived介绍1、什么是高可用2、实现高可用的技术1).负载均衡器2).故障转移工具3).数据库高可用性4).存储高可用性5).监控与报警工具6).云服务高可用性3、Keepalived介绍0-1)Keepalived是什么、功能介绍:Keepalived的功能*注:Nginx和LVS在负载均衡上使用的区别:实际应用场景*注:具体如何使用Keepalived和LVS进
- grafana10.x报错 Failed to upgrade legacy queries Datasource x was not found
每天靠近一点点
grafana
问题grafana从6.x升级到10.x后,导入json文件后报错,数据源x查询不到,grafana不显示数据;TemplatingFailedtoupgradelegacyqueriesDatasourcexwasnotfound解决方法可能grafana升级后数据源找不到,在面板上重新选择数据源保存后,点击Inspect中的PanelJSON文件,查看更新后数据源的uid,在导入的json文件
- 《局外人》 罗小聪
聪聪罗
世界是伪善的,表象的。大家都虚伪的追求形而上,你又凭什么如此真实坦诚?但是,因为不屈服故而存在才有价值。异己的世界里,你我皆为局外人。世界规则在默尔索之外运行,给你我带来一股浓浓的被遗弃感。荒诞、悲凉、孤独和排异来的如此简单而迅速,在沟通无果后,我们更加孤独,他人变为了我们的地狱。问题的关键在于,我们不能丧失对这个世界的希望和信心,英雄在认清生活的真相之后仍热爱生活,坚持自我的真实,才是存在或活着
- 为什么你越害怕发生的事情,越容易发生
猴得住
美国人爱德华·墨菲是一名工程师,他曾参加过美国空军于1949年进行的MX981实验。这个实验的目的是为了测定人类对加速度的承受极限。其中有一个实验项目是将16个火箭加速度计悬空装置在受试者上方,当时有两种方法可以将加速度计固定在支架上,而不可思议的是,竟然有人有条不紊地将16个加速度计全部装在错误的位置。于是墨菲作出了“事情如果有变坏的可能,不管这种可能性有多小,它总会发生,并引起最大可能的损失”
- 【原创文集】最美逆行者
教科院预文2班
分院:教育科学学院班级:预文2班姓名:潘奥樱2020年一场突如其来的疫情在武汉爆发,马上正值我国的春节,人员流动最大,每个工作者在这期间都想回家,因为这疫情非常严重,于2020年1月23日10时发布通告,城市、公交、地铁、轮渡、长途客运暂停运营,机场、火车站离汉通道暂时关闭,武汉迅速变成一座空城。在这国家危难的时候,出现了许多最美逆行者。他们不顾自己的安慰,冲在最前线抗击疫情,拯救武汉,拯救中国。
- Lua的_G表里有啥?
东北砍王
Lualua
今天看xlua源码的时候发现了一个表_G,如图所示:那它到底啥呢?应该是保存了lua所有用到的全局变量和局部变量比如:这三种用法是一样的_G.print("测试")_G["print"]("测试")print("测试")那里面到底有啥呢?全部输出为:function:00007FFFFB9ECA60setfenvfunction:000001718A717510rawsetfunction:000
- 2022-11-13 c习题10-4 递归求简单交错幂级数的部分和
远山熊一
#includedoublefn(doublex,intn);intmain(){doublex;intn;scanf("%lf%d",&x,&n);printf("%.2f\n",fn(x,n));return0;}doublecalc_pow(doublea,intb);//自定义一个pow函数求指数幂doublecalc_pow(doublea,intb)//定义pow利用了递归函数{if(
- 乏味与兴趣
杨柳絮如雪
每到星期一的早餐,整个人都不好了。不想起床,不想上班。是啊,重点是不想上班。回头算来,将近二十年的职场历程,是怎样走过来的呢?人又有几个二十年啊?对于这份工作,说不上讨厌但着实不喜欢。在工作中我的要求不高,只希望得到应有的尊重和与劳动相匹配的报酬。然而,为了生存,作为微小尘埃的我什么都说了不算。因为不热爱而缺乏动力,即使有动力也没有舞台,即使有舞台,上台表演的路被人堵死,那台上的人永远都不会是你。
- Prometheus搭建 和 Node_Exporter搭建
强_子
prometheus
1.Prometheus和Node_Exporter的关系●Prometheus:是一个开源的监控和告警工具,能够从各种数据源(如NodeExporter)拉取指标,并存储这些指标。它提供了一个强大的查询语言(PromQL),可以用来分析和可视化监控数据。●Node_Exporter:是Prometheus的一个官方插件,用于收集主机系统的硬件和操作系统级别的指标(如CPU使用率、内存使用情况、磁
- 我的脚印不孤单
静夜语思
转眼又是新的一年14年来,一路上跌跌撞撞,深一脚浅一脚,虽然留下的脚印,智能儿14年来,一路上我乖乖坐在椅子上,认真的做着功课,爸爸在我身边踱着步,是大吼一声,错了,那你算错了,这么简单的还会,我乖乖坐在椅子上认真的做着功课,爸爸在我身边儿踱着步,时而大吼一声,错了,那里算错了,这么简单的还会错。时而慈眉善目,却又不刻意流露在脸上,然后继续在我身边走来走去走来走去,这是我儿时爸爸在我身后留下的一个
- 【Redis篇】数据库架构演进中Redis缓存的技术必然性—高并发场景下穿透、击穿、雪崩的体系化解决方案
奈斯DB
Redis专栏缓存redis数据库架构运维
《博主主页》:CSDN主页__奈斯DBIFClub社区主页__奈斯、《擅长领域》:擅长阿里云AnalyticDBforMySQL(分布式数据仓库)、Oracle、MySQL、Linux、prometheus监控;并对SQLserver、NoSQL(Redis)有了解如果觉得文章对你有所帮助,欢迎点赞收藏加关注作为DBA或运维在日常与Redis打交道时,往往更关注部署安装、Key清理、内存回收、备份
- Lua _G表 和 _ENV表
定义在所有函数外部的变量我们可以称之为全局变量(GlobalVariable),它的作用域默认是整个程序。但Lua作为一种嵌入式语言,代码段(chunk)都是由宿主应用调用的,它自身都不知道会被嵌入到哪个应用程序中。为了解决这个问题,它并没有使用全局变量,而是通过table对全局变量进行模拟。我们可以认为Lua语言把所有的全局变量保存在一个称为全局环境(GlobalEnvironment)的普通表
- Java 并发包之线程池和原子计数
lijingyao8206
Java计数ThreadPool并发包java线程池
对于大数据量关联的业务处理逻辑,比较直接的想法就是用JDK提供的并发包去解决多线程情况下的业务数据处理。线程池可以提供很好的管理线程的方式,并且可以提高线程利用率,并发包中的原子计数在多线程的情况下可以让我们避免去写一些同步代码。 这里就先把jdk并发包中的线程池处理器ThreadPoolExecutor 以原子计数类AomicInteger 和倒数计时锁C
- java编程思想 抽象类和接口
百合不是茶
java抽象类接口
接口c++对接口和内部类只有简介的支持,但在java中有队这些类的直接支持 1 ,抽象类 : 如果一个类包含一个或多个抽象方法,该类必须限定为抽象类(否者编译器报错) 抽象方法 : 在方法中仅有声明而没有方法体 package com.wj.Interface;
- [房地产与大数据]房地产数据挖掘系统
comsci
数据挖掘
随着一个关键核心技术的突破,我们已经是独立自主的开发某些先进模块,但是要完全实现,还需要一定的时间... 所以,除了代码工作以外,我们还需要关心一下非技术领域的事件..比如说房地产 &nb
- 数组队列总结
沐刃青蛟
数组队列
数组队列是一种大小可以改变,类型没有定死的类似数组的工具。不过与数组相比,它更具有灵活性。因为它不但不用担心越界问题,而且因为泛型(类似c++中模板的东西)的存在而支持各种类型。 以下是数组队列的功能实现代码: import List.Student; public class
- Oracle存储过程无法编译的解决方法
IT独行者
oracle存储过程
今天同事修改Oracle存储过程又导致2个过程无法被编译,流程规范上的东西,Dave 这里不多说,看看怎么解决问题。 1. 查看无效对象 XEZF@xezf(qs-xezf-db1)> select object_name,object_type,status from all_objects where status='IN
- 重装系统之后oracle恢复
文强chu
oracle
前几天正在使用电脑,没有暂停oracle的各种服务。 突然win8.1系统奔溃,无法修复,开机时系统 提示正在搜集错误信息,然后再开机,再提示的无限循环中。 无耐我拿出系统u盘 准备重装系统,没想到竟然无法从u盘引导成功。 晚上到外面早了一家修电脑店,让人家给装了个系统,并且那哥们在我没反应过来的时候, 直接把我的c盘给格式化了 并且清理了注册表,再装系统。 然后的结果就是我的oracl
- python学习二( 一些基础语法)
小桔子
pthon基础语法
紧接着把!昨天没看继续看django 官方教程,学了下python的基本语法 与c类语言还是有些小差别: 1.ptyhon的源文件以UTF-8编码格式 2. / 除 结果浮点型 // 除 结果整形 % 除 取余数 * 乘 ** 乘方 eg 5**2 结果是5的2次方25 _&
- svn 常用命令
aichenglong
SVN版本回退
1 svn回退版本 1)在window中选择log,根据想要回退的内容,选择revert this version或revert chanages from this version 两者的区别: revert this version:表示回退到当前版本(该版本后的版本全部作废) revert chanages from this versio
- 某小公司面试归来
alafqq
面试
先填单子,还要写笔试题,我以时间为急,拒绝了它。。时间宝贵。 老拿这些对付毕业生的东东来吓唬我。。 面试官很刁难,问了几个问题,记录下; 1,包的范围。。。public,private,protect. --悲剧了 2,hashcode方法和equals方法的区别。谁覆盖谁.结果,他说我说反了。 3,最恶心的一道题,抽象类继承抽象类吗?(察,一般它都是被继承的啊) 4,stru
- 动态数组的存储速度比较 集合框架
百合不是茶
集合框架
集合框架: 自定义数据结构(增删改查等) package 数组; /** * 创建动态数组 * @author 百合 * */ public class ArrayDemo{ //定义一个数组来存放数据 String[] src = new String[0]; /** * 增加元素加入容器 * @param s要加入容器
- 用JS实现一个JS对象,对象里有两个属性一个方法
bijian1013
js对象
<html> <head> </head> <body> 用js代码实现一个js对象,对象里有两个属性,一个方法 </body> <script> var obj={a:'1234567',b:'bbbbbbbbbb',c:function(x){
- 探索JUnit4扩展:使用Rule
bijian1013
java单元测试JUnitRule
在上一篇文章中,讨论了使用Runner扩展JUnit4的方式,即直接修改Test Runner的实现(BlockJUnit4ClassRunner)。但这种方法显然不便于灵活地添加或删除扩展功能。下面将使用JUnit4.7才开始引入的扩展方式——Rule来实现相同的扩展功能。 1. Rule &n
- [Gson一]非泛型POJO对象的反序列化
bit1129
POJO
当要将JSON数据串反序列化自身为非泛型的POJO时,使用Gson.fromJson(String, Class)方法。自身为非泛型的POJO的包括两种: 1. POJO对象不包含任何泛型的字段 2. POJO对象包含泛型字段,例如泛型集合或者泛型类 Data类 a.不是泛型类, b.Data中的集合List和Map都是泛型的 c.Data中不包含其它的POJO  
- 【Kakfa五】Kafka Producer和Consumer基本使用
bit1129
kafka
0.Kafka服务器的配置 一个Broker, 一个Topic Topic中只有一个Partition() 1. Producer: package kafka.examples.producers; import kafka.producer.KeyedMessage; import kafka.javaapi.producer.Producer; impor
- lsyncd实时同步搭建指南——取代rsync+inotify
ronin47
1. 几大实时同步工具比较 1.1 inotify + rsync 最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是 inotify + rsync,但随着文件数量的增大到100W+,目录下的文件列表就达20M,在网络状况不佳或者限速的情况下,变更的文件可能10来个才几M,却因此要发送的文件列表就达20M,严重减低的带宽的使用效率以及同步效率;更为要紧的是,加入inotify
- java-9. 判断整数序列是不是二元查找树的后序遍历结果
bylijinnan
java
public class IsBinTreePostTraverse{ static boolean isBSTPostOrder(int[] a){ if(a==null){ return false; } /*1.只有一个结点时,肯定是查找树 *2.只有两个结点时,肯定是查找树。例如{5,6}对应的BST是 6 {6,5}对应的BST是
- MySQL的sum函数返回的类型
bylijinnan
javaspringsqlmysqljdbc
今天项目切换数据库时,出错 访问数据库的代码大概是这样: String sql = "select sum(number) as sumNumberOfOneDay from tableName"; List<Map> rows = getJdbcTemplate().queryForList(sql); for (Map row : rows
- java设计模式之单例模式
chicony
java设计模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述单例模式的: 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 单例模式的结构 单例模式的特点: 单例类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必须给所有其他对象提供这一实例。 饿汉式单例类 publ
- javascript取当月最后一天
ctrain
JavaScript
<!--javascript取当月最后一天--> <script language=javascript> var current = new Date(); var year = current.getYear(); var month = current.getMonth(); showMonthLastDay(year, mont
- linux tune2fs命令详解
daizj
linuxtune2fs查看系统文件块信息
一.简介: tune2fs是调整和查看ext2/ext3文件系统的文件系统参数,Windows下面如果出现意外断电死机情况,下次开机一般都会出现系统自检。Linux系统下面也有文件系统自检,而且是可以通过tune2fs命令,自行定义自检周期及方式。 二.用法: Usage: tune2fs [-c max_mounts_count] [-e errors_behavior] [-g grou
- 做有中国特色的程序员
dcj3sjt126com
程序员
从出版业说起 网络作品排到靠前的,都不会太难看,一般人不爱看某部作品也是因为不喜欢这个类型,而此人也不会全不喜欢这些网络作品。究其原因,是因为网络作品都是让人先白看的,看的好了才出了头。而纸质作品就不一定了,排行榜靠前的,有好作品,也有垃圾。 许多大牛都是写了博客,后来出了书。这些书也都不次,可能有人让为不好,是因为技术书不像小说,小说在读故事,技术书是在学知识或温习知识,有
- Android:TextView属性大全
dcj3sjt126com
textview
android:autoLink 设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all) android:autoText 如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输
- tomcat虚拟目录安装及其配置
eksliang
tomcat配置说明tomca部署web应用tomcat虚拟目录安装
转载请出自出处:http://eksliang.iteye.com/blog/2097184 1.-------------------------------------------tomcat 目录结构 config:存放tomcat的配置文件 temp :存放tomcat跑起来后存放临时文件用的 work : 当第一次访问应用中的jsp
- 浅谈:APP有哪些常被黑客利用的安全漏洞
gg163
APP
首先,说到APP的安全漏洞,身为程序猿的大家应该不陌生;如果抛开安卓自身开源的问题的话,其主要产生的原因就是开发过程中疏忽或者代码不严谨引起的。但这些责任也不能怪在程序猿头上,有时会因为BOSS时间催得紧等很多可观原因。由国内移动应用安全检测团队爱内测(ineice.com)的CTO给我们浅谈关于Android 系统的开源设计以及生态环境。 1. 应用反编译漏洞:APK 包非常容易被反编译成可读
- C#根据网址生成静态页面
hvt
Web.netC#asp.nethovertree
HoverTree开源项目中HoverTreeWeb.HVTPanel的Index.aspx文件是后台管理的首页。包含生成留言板首页,以及显示用户名,退出等功能。根据网址生成页面的方法: bool CreateHtmlFile(string url, string path) { //http://keleyi.com/a/bjae/3d10wfax.htm stri
- SVG 教程 (一)
天梯梦
svg
SVG 简介 SVG 是使用 XML 来描述二维图形和绘图程序的语言。 学习之前应具备的基础知识: 继续学习之前,你应该对以下内容有基本的了解: HTML XML 基础 如果希望首先学习这些内容,请在本站的首页选择相应的教程。 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量
- 一个简单的java栈
luyulong
java数据结构栈
public class MyStack { private long[] arr; private int top; public MyStack() { arr = new long[10]; top = -1; } public MyStack(int maxsize) { arr = new long[maxsize]; top
- 基础数据结构和算法八:Binary search
sunwinner
AlgorithmBinary search
Binary search needs an ordered array so that it can use array indexing to dramatically reduce the number of compares required for each search, using the classic and venerable binary search algori
- 12个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个!
刘星宇
c面试
12个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个! 1.gets()函数 问:请找出下面代码里的问题: #include<stdio.h> int main(void) { char buff[10]; memset(buff,0,sizeof(buff));
- ITeye 7月技术图书有奖试读获奖名单公布
ITeye管理员
活动ITeye试读
ITeye携手人民邮电出版社图灵教育共同举办的7月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。 7月试读活动回顾: http://webmaster.iteye.com/blog/2092746 本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀): 《Java性能优化权威指南》
- 事件传播是JS DOM事件中各阶段的概括, 由三个阶段组成:
-