什么是 HTC 文件

阅读更多
在微软IE 5.0版本的浏览器发布以前,网页编程中面对的最大挑战就是不能轻易地创建组件,以达到代码重用和多页面共享的目的。这个问题一直困扰着DHTML(动态 HEML)的网页编程者。他们只能不断地重复书写HTML、CSS和javascript的代码,以满足多个页面上的重复或相似的功能。自IE 5.0浏览器发布后,这种情况得到了改善,它带给我们一个新的指令组合方法,可把实现特定功能的代码封装在一个组件内,从而实现多页面的代码重用,使网页编程进入一个全新的天地。这个新的技术就是我们要谈到的DHTML中的“行为”(Behaviors)。

“行为”作为一个简单易用的组件,它封装了页面上特定的功能或动作。当把一个“行为”附到WEB页面中的一个元件上时,这个元件的原有行为就会有所改变。因此,网页编程者可以开发通用的DHTML指令,并改变原有对象的一些属性,用“行为”来增强一个对象的功能,同时也简化了页面的HTML代码。而且“行为”的创建和使用也非常简单方便,所需的知识也只是原来已经习惯使用的CSS样式表、HTML指令和javascript脚本语言。只要你对此有所了解,有过实际编程的经历,学习并掌握“行为”的使用完全没有问题。我们将以一个改变字体效果的“行为”组件为例来说明如何编写和使用一个“行为”,并体验“行为”给页面编辑带来的优点和方便之处。

  首先新建一个名为font_efftce.htc的文本文件,组成“行为”组件的文件都是以.htc为扩展名,这个文件中的内容就是我们对这个“行为”的描述。它的创建和使用步骤如下:
(1)首先给这个“行为”增加几个事件响应,语句书写格式如下:




“EVENT”对应所需事件名,在这里分别为 nmouseover,onmouseout,onmousedown,onmouseup四个事件名,你当然可以再增加其它的事件名来满足你的特定需求。“ONEVENT”对应着个自的事件句柄,即事件触发时所调用的函数名称。glowit()函数使字体周围产生一个红色的辉光。noglow()函数是消除字体的辉光效果。Font2yellow()函数是把字体颜色改为黄色。Font2blue()函数是把字体颜色改为蓝色。四个事件的定义都是相似的。
(2)接下来,再给这个“行为”增加二个“方法”定义,内容如下。


“NAME”参数对应的是给定的“方法”名称。move_down和move_right分别是向下和向右移动的“方法”对应的函数名称。注意,在方法名的后面不要带“( )”括号,即不要写成“move_down()”这个样子,这在“方法”定义的语法上是不允许的。
(3)接下来的工作就是在我们熟悉的DHTML环境下,用javascript脚本语句编写“事件句柄”和“方法”所对应的函数内容,实现预期的效果。具体内容参考下面的源程序。其中的“element”参数指的是这个“行为”所附着的对象,因为“行为”总是被附着到页面的元件上面,并通过这个元件发挥作用。其它语句都是DHTML的编程内容,就不再多说了。如有不明之处,可参考微软的MSDN开发文档中有关IE浏览器的内容,上面有详细的DHTML编程参考内容、属性和方法使用说明等,并包含了大量的文章和举例程序。经常访问微软的MSDN文档,尤其对于初学者来说是一个良好的学习习惯,你几乎可以得到任何你想找的答案,它的网址为: http://msdn.microsoft.com/ie/。
  完整的“行为”文档“font_effect.htc”的内容如下:
////////////////////////“行为”文档开始////////////////////////////
//给“行为”增加四个鼠标事件




//给“行为”定义二个方法



//////////////////“行为”文档结束///////////////////////////////
(4)如何在一个页面上使用“行为”
  在页面上使用“行为”组件,并不需要学习新的知识。所需的知识的也不过是CSS样式表和HTML的设置而已,请看下面的语句。

  可以看出,这和以前我们已经熟知的样式表设置完全相同。上面的语句定义了一个样式名:“myfilter”,其中对我们来说比较新的内容是:“behavior:url(font_effect.htc);”,“behavior”是新增的“行为”属性名,这就是“行为”在样式表中的设置方式。括号中的内容是“行为”文档的文件名,本例中表明“行为”文档在与页面文件在同一个目录下,如果“行为”文档安置在其它目录下,在此参数的前面要加上相应的路径名,以保证可以正确地定位“行为”文档的位置。此“样式”中的其它内容就是普通的样式属性设置,可根据你的需要增减,但在此例中,由于使用了“glow”滤镜效果,至少要设置一个宽度(width)属性。通过以上的样式指定,我们就有了一个名为:“myfilter”的样式,它附带一个有字体变化效果的“行为”。如果你想要在一个页面元件上使用这个附带“行为”的样式,同样也很简单,只要把这个“样式名”安置在元件的属性设置区域即可,见下面的语句。
行为产生的文字效果

鼠标指向后产生辉光
  以上语句里面没有什么新的内容,class='myfilter'就是我们所熟悉的样式设置。在第一个“span”标记的属性中还定义了一个“id”标记,稍后就会看到,这是用来演示调用“行为”内的“方法”而设置的。这样设置后,“span”元件中的内容就可以显示出“行为”组件内的预定效果:
1. 鼠标指针移动到文字内容上时,在文字周围产生红色的辉光效果,同时文字变成白色。
2. 当鼠标按钮按下时,文字颜色改变为黄色。
3. 鼠标按钮抬起后,文字颜色又改变为蓝色。
4. 当鼠标指针移动到文字区域以外时,去掉了红色辉光效果,文字恢复原样。
  另外,我们在定义“行为”时设置了二个“方法”,“move_down”和“move_right”。为调用这二个“方法”,定义了二个按钮:




  用按钮的onclick事件去调用这二个“方法”,先前定义的“id”标记就作为元件的对象名称,用“myspan.move_down”来调用“方法”,操纵这个对象。可以看到,在按下相应的按钮后,会使第一行的文字产生向下或向右的移动。虽然只是用第一行文字做了示范,实际上,只要做相应的设置,你也可以移动其它对象。页面源文档的完整内内容如下:


行为效果演示< /TITLE > <br><STYLE > <br>.myfilter{behavior:url(font_effect.htc);position:relative;font-weight:bold;width=180;left:0;} <br></STYLE> <br></HEAD> <br><BODY> <br><span id="myspan" class='myfilter'>行为产生的文字效果</span><br> <br><span class='myfilter'>鼠标指向后产生辉光</span><br> <br><span class='myfilter'>同时文字变白</span><br> <br><span class='myfilter'>按下鼠标后文字变黄</span><br> <br><span class='myfilter'>抬起鼠标后文字变蓝</span><br> <br><span class='myfilter'>鼠标离开后文字恢复原状</span><br> <br><button onclick="myspan.move_right();">向右移动第一行文字</button><br> <br><button onclick="myspan.move_down();">向下移动第一行文字</button> <br></BODY> <br></html> <br>  通过以上的简单介绍,可以看出,我们很容易地在一个“行为”中同时组合了多种文字变化效果,通过简单的“样式”设置,任意地将它与页面元件相关连,体现了“行为”组件的优点和强大功能。一个“行为”组件,不仅能在一个页面内重复使用,也可供同一站点上的所有页面使用。试想一下,如果不使用“行为”来完成上述的效果,虽然可以在页面内调用一组预定的函数来完成同样的功能,但页面内每一个使用文字效果的元件都要附加四个鼠标事件,如果在多个页面内使用相同的效果,被调用的函数也需要在每一个页面内重复设置。相比之下,孰优孰劣是很明显的。所以,使用“行为”组件,可以制作出简洁、高效、通用和便于维护的页面。本文的举例只是为了说明“行为”组件的编写和使用过程,使读者对“行为”编程有一个概括的了解,并以此基础制作出自己所需要的“行为”组件,或直接引用满足个人需要的现成“行为”组件,因为“组件共享”的概念也是“行为”开发者的初衷。最后,愿本文能起到“抛砖引玉”的目的,使读者步入精彩的DHTML网页编程天地。 <br> <br>说明: <br>HTC是HTML component的缩写, <br>是IE5.0的主要扩展之一, <br>除了具备一般组件的可重用优点之外, <br>还具有易于开发使用等优点, <br>因为需要引入外部文件,这里就不举例了,宝库里有例子. <br> <br>控件和组件 <br>HTC提供了一个简单机制以在脚本中实现DHTML行为。一个HTC文件和HTML文件没有任何差别,并且以“.htc”为后缀, <br> <br>可以使用HTC实现以下行为: <br>设定属性和方法。通过“PROPERTY”和“METHOD”元素定义 <br>设置自定义事件。通过“EVENT”元素实现,用该元素的“fire()”方法释放事件, <br>通过“createEventObject()”方法设置事件环境。 <br>访问所包含该HTC的的HTML页的DHTML对象模型,使用HTC的“element"对象,返回 <br>一个附加行为的元素,使用该对象,HTC可以访问包含文挡及它的对象模型(属性、方法、事件)。 <br>收取通知,使用”ATTACH“元素实现,浏览器不但通知HTC标准的DHTML事件,而且通知HTC两种特殊事件:oncontentready事件和ondocumentready事件 。 <br> <br>定义标记和命名空间 <br>HTC的基础是自定义标记 <br>要为页面定义自定义标记,必须为该标记提供命名空间 <br>要使用该标记必须在该标记前加上正确的XML命名空间前缀 <br>例如: <br>定义一个新标记RIGHT的例子 <br>代码片断如下: <br><HTML XMLNS:DOCJS> <br><HEAD> <br><STYLE> <br>@media all { <br>DOCJS\:RIGHT {text-align:right; width:100} <br>} <br></STYLE> <br></HEAD> <br><BODY> <br><DOCjs:RIGHT> <br>Read Doc javascript's columns, tips, tools, and tutorials <br></DOCjs:RIGHT> <br></BODY> <br></HTML> <br>可以在单个HTML标记中定义多个命名空间: <br><HTML XMLNS:DOCJS XMLNS:DOCjavascript> <br>组件定义 <br>组件的名字是由HTC文档里定义在第一行的XML命名空间决定的 <br>该页不用调用其他的HTC话,就只有一个命名空间定义 <br>实际上,HTML组件的定义就是自定义标签行为的定义 <br>该行为包括一个属性和一个事件: <br><HTML xmlns:MyTag> <br><HEAD> <br><PUBLIC:COMPONENT tagName="MyTag"> <br><PROPERTY NAME="value"></PROPERTY> <br><ATTACH EVENT="oncontentready" ONEVENT="fnInit()"<>/ATTACH> <br></PUBLIC:COMPONENT> <br><STYLE>//为组件定义样式表 <br>.cssMyTag{ <br>} <br></STYLE> <br><SCRIPT language=javascript> <br>function MyTagBehavior1(){} //为组件定义方法 <br></SCRIPT> <br></HEAD> <br><BODY onclick=MyTagBehavior1> //为组件定义响应事件 <br></BODY> <br></HTML> <br>其中的oncontentready是在组件被调用者完全导入时触发 <br>再看看fnInit() <br>function fnInit() { <br>document.body.innerHTML = element.value;//设定组件显示内容 <br>document.body.className = "clsMyTag"; //设定显示样式表, <br>defaults.viewLink = document; //使本组件对其他文档可见 <br>element.aProperty = element.value; //设置组件的属性值 <br>} <br>组件的调用 <br><HTML xmlns:MyCom> <br><HEAD> <br><?IMPORT NAMESPACE="MyCom" IMPLEMENTATION="MyTag.htc"/> <br></HEAD> <br><BODY> <br><MyCom:MyTag></MyCom:MyTag> <br></BODY> <br></HTML> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1175818628226953216"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(HTC,编程,IE,JavaScript,CSS)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1903070434291675136.htm" title="单例模式实现" target="_blank">单例模式实现</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>一、是什么单例模式(SingletonPattern):创建型模式,提供了一种创建对象的最佳方式,这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建在应用程序运行期间,单例模式只会在全局作用域下创建一次实例对象,让所有需要调用的地方都共享这一单例对象,如下图所示:二、实现在javascript中,实现一个单例模式可以用一个变量来标志当前的类已经创建过对象,如果下次获取当</div> </li> <li><a href="/article/1903067945920163840.htm" title="html 中加载pdf,在HTML中嵌入PDF的推荐方法?" target="_blank">html 中加载pdf,在HTML中嵌入PDF的推荐方法?</a> <span class="text-muted">梧桐应恨夜来霜</span> <a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E4%B8%AD%E5%8A%A0%E8%BD%BDpdf/1.htm">中加载pdf</a> <div>GeorgeMahar..9我们的问题是,出于法律原因,我们不允许在硬盘上临时存储PDF.此外,在浏览器中将PDF显示为"预览"时,不应重新加载整个页面.首先我们尝试了PDF.jS.它适用于Firefox和Chrome浏览器中的Base64.但是,我们的PDF格式慢得令人无法接受.IE/Edge根本不起作用.因此,我们在HTML对象标记中使用Base64字符串进行了尝试.这再次对IE/Edge不起</div> </li> <li><a href="/article/1903067315654684672.htm" title="【css酷炫效果】css酷炫效果100篇合集" target="_blank">【css酷炫效果】css酷炫效果100篇合集</a> <span class="text-muted">冰夏之夜影</span> <a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>【css酷炫效果】纯CSS实现立体纸张折叠动效缘创作背景动画效果合集【css酷炫效果】实现鱼群游动动态效果【css酷炫效果】纯CSS实现无限旋转加载动画【css酷炫效果】纯CSS实现悬浮放大卡片【css酷炫效果】纯CSS创建流体渐变背景动画【css酷炫效果】纯CSS实现3D翻转卡片动画【css酷炫效果】纯CSS实现文字逐字显现打字效果【css酷炫效果】纯CSS实现霓虹文字呼吸灯效果【css酷炫效果</div> </li> <li><a href="/article/1903066026782814208.htm" title="EL1242 Digital Electronics" target="_blank">EL1242 Digital Electronics</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>AcademicYear:2024/25AssessmentIntroduction:Course:BEng(Hons)ElectronicEngineeringModuleCode:EL1242ModuleTitle:DigitalElectronicsTitleoftheBrief:PrototypingofAPrimarySmartHomeSystemTypeofassessment:Cou</div> </li> <li><a href="/article/1903065047958089728.htm" title="C/C++学习路线概述" target="_blank">C/C++学习路线概述</a> <span class="text-muted">DustWind丶</span> <a class="tag" taget="_blank" href="/search/C%2FC%2B%2B/1.htm">C/C++</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a> <div>根据如下视频和文章总结:想做C语言/C++开发?这些才是你该学的东西!C语言/C++直通企业级开发的详细学习路线节选:肝了半个月,我整理出了这篇嵌入式开发学习学习路线+知识点梳理目录1C/C++学习概述1.1C语言的基础知识1.2C++的基础知识2C/C++编程学习四大件2.1数据结构和算法2.2操作系统2.3计算机网络2.3.1计算机网络分层2.3.2典型协议(以TCP/IP四层模型举例)2.4</div> </li> <li><a href="/article/1903065048440434688.htm" title="说说Spring和SpringBoot之间的区别和联系?" target="_blank">说说Spring和SpringBoot之间的区别和联系?</a> <span class="text-muted">一蓑烟雨渡平生</span> <a class="tag" taget="_blank" href="/search/Java%E9%9D%A2%E8%AF%95%E7%9F%A5%E8%AF%86%E7%82%B9/1.htm">Java面试知识点</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>说说Spring和SpringBoot之间的区别和联系?联系:Spring和SpringBoot框架的核心是IOC(控制反转)和AOP(面向切面编程);IoC和AOP都是一种设计思想,接下来先介绍对于这两种设计思想的理解;IoC(InverseofControl)是一种设计思想,就是将原本在程序中手动创建对象的控制权,交给Spring框架来管理,IoC在其他语言中也有应用,并非Spring特有。I</div> </li> <li><a href="/article/1903063651842060288.htm" title="JavaScript HTML DOM 节点列表" target="_blank">JavaScript HTML DOM 节点列表</a> <span class="text-muted">宇哥资料</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>NodeList对象是一个从文档中获取的节点列表(集合)。NodeList对象类似HTMLCollection对象。一些旧版本浏览器中的方法(如:getElementsByClassName())返回的是NodeList对象,而不是HTMLCollection对象。所有浏览器的childNodes属性返回的是NodeList对象。大部分浏览器的querySelectorAll()返回NodeLis</div> </li> <li><a href="/article/1903062644412182528.htm" title="golang-嵌套结构体" target="_blank">golang-嵌套结构体</a> <span class="text-muted">lmryBC49</span> <a class="tag" taget="_blank" href="/search/golang/1.htm">golang</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>结构体嵌套golang中没有类,他通过结构体来实现其他编程语言中类的相关功能。具名结构体基本语法基本语法golang的结构体嵌套特别简单。type结构体类型1struct{字段类型1字段类型2}//这样就实现了结构体的嵌套type结构体类型2struct{字段类型1字段类型2字段结构体类型1}举例packagestruct_knowledgeimport"fmt"typeWorkerstruct{</div> </li> <li><a href="/article/1903062518021025792.htm" title="js知识点-拓展运算符和剩余运算符" target="_blank">js知识点-拓展运算符和剩余运算符</a> <span class="text-muted">lmryBC49</span> <a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a> <div>概述在现代JavaScript开发中,ES6引入的拓展运算符(SpreadOperator)和剩余运算符(RestOperator)让代码更加简洁和灵活。无论是数组、对象的拆分与合并,还是函数参数的处理,这两个运算符都是非常实用的工具。拓展运算符1.什么是拓展运算符?拓展运算符(SpreadOperator)由三个连续的点...表示,用于将一个可迭代对象(例如数组、字符串等)展开成多个元素。拓展运</div> </li> <li><a href="/article/1903058986471583744.htm" title="Profinet转ModbusTCP网关模块连发那科机器人与DCS通讯" target="_blank">Profinet转ModbusTCP网关模块连发那科机器人与DCS通讯</a> <span class="text-muted">BA_TU_AUTO_TECH</span> <a class="tag" taget="_blank" href="/search/Profinet%E8%BD%ACModbus/1.htm">Profinet转Modbus</a><a class="tag" taget="_blank" href="/search/TCP%E7%BD%91%E5%85%B3/1.htm">TCP网关</a><a class="tag" taget="_blank" href="/search/Modbus/1.htm">Modbus</a><a class="tag" taget="_blank" href="/search/TCP%E8%BD%ACProfinet%E7%BD%91%E5%85%B3/1.htm">TCP转Profinet网关</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>一、现场要求:发那科机器人作为服务器端,DCS作为客户端向发那科机器人发送读写请求,发那科机器人应答后DCS接收发那科机器人的数据,实现数据的传递。二、解决方案:在不增加编程任务的前提下只需在DCS与机器人中间添加巴图自动化Profinet转ModbusTCP网关(BT-ETHPN20)就可实现。本文将介绍如何使用巴图自动化Profinet转ModbusTCP网关(BT-ETHPN20)配置通讯三</div> </li> <li><a href="/article/1903055959928926208.htm" title="Java 项目 IntelliJ IDEA 多环境配置详解" target="_blank">Java 项目 IntelliJ IDEA 多环境配置详解</a> <span class="text-muted">我真的不想做程序员</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/intellij-idea/1.htm">intellij-idea</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>目录一、使用MavenProfiles实现多环境配置1.在`pom.xml`中配置Profiles2.创建多环境配置文件3.配置文件内容示例`application.properties``application-dev.properties``application-test.properties``application-prod.properties`4.在代码中获取配置5.激活MavenP</div> </li> <li><a href="/article/1903051037309202432.htm" title="python爬虫系列实例-python爬虫实例,一小时上手爬取淘宝评论(附代码)" target="_blank">python爬虫系列实例-python爬虫实例,一小时上手爬取淘宝评论(附代码)</a> <span class="text-muted">weixin_37988176</span> <div>前言本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。1明确目的通过访问天猫的网站,先搜索对应的商品,然后爬取它的评论数据。可以作为设计前期的市场调研的数据,帮助很大。2爬取评论并储存(首先要进行登录,获取cookie)搜索你想收集的信息的评价,然后点开对应的产品图片。找到对应的评价的位置。找到对应的位置之后就可以进行数据的爬取了</div> </li> <li><a href="/article/1903050152067788800.htm" title="Vue.js 性能优化:虚拟 DOM 与虚拟滚动" target="_blank">Vue.js 性能优化:虚拟 DOM 与虚拟滚动</a> <span class="text-muted">vvilkim</span> <a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>在现代前端开发中,性能优化是一个永恒的话题。Vue.js作为一款流行的前端框架,提供了许多强大的工具和技术来提升应用的性能。其中,虚拟DOM和虚拟滚动是两个非常重要的概念。本文将深入探讨它们的原理、优势以及如何在Vue.js中使用它们来优化性能。什么是虚拟DOM?虚拟DOM(VirtualDOM)是Vue.js用于提升性能的核心技术之一。它是一个轻量级的JavaScript对象树,用于表示真实DO</div> </li> <li><a href="/article/1903049899881066496.htm" title="Android studio之编译提示Could not find :umeng-asms-v1.2.1:." target="_blank">Android studio之编译提示Could not find :umeng-asms-v1.2.1:.</a> <span class="text-muted">码莎拉蒂 .</span> <a class="tag" taget="_blank" href="/search/Andriod/1.htm">Andriod</a><a class="tag" taget="_blank" href="/search/studio/1.htm">studio</a><a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/Could/1.htm">Could</a><a class="tag" taget="_blank" href="/search/not/1.htm">not</a><a class="tag" taget="_blank" href="/search/find/1.htm">find</a><a class="tag" taget="_blank" href="/search/%E5%AF%BC%E5%85%A5%E6%AD%A3%E7%A1%AE%E7%9A%84aar%E6%96%87%E4%BB%B6/1.htm">导入正确的aar文件</a><a class="tag" taget="_blank" href="/search/umeng-asms-v1/1.htm">umeng-asms-v1</a><a class="tag" taget="_blank" href="/search/flatDir/1.htm">flatDir</a> <div>1、问题Couldnotdeterminethedependenciesoftask':app:compileDebugJavaWithJavac'.>Couldnotresolvealltaskdependenciesforconfiguration':app:debugCompileClasspath'.>Couldnotfind:umeng-asms-v1.2.1:.Requiredby:p</div> </li> <li><a href="/article/1903044105169072128.htm" title="用python执行js代码:PyExecJS库详解" target="_blank">用python执行js代码:PyExecJS库详解</a> <span class="text-muted">数据知道</span> <a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%92%8C%E9%80%86%E5%90%91%E6%95%99%E7%A8%8B/1.htm">2025年爬虫和逆向教程</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E9%87%87%E9%9B%86/1.htm">数据采集</a><a class="tag" taget="_blank" href="/search/nodejs/1.htm">nodejs</a> <div>更多内容请见:爬虫和逆向教程-专栏介绍和目录文章目录1.介绍和安装1.1PyExecJS介绍1.2安装JavaScript运行时1.3安装PyExecJS2.PyExecJS的基本使用2.1执行简单的JavaScript代码2.2使用外部JavaScript文件2.3先编译、后调用2.4传递参数和获取返回值3.PyExecJS的高级功能3.1指定JavaScript运行时3.2处理异步JavaSc</div> </li> <li><a href="/article/1903042467251417088.htm" title="AlphaFolding填补蛋白质动态结构预测空白!复旦大学等提出4D扩散模型,成果入选AAAI 2025" target="_blank">AlphaFolding填补蛋白质动态结构预测空白!复旦大学等提出4D扩散模型,成果入选AAAI 2025</a> <span class="text-muted">HyperAI超神经</span> <a class="tag" taget="_blank" href="/search/ScienceAI/1.htm">ScienceAI</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E6%89%A9%E6%95%A3%E6%A8%A1%E5%9E%8B/1.htm">扩散模型</a><a class="tag" taget="_blank" href="/search/%E8%9B%8B%E7%99%BD%E8%B4%A8%E7%BB%93%E6%9E%84/1.htm">蛋白质结构</a><a class="tag" taget="_blank" href="/search/AI4S/1.htm">AI4S</a><a class="tag" taget="_blank" href="/search/4D/1.htm">4D</a> <div>蛋白质的功能很大程度上取决于其3D结构。19世纪中期,科学界普遍认为蛋白质结构是固定的、刚性的,类似「锁与钥匙」模型(lock-and-keymodel),即蛋白质与配体的结合是由固定的三维结构决定的。然而,当DanielKoshland提出酶与底物结合时会发生构象变化的观点后,传统思维开始受到挑战。1980年代,分子动力学模拟(MolecularDynamics,MD)兴起,首次从计算角度揭示了</div> </li> <li><a href="/article/1903041328871174144.htm" title="AI开发日记- Prompt Library篇" target="_blank">AI开发日记- Prompt Library篇</a> <span class="text-muted">BillyXie23</span> <a class="tag" taget="_blank" href="/search/AI%E6%8E%A2%E7%B4%A2/1.htm">AI探索</a><a class="tag" taget="_blank" href="/search/prompt/1.htm">prompt</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/github/1.htm">github</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/AI%E7%BC%96%E7%A8%8B/1.htm">AI编程</a> <div>突发奇想想在git上host一个静态页面的promptlibrary,于是花了一天时间配合cursor硬是撸了出来Github地址:https://github.com/MrXie23/PromptLibrary页面地址PromptLibrary-探索AI提示的艺术目前代码结构有些混乱,有些失败的folder还没清理,不过基础功能都已经可以work了,接下来的开发roadmap是把一些没做的页面都</div> </li> <li><a href="/article/1903038683313926144.htm" title="C#电子相册:面向对象设计与架构实践" target="_blank">C#电子相册:面向对象设计与架构实践</a> <span class="text-muted">金融先生-Frank</span> <div>本文还有配套的精品资源,点击获取简介:C#电子相册是一个使用高级编程语言C#开发的Windows平台应用程序。该项目采用面向对象编程方法,将对象如照片和相册封装、继承和多态地组织起来。它可能采用了MVC、MVVM或MVP架构模式,并使用.NETFramework或.NETCore以及VisualStudio作为开发环境。数据库管理部分涉及SQL数据库,支持相册数据的存储与检索。文件列表中的"eri</div> </li> <li><a href="/article/1903035030670733312.htm" title="$.ajax()方法详解" target="_blank">$.ajax()方法详解</a> <span class="text-muted">小二爱编程·</span> <a class="tag" taget="_blank" href="/search/ajax/1.htm">ajax</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a> <div>jquery中的ajax方法参数总是记不住,这里记录一下。目录1.url2.type3.timeout4.async5.cache6.data7.dataType8.beforeSend9.complete10.success11.error12.contentType13.dataFilter14.dataFilter15.global16.ifModified17.jsonp18.userna</div> </li> <li><a href="/article/1903032506702163968.htm" title="JAVA毕业设计BS架构考研交流学习平台设计与实现计算机源码+lw文档+系统+调试部署+数据库" target="_blank">JAVA毕业设计BS架构考研交流学习平台设计与实现计算机源码+lw文档+系统+调试部署+数据库</a> <span class="text-muted">瑞致网络</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a> <div>JAVA毕业设计BS架构考研交流学习平台设计与实现计算机源码+lw文档+系统+调试部署+数据库JAVA毕业设计BS架构考研交流学习平台设计与实现计算机源码+lw文档+系统+调试部署+数据库本源码技术栈:项目架构:B/S架构开发语言:Java语言开发软件:ideaeclipse前端技术:Layui、HTML、CSS、JS、JQuery等技术后端技术:JAVA运行环境:Win10、JDK1.8数据库:</div> </li> <li><a href="/article/1903030992545837056.htm" title="5-1 使用ECharts将MySQL数据库中的数据可视化" target="_blank">5-1 使用ECharts将MySQL数据库中的数据可视化</a> <span class="text-muted">上课的牛马</span> <a class="tag" taget="_blank" href="/search/%E5%AE%9E%E8%AE%AD/1.htm">实训</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a> <div>方法一:使用PythonFlask框架搭建API对于技术小白来说,使用ECharts将MySQL数据库中的数据可视化需要分步骤完成。以下是详细的实现流程:一、技术架构‌后端服务‌:使用PythonFlask框架搭建API(简单易学,适合新手)数据库连接‌:通过Python的pymysql库连接MySQL前端可视化‌:HTML+JavaScript+ECharts数据流向‌:MySQL数据库→Pyt</div> </li> <li><a href="/article/1903030986967412736.htm" title="HRM:分层多步奖励模型" target="_blank">HRM:分层多步奖励模型</a> <span class="text-muted">大模型最新论文速读</span> <a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/1.htm">语言模型</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86/1.htm">自然语言处理</a> <div>论文标题TowardsHierarchicalMulti-StepRewardModelsforEnhancedReasoninginLargeLanguageModels论文地址https://arxiv.org/pdf/2503.13551代码地址https://github.com/tengwang0318/hierarchial_reward_model作者背景香港大学,北京大学,新加坡国</div> </li> <li><a href="/article/1903030101478535168.htm" title="计算机毕业设计JavaBS景区票务管理系统设计与实现(源码+系统+mysql数据库+lw文档)" target="_blank">计算机毕业设计JavaBS景区票务管理系统设计与实现(源码+系统+mysql数据库+lw文档)</a> <span class="text-muted">毅铭科技</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>计算机毕业设计JavaBS景区票务管理系统设计与实现(源码+系统+mysql数据库+lw文档)计算机毕业设计JavaBS景区票务管理系统设计与实现(源码+系统+mysql数据库+lw文档)本源码技术栈:项目架构:B/S架构开发语言:Java语言开发软件:ideaeclipse前端技术:Layui、HTML、CSS、JS、JQuery等技术后端技术:JAVA运行环境:Win10、JDK1.8数据库:</div> </li> <li><a href="/article/1903028463565074432.htm" title="CSP-J备考冲刺必刷题(C++) | AcWing 11 背包问题求方案数" target="_blank">CSP-J备考冲刺必刷题(C++) | AcWing 11 背包问题求方案数</a> <span class="text-muted">热爱编程的通信人</span> <a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。欢迎大家订阅我的专栏:算法题解:C++与Python实现!附上汇总贴:算法竞赛备考冲刺必刷题(C++)|汇总【题目来源】AcWing:11.背包问题求方案数-AcWi</div> </li> <li><a href="/article/1903023152464719872.htm" title="亿级分布式系统架构演进实战(五)- 横向扩展(缓存策略设计)" target="_blank">亿级分布式系统架构演进实战(五)- 横向扩展(缓存策略设计)</a> <span class="text-muted">power-辰南</span> <a class="tag" taget="_blank" href="/search/java%E6%8A%80%E6%9C%AF%E6%9E%B6%E6%9E%84%E5%B8%88%E6%88%90%E9%95%BF%E4%B8%93%E6%A0%8F/1.htm">java技术架构师成长专栏</a><a class="tag" taget="_blank" href="/search/%E5%A4%9A%E7%BA%A7%E7%BC%93%E5%AD%98%E7%AD%96%E7%95%A5/1.htm">多级缓存策略</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/cloud/1.htm">cloud</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/1.htm">分布式系统</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98%E4%B8%80%E8%87%B4%E6%80%A7/1.htm">缓存一致性</a><a class="tag" taget="_blank" href="/search/%E9%AB%98%E5%B9%B6%E5%8F%91/1.htm">高并发</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88/1.htm">缓存问题解决方案</a> <div>亿级分布式系统架构演进实战(一)-总体概要亿级分布式系统架构演进实战(二)-横向扩展(服务无状态化)亿级分布式系统架构演进实战(三)-横向扩展(数据库读写分离)亿级分布式系统架构演进实战(四)-横向扩展(负载均衡与弹性伸缩)核心目标降低数据库读压力,提升响应速度一、多级缓存架构客户端CDN/浏览器缓存本地应用缓存分布式缓存数据库缓冲池1.1客户端缓存缓存数据类型:•静态资源(JS/CSS/图片)•</div> </li> <li><a href="/article/1903021136136957952.htm" title="【轻松学C:编程小白的大冒险】— 09 运算符与表达式的实际应用" target="_blank">【轻松学C:编程小白的大冒险】— 09 运算符与表达式的实际应用</a> <span class="text-muted">秋知叶i</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/C/1.htm">C</a><a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80/1.htm">语言</a><a class="tag" taget="_blank" href="/search/c%E8%AF%AD%E8%A8%80/1.htm">c语言</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。【轻松学C:编程小白的大冒险】—09运算符与表达式的实际应用一、运算符家族大阅兵二、算术运算符:数学界的五虎上将1.加法运算符`+`2.减法运算符`-`3.乘法运算符`*`4.除法运算符`/`5.取模运算符`%`二、赋值运</div> </li> <li><a href="/article/1903015587223760896.htm" title="HTML5响应式使用css媒体查询" target="_blank">HTML5响应式使用css媒体查询</a> <span class="text-muted">前段技术人</span> <a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E5%AA%92%E4%BD%93/1.htm">媒体</a> <div>HTML负责搭建页面结构,CSS负责样式设计,并且通过媒体查询实现了较好的响应式效果,能够适应不同屏幕尺寸下面就是写了一个详细的实例。CSS部分*{margin:0;padding:0;box-sizing:border-box;}*是通配选择器,会选中页面上的所有元素。margin:0;将所有元素的外边距设置为0。padding:0;将所有元素的内边距设置为0。box-sizing:border</div> </li> <li><a href="/article/1903015207043657728.htm" title="前端面试:[React] Recoil 里面 selector 支持哪些参数?" target="_blank">前端面试:[React] Recoil 里面 selector 支持哪些参数?</a> <span class="text-muted">returnShitBoy</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a> <div>在Recoil中,selector用于派生状态并可以通过传递不同的参数来实现更强大的功能。创建selector时,可以传入以下参数:1.key类型:string描述:是selector的唯一标识符。每个selector和atom都必须有一个唯一的key,否则会抛出错误。这个key用于在Recoil状态树中进行识别。示例:javascriptconstmySelector=selector({key</div> </li> <li><a href="/article/1903014575679270912.htm" title="OpenCV图像拼接(2)基于羽化(feathering)技术的图像融合算法拼接类cv::detail::FeatherBlender" target="_blank">OpenCV图像拼接(2)基于羽化(feathering)技术的图像融合算法拼接类cv::detail::FeatherBlender</a> <span class="text-muted">村北头的码农</span> <a class="tag" taget="_blank" href="/search/OpenCV/1.htm">OpenCV</a><a class="tag" taget="_blank" href="/search/opencv/1.htm">opencv</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:C++11算法描述cv::detail::FeatherBlender是OpenCV中用于图像拼接的一个类,它属于stitching模块的一部分。这个类实现了基于羽化(feathering)技术的图像融合算法,用于平滑地混合重叠区域中的图像,从而生成无缝的全景图。主要特点羽化技术:</div> </li> <li><a href="/article/1903014574538420224.htm" title="OpenCV图像拼接(1)自动校准之校准旋转相机的函数calibrateRotatingCamera()" target="_blank">OpenCV图像拼接(1)自动校准之校准旋转相机的函数calibrateRotatingCamera()</a> <span class="text-muted">村北头的码农</span> <a class="tag" taget="_blank" href="/search/OpenCV/1.htm">OpenCV</a><a class="tag" taget="_blank" href="/search/opencv/1.htm">opencv</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:C++11算法描述cv::detail::calibrateRotatingCamera是OpenCV中用于校准旋转相机的函数。它特别适用于那种相机相对于一个固定的场景进行纯旋转运动的情况,比如在全景拼接过程中。此函数可以从一系列单应性矩阵(HomographyMatrices)中</div> </li> <li><a href="/article/76.htm" title="遍历dom 并且存储(将每一层的DOM元素存在数组中)" target="_blank">遍历dom 并且存储(将每一层的DOM元素存在数组中)</a> <span class="text-muted">换个号韩国红果果</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>数组从0开始!! var a=[],i=0; for(var j=0;j<30;j++){ a[j]=[];//数组里套数组,且第i层存储在第a[i]中 } function walkDOM(n){ do{ if(n.nodeType!==3)//筛选去除#text类型 a[i].push(n); //con</div> </li> <li><a href="/article/203.htm" title="Android+Jquery Mobile学习系列(9)-总结和代码分享" target="_blank">Android+Jquery Mobile学习系列(9)-总结和代码分享</a> <span class="text-muted">白糖_</span> <a class="tag" taget="_blank" href="/search/JQuery+Mobile/1.htm">JQuery Mobile</a> <div>目录导航   经过一个多月的边学习边练手,学会了Android基于Web开发的毛皮,其实开发过程中用Android原生API不是很多,更多的是HTML/Javascript/Css。   个人觉得基于WebView的Jquery Mobile开发有以下优点: 1、对于刚从Java Web转型过来的同学非常适合,只要懂得HTML开发就可以上手做事。 2、jquerym</div> </li> <li><a href="/article/330.htm" title="impala参考资料" target="_blank">impala参考资料</a> <span class="text-muted">dayutianfei</span> <a class="tag" taget="_blank" href="/search/impala/1.htm">impala</a> <div>记录一些有用的Impala资料   1. 入门资料 >>官网翻译:     http://my.oschina.net/weiqingbin/blog?catalog=423691   2. 实用进阶 >>代码&架构分析:     Impala/Hive现状分析与前景展望:http</div> </li> <li><a href="/article/457.htm" title="JAVA 静态变量与非静态变量初始化顺序之新解" target="_blank">JAVA 静态变量与非静态变量初始化顺序之新解</a> <span class="text-muted">周凡杨</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E9%9D%99%E6%80%81/1.htm">静态</a><a class="tag" taget="_blank" href="/search/%E9%9D%9E%E9%9D%99%E6%80%81/1.htm">非静态</a><a class="tag" taget="_blank" href="/search/%E9%A1%BA%E5%BA%8F/1.htm">顺序</a> <div>今天和同事争论一问题,关于静态变量与非静态变量的初始化顺序,谁先谁后,最终想整理出来!测试代码: import java.util.Map; public class T { public static T t = new T(); private Map map = new HashMap(); public T(){ System.out.println(&quo</div> </li> <li><a href="/article/584.htm" title="跳出iframe返回外层页面" target="_blank">跳出iframe返回外层页面</a> <span class="text-muted">g21121</span> <a class="tag" taget="_blank" href="/search/iframe/1.htm">iframe</a> <div>在web开发过程中难免要用到iframe,但当连接超时或跳转到公共页面时就会出现超时页面显示在iframe中,这时我们就需要跳出这个iframe到达一个公共页面去。 首先跳转到一个中间页,这个页面用于判断是否在iframe中,在页面加载的过程中调用如下代码: <script type="text/javascript"> //<!-- function</div> </li> <li><a href="/article/711.htm" title="JAVA多线程监听JMS、MQ队列" target="_blank">JAVA多线程监听JMS、MQ队列</a> <span class="text-muted">510888780</span> <a class="tag" taget="_blank" href="/search/java%E5%A4%9A%E7%BA%BF%E7%A8%8B/1.htm">java多线程</a> <div>背景:消息队列中有非常多的消息需要处理,并且监听器onMessage()方法中的业务逻辑也相对比较复杂,为了加快队列消息的读取、处理速度。可以通过加快读取速度和加快处理速度来考虑。因此从这两个方面都使用多线程来处理。对于消息处理的业务处理逻辑用线程池来做。对于加快消息监听读取速度可以使用1.使用多个监听器监听一个队列;2.使用一个监听器开启多线程监听。 对于上面提到的方法2使用一个监听器开启多线</div> </li> <li><a href="/article/838.htm" title="第一个SpringMvc例子" target="_blank">第一个SpringMvc例子</a> <span class="text-muted">布衣凌宇</span> <a class="tag" taget="_blank" href="/search/spring+mvc/1.htm">spring mvc</a> <div>第一步:导入需要的包; 第二步:配置web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi=</div> </li> <li><a href="/article/965.htm" title="我的spring学习笔记15-容器扩展点之PropertyOverrideConfigurer" target="_blank">我的spring学习笔记15-容器扩展点之PropertyOverrideConfigurer</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/Spring3/1.htm">Spring3</a> <div>PropertyOverrideConfigurer类似于PropertyPlaceholderConfigurer,但是与后者相比,前者对于bean属性可以有缺省值或者根本没有值。也就是说如果properties文件中没有某个bean属性的内容,那么将使用上下文(配置的xml文件)中相应定义的值。如果properties文件中有bean属性的内容,那么就用properties文件中的值来代替上下</div> </li> <li><a href="/article/1092.htm" title="通过XSD验证XML" target="_blank">通过XSD验证XML</a> <span class="text-muted">antlove</span> <a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/schema/1.htm">schema</a><a class="tag" taget="_blank" href="/search/xsd/1.htm">xsd</a><a class="tag" taget="_blank" href="/search/validation/1.htm">validation</a><a class="tag" taget="_blank" href="/search/SchemaFactory/1.htm">SchemaFactory</a> <div>1. XmlValidation.java package xml.validation; import java.io.InputStream; import javax.xml.XMLConstants; import javax.xml.transform.stream.StreamSource; import javax.xml.validation.Schem</div> </li> <li><a href="/article/1219.htm" title="文本流与字符集" target="_blank">文本流与字符集</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/PrintWrite%28%29%E7%9A%84%E4%BD%BF%E7%94%A8/1.htm">PrintWrite()的使用</a><a class="tag" taget="_blank" href="/search/%E5%AD%97%E7%AC%A6%E9%9B%86%E5%90%8D%E5%AD%97+%E5%88%AB%E5%90%8D%E8%8E%B7%E5%8F%96/1.htm">字符集名字 别名获取</a> <div>文本数据的输入输出;           输入;数据流,缓冲流         输出;介绍向文本打印格式化的输出PrintWrite();   package 文本流; import java.io.FileNotFound</div> </li> <li><a href="/article/1346.htm" title="ibatis模糊查询sqlmap-mapping-**.xml配置" target="_blank">ibatis模糊查询sqlmap-mapping-**.xml配置</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/ibatis/1.htm">ibatis</a> <div>        正常我们写ibatis的sqlmap-mapping-*.xml文件时,传入的参数都用##标识,如下所示: <resultMap id="personInfo" class="com.bijian.study.dto.PersonDTO"> <res</div> </li> <li><a href="/article/1473.htm" title="java jvm常用命令工具——jdb命令(The Java Debugger)" target="_blank">java jvm常用命令工具——jdb命令(The Java Debugger)</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/jdb/1.htm">jdb</a> <div>        用来对core文件和正在运行的Java进程进行实时地调试,里面包含了丰富的命令帮助您进行调试,它的功能和Sun studio里面所带的dbx非常相似,但 jdb是专门用来针对Java应用程序的。         现在应该说日常的开发中很少用到JDB了,因为现在的IDE已经帮我们封装好了,如使用ECLI</div> </li> <li><a href="/article/1600.htm" title="【Spring框架二】Spring常用注解之Component、Repository、Service和Controller注解" target="_blank">【Spring框架二】Spring常用注解之Component、Repository、Service和Controller注解</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/controller/1.htm">controller</a> <div>在Spring常用注解第一步部分【Spring框架一】Spring常用注解之Autowired和Resource注解(http://bit1129.iteye.com/blog/2114084)中介绍了Autowired和Resource两个注解的功能,它们用于将依赖根据名称或者类型进行自动的注入,这简化了在XML中,依赖注入部分的XML的编写,但是UserDao和UserService两个bea</div> </li> <li><a href="/article/1727.htm" title="cxf wsdl2java生成代码super出错,构造函数不匹配" target="_blank">cxf wsdl2java生成代码super出错,构造函数不匹配</a> <span class="text-muted">bitray</span> <a class="tag" taget="_blank" href="/search/super/1.htm">super</a> <div>    由于过去对于soap协议的cxf接触的不是很多,所以遇到了也是迷糊了一会.后来经过查找资料才得以解决. 初始原因一般是由于jaxws2.2规范和jdk6及以上不兼容导致的.所以要强制降为jaxws2.1进行编译生成.我们需要少量的修改: 我们原来的代码 wsdl2java com.test.xxx -client http://..... 修改后的代</div> </li> <li><a href="/article/1854.htm" title="动态页面正文部分中文乱码排障一例" target="_blank">动态页面正文部分中文乱码排障一例</a> <span class="text-muted">ronin47</span> <div>公司网站一部分动态页面,早先使用apache+resin的架构运行,考虑到高并发访问下的响应性能问题,在前不久逐步开始用nginx替换掉了apache。 不过随后发现了一个问题,随意进入某一有分页的网页,第一页是正常的(因为静态化过了);点“下一页”,出来的页面两边正常,中间部分的标题、关键字等也正常,唯独每个标题下的正文无法正常显示。 因为有做过系统调整,所以第一反应就是新上</div> </li> <li><a href="/article/1981.htm" title="java-54- 调整数组顺序使奇数位于偶数前面" target="_blank">java-54- 调整数组顺序使奇数位于偶数前面</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div> import java.util.Arrays; import java.util.Random; import ljn.help.Helper; public class OddBeforeEven { /** * Q 54 调整数组顺序使奇数位于偶数前面 * 输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半</div> </li> <li><a href="/article/2108.htm" title="从100PV到1亿级PV网站架构演变" target="_blank">从100PV到1亿级PV网站架构演变</a> <span class="text-muted">cfyme</span> <a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%AB%99%E6%9E%B6%E6%9E%84/1.htm">网站架构</a> <div>一个网站就像一个人,存在一个从小到大的过程。养一个网站和养一个人一样,不同时期需要不同的方法,不同的方法下有共同的原则。本文结合我自已14年网站人的经历记录一些架构演变中的体会。 1:积累是必不可少的 架构师不是一天练成的。 1999年,我作了一个个人主页,在学校内的虚拟空间,参加了一次主页大赛,几个DREAMWEAVER的页面,几个TABLE作布局,一个DB连接,几行PHP的代码嵌入在HTM</div> </li> <li><a href="/article/2235.htm" title="[宇宙时代]宇宙时代的GIS是什么?" target="_blank">[宇宙时代]宇宙时代的GIS是什么?</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/Gis/1.htm">Gis</a> <div>        我们都知道一个事实,在行星内部的时候,因为地理信息的坐标都是相对固定的,所以我们获取一组GIS数据之后,就可以存储到硬盘中,长久使用。。。但是,请注意,这种经验在宇宙时代是不能够被继续使用的          宇宙是一个高维时空</div> </li> <li><a href="/article/2362.htm" title="详解create database命令" target="_blank">详解create database命令</a> <span class="text-muted">czmmiao</span> <a class="tag" taget="_blank" href="/search/database/1.htm">database</a> <div>完整命令 CREATE DATABASE mynewdb   USER SYS IDENTIFIED BY sys_password   USER SYSTEM IDENTIFIED BY system_password   LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/m</div> </li> <li><a href="/article/2489.htm" title="几句不中听却不得不认可的话" target="_blank">几句不中听却不得不认可的话</a> <span class="text-muted">datageek</span> <div>1、人丑就该多读书。 2、你不快乐是因为:你可以像猪一样懒,却无法像只猪一样懒得心安理得。 3、如果你太在意别人的看法,那么你的生活将变成一件裤衩,别人放什么屁,你都得接着。 4、你的问题主要在于:读书不多而买书太多,读书太少又特爱思考,还他妈话痨。 5、与禽兽搏斗的三种结局:(1)、赢了,比禽兽还禽兽。(2)、输了,禽兽不如。(3)、平了,跟禽兽没两样。结论:选择正确的对手很重要。 6</div> </li> <li><a href="/article/2616.htm" title="1 14:00 PHP中的“syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM”错误" target="_blank">1 14:00 PHP中的“syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM”错误</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a> <div>原文地址:http://www.kafka0102.com/2010/08/281.html   因为需要,今天晚些在本机使用PHP做些测试,PHP脚本依赖了一堆我也不清楚做什么用的库。结果一跑起来,就报出类似下面的错误:“Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in /home/kafka/test/</div> </li> <li><a href="/article/2743.htm" title="xcode6 Auto layout and size classes" target="_blank">xcode6 Auto layout and size classes</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/ios/1.htm">ios</a> <div>官方GUI   https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/Introduction/Introduction.html   iOS中使用自动布局(一)   http://www.cocoachina.com/ind</div> </li> <li><a href="/article/2870.htm" title="通过PreparedStatement批量执行sql语句【sql语句相同,值不同】" target="_blank">通过PreparedStatement批量执行sql语句【sql语句相同,值不同】</a> <span class="text-muted">梦见x光</span> <a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E4%BA%8B%E5%8A%A1/1.htm">事务</a><a class="tag" taget="_blank" href="/search/%E6%89%B9%E9%87%8F%E6%89%A7%E8%A1%8C/1.htm">批量执行</a> <div>比如说:我有一个List需要添加到数据库中,那么我该如何通过PreparedStatement来操作呢? public void addCustomerByCommit(Connection conn , List<Customer> customerList) {    String sql = "inseret into customer(id </div> </li> <li><a href="/article/2997.htm" title="程序员必知必会----linux常用命令之十【系统相关】" target="_blank">程序员必知必会----linux常用命令之十【系统相关】</a> <span class="text-muted">hanqunfeng</span> <a class="tag" taget="_blank" href="/search/Linux%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/1.htm">Linux常用命令</a> <div>一.linux快捷键 Ctrl+C : 终止当前命令 Ctrl+S : 暂停屏幕输出 Ctrl+Q : 恢复屏幕输出 Ctrl+U : 删除当前行光标前的所有字符 Ctrl+Z : 挂起当前正在执行的进程 Ctrl+L : 清除终端屏幕,相当于clear   二.终端命令 clear : 清除终端屏幕 reset : 重置视窗,当屏幕编码混乱时使用 time com</div> </li> <li><a href="/article/3124.htm" title="NGINX" target="_blank">NGINX</a> <span class="text-muted">IXHONG</span> <a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a> <div>pcre 编译安装 nginx conf/vhost/test.conf   upstream admin { server 127.0.0.1:8080; }   server {                 listen       80; &</div> </li> <li><a href="/article/3251.htm" title="设计模式--工厂模式" target="_blank">设计模式--工厂模式</a> <span class="text-muted">kerryg</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>工厂方式模式分为三种:   1、普通工厂模式:建立一个工厂类,对实现了同一个接口的一些类进行实例的创建。   2、多个工厂方法的模式:就是对普通工厂方法模式的改进,在普通工厂方法模式中,如果传递的字符串出错,则不能正确创建对象,而多个工厂方法模式就是提供多个工厂方法,分别创建对象。   3、静态工厂方法模式:就是将上面的多个工厂方法模式里的方法置为静态,</div> </li> <li><a href="/article/3378.htm" title="Spring InitializingBean/init-method和DisposableBean/destroy-method" target="_blank">Spring InitializingBean/init-method和DisposableBean/destroy-method</a> <span class="text-muted">mx_xiehd</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/bean/1.htm">bean</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a> <div>1.initializingBean/init-method 实现org.springframework.beans.factory.InitializingBean接口允许一个bean在它的所有必须属性被BeanFactory设置后,来执行初始化的工作,InitialzingBean仅仅指定了一个方法。 通常InitializingBean接口的使用是能够被避免的,(不鼓励使用,因为没有必要</div> </li> <li><a href="/article/3505.htm" title="解决Centos下vim粘贴内容格式混乱问题" target="_blank">解决Centos下vim粘贴内容格式混乱问题</a> <span class="text-muted">qindongliang1922</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/vim/1.htm">vim</a> <div> 有时候,我们在向vim打开的一个xml,或者任意文件中,拷贝粘贴的代码时,格式莫名其毛的就混乱了,然后自己一个个再重新,把格式排列好,非常耗时,而且很不爽,那么有没有办法避免呢? 答案是肯定的,设置下缩进格式就可以了,非常简单: 在用户的根目录下 直接vi  ~/.vimrc文件 然后将set pastetoggle=<F9> 写入这个文件中,保存退出,重新登录,</div> </li> <li><a href="/article/3632.htm" title="netty大并发请求问题" target="_blank">netty大并发请求问题</a> <span class="text-muted">tianzhihehe</span> <a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a> <div>多线程并发使用同一个channel java.nio.BufferOverflowException: null at java.nio.HeapByteBuffer.put(HeapByteBuffer.java:183) ~[na:1.7.0_60-ea] at java.nio.ByteBuffer.put(ByteBuffer.java:832) ~[na:1.7.0_60-ea] </div> </li> <li><a href="/article/3759.htm" title="Hadoop NameNode单点问题解决方案之一 AvatarNode" target="_blank">Hadoop NameNode单点问题解决方案之一 AvatarNode</a> <span class="text-muted">wyz2009107220</span> <a class="tag" taget="_blank" href="/search/NameNode/1.htm">NameNode</a> <div>我们遇到的情况 Hadoop NameNode存在单点问题。这个问题会影响分布式平台24*7运行。先说说我们的情况吧。 我们的团队负责管理一个1200节点的集群(总大小12PB),目前是运行版本为Hadoop 0.20,transaction logs写入一个共享的NFS filer(注:NetApp NFS Filer)。 经常遇到需要中断服务的问题是给hadoop打补丁。 DataNod</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>