H5新特性

H5新元素

画图

<canvas  id="myCanvas" width="200" height="200" style="border:1px solid">

canvas>

通过脚本(通常是 JavaScript)来绘制图形(比如图表和其他图像)

新多媒体元素

<audio  controls>音频

    <source src="horse.ogg" type="audio/ogg">  定义多媒体资源

    <track src="subtitles_en.vtt" kind="subtitles" srclang="en"

label="English">为诸如

<video>视频

定义插入的内容

新表单元素

定义选项列表。请与 input 元素配合使用该元素,来定义 input 可能的值。

定义不同类型的输出,比如脚本的输出。

新语义结构元素

移除的元素

以下的 HTML 4.01 元素在HTML5中已经被删除:

</p> <p><strike></p> <p><tt></p> </blockquote> <h4>Web存储</h4> <p><b>localStorage</b>:用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去除。</p> <p><b>sessionStorage</b>:用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。</p> <p>if(typeof(Storage)!=="undefined") 用之前先判断浏览器是否支持</p> <p>两者<b>常用的API</b>:</p> <blockquote> <p>保存数据:localStorage.setItem(key,value);</p> <p>读取数据:localStorage.getItem(key);</p> <p>删除单个数据:localStorage.removeItem(key);</p> <p>删除所有数据:localStorage.clear();</p> <p>得到某个索引的key:localStorage.key(index);</p> </blockquote> <p>JSON.stringify(site); // 将对象转换为JSON字符串</p> <p>JSON.parse(str); // 将JSON字符串转换为对象</p> <h4>Web SQL</h4> <p>Web SQL 数据库 API 并不是 HTML5 规范的一部分,但是它是一个独立的规范,引入了一组使用 SQL 操作客户端数据库的 APIs。</p> <p>三个核心方法:</p> <p>①<b>openDatabase</b>(数据库名称,版本号,描述文本,数据库大小,创建回调):这个方法使用现有的数据库或者新建的数据库创建一个数据库对象。</p> <p>②<b>transaction</b>:这个方法让我们能够控制一个事务,以及基于这种情况执行提交或者回滚。</p> <p>③<b>executeSql</b>:这个方法用于执行实际的 SQL 查询。</p> <blockquote> <p>创建</p> <p>var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);var msg;</p> </blockquote> <blockquote> <p>插入</p> <p>db.transaction(function (tx) {    tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)');</p> <p>    tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "菜鸟教程")');</p> <p>    tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "www.runoob.com")');</p> <p>    msg = '<p>数据表已创建,且插入了两条数据。</p>';</p> <p>    document.querySelector('#status').innerHTML =  msg;});</p> </blockquote> <blockquote> <p>删除</p> <p>db.transaction(function (tx) {      tx.executeSql('DELETE FROM LOGS  WHERE id=1');</p> <p>      msg = '<p>删除 id 为 1 的记录。</p>';</p> <p>      document.querySelector('#status').innerHTML =  msg;</p> <p>});</p> </blockquote> <blockquote> <p>更新</p> <p>db.transaction(function (tx) {    tx.executeSql('UPDATE LOGS SET log=\'www.w3cschool.cc\' WHERE id=2');</p> <p>      msg = '<p>更新 id 为 2 的记录。</p>';</p> <p>      document.querySelector('#status').innerHTML =  msg;</p> <p> });</p> </blockquote> <blockquote> <p>查询</p> <p>db.transaction(function (tx) {    tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) {      var len = results.rows.length, i;</p> <p>      msg = "<p>查询记录条数: " + len + "</p>";</p> <p>      document.querySelector('#status').innerHTML +=  msg;</p> <p>      for (i = 0; i < len; i++){          msg = "<p><b>" + results.rows.item(i).log + "</b></p>";</p> <p>          document.querySelector('#status').innerHTML +=  msg;</p> <p>      }    }, null);</p> <p> });</p> </blockquote> <h4> 应用程序缓存<br> </h4> <p>应用程序缓存为应用带来三个优势:</p> <p>    离线浏览 - 用户可在应用离线时使用它们</p> <p>    速度 - 已缓存资源加载得更快</p> <p>    减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源。</p> <p>如需启用应用程序缓存,请在文档的<html> 标签中包含 <b>manifest </b>属性:</p> <p><html manifest="demo.appcache"></p> <p>Manifest文件的组成:(demo.appcache文件的组成)</p> <p>①<b>CACHE MANIFEST</b>(第一行,是必须的)</p> <blockquote> <p>CACHE MANIFEST</p> <p>/theme.css</p> <p>/logo.gif</p> <p>/main.js</p> </blockquote> <p>manifest 文件列出了三个资源:一个 CSS 文件,一个 GIF 图像,以及一个 JavaScript 文件。当 manifest 文件加载后,浏览器会从网站的根目录下载这三个文件。然后,无论用户何时与因特网断开连接,这些资源依然是可用的。</p> <p>② <b>NETWORK </b></p> <blockquote> <p>NETWORK:</p> <p>login.php</p> </blockquote> <p>规定文件 "login.php" 永远不会被缓存,且离线时是不可用的</p> <p>③ <b>FALLBACK</b></p> <blockquote> <p>FALLBACK:</p> <p>#开头的是注释</p> <p>/html/ /offline.html       注:第一个 URI 是资源,第二个是替补。</p> </blockquote> <p>规定如果无法建立因特网连接,则用 "offline.html" 替代 /html/ 目录中的所有文件</p> <h4>Web Workers</h4> <p>web worker 是运行在后台的 JavaScript,不会影响页面的性能。</p> <h4>SSE服务器发送事件</h4> <p>允许网页获得来自服务器的更新。</p> <h4>WebSocket</h4> <p>WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。</p> <p>《推送》</p> <p>浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。</p> <p>当你获取 Web Socket 连接后,你可以通过 <b>send()</b> 方法来向服务器发送数据,并通过 <b>onmessage</b> 事件来接收服务器返回的数据。</p> </article> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1701277538770300928"></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">你可能感兴趣的:(H5新特性)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1892506041246085120.htm" title="vue3的Element plus (一)" target="_blank">vue3的Element plus (一)</a> <span class="text-muted">GIS瞧葩菜</span> <a class="tag" taget="_blank" href="/search/Element/1.htm">Element</a><a class="tag" taget="_blank" href="/search/plus/1.htm">plus</a><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a><a class="tag" taget="_blank" href="/search/elementui/1.htm">elementui</a><a class="tag" taget="_blank" href="/search/Element/1.htm">Element</a><a class="tag" taget="_blank" href="/search/plus/1.htm">plus</a><a class="tag" taget="_blank" href="/search/vue3/1.htm">vue3</a> <div>介绍ElementPlus是一个基于Vue3的UI组件库,它是对ElementUI组件库的升级和扩展。ElementPlus提供了一套美观、易用且高效的组件,可以用于构建现代化的Web应用程序。ElementPlus的主要特点包括:支持Vue3:ElementPlus是专为Vue3开发的,充分利用Vue3的新特性和优势。TypeScript支持:ElementPlus提供了完整的TypeScrip</div> </li> <li><a href="/article/1892474123800604672.htm" title="基于python使用scanpy分析单细胞转录组数据" target="_blank">基于python使用scanpy分析单细胞转录组数据</a> <span class="text-muted">探序基因</span> <a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%BB%86%E8%83%9E%E5%88%86%E6%9E%90/1.htm">单细胞分析</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>探序基因肿瘤研究院整理相关后缀的格式介绍:.h5ad:是一种用于存储单细胞数据的文件格式,可以通过anndata库在Python中处理.loom:高效的数据存储格式(.loom文件),使得用户可以轻松地存储、查询和分析大规模的单细胞数据集。Loompy的设计目标是提供一个快速、灵活且易于使用的工具,以支持生物信息学家和研究人员在单细胞水平上进行数据分析。python的单细胞转录组数据结构说明:da</div> </li> <li><a href="/article/1892239002090663936.htm" title="python异步编程实例_python 异步编程" target="_blank">python异步编程实例_python 异步编程</a> <span class="text-muted">weixin_39585070</span> <a class="tag" taget="_blank" href="/search/python%E5%BC%82%E6%AD%A5%E7%BC%96%E7%A8%8B%E5%AE%9E%E4%BE%8B/1.htm">python异步编程实例</a> <div>Python3.5协程究竟是个啥Yushneng·Mar10th,2016作者是Python语言的核心开发人员,这篇文章也是我分享的,但是在翻译之前并没有看得太仔细。作者在这篇文章里先是是从Python异步编程的发展历史一直介绍到Python3.5中async/await新特性的提出,又从底层的实现的差异一直延伸到完整的代码实例,来说明旧的生成器作为协程的“权宜之计”与新语法的差别。真正做到了深入</div> </li> <li><a href="/article/1892175324528046080.htm" title="兼职招聘小程序零工招聘H5网站小程序求职兼职招聘小程序同城兼职招聘小程序" target="_blank">兼职招聘小程序零工招聘H5网站小程序求职兼职招聘小程序同城兼职招聘小程序</a> <span class="text-muted">百创科技</span> <a class="tag" taget="_blank" href="/search/%E6%BA%90%E7%A0%81%E4%B8%8B%E8%BD%BD/1.htm">源码下载</a><a class="tag" taget="_blank" href="/search/%E6%BA%90%E7%A0%81%E4%B8%8E%E6%95%99%E7%A8%8B/1.htm">源码与教程</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</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/%E8%BF%90%E7%BB%B4/1.htm">运维</a> <div>❖功能亮点七种收费方式:1、发布零工收费;2、置顶零工收费;3、刷新零工收费;5、查看求职电话收费;6、查看求职电话套餐收费;7、零工刷新套餐收费;主要功能1、零工发布可以设置免费发布或者付费发布零工信息;2、工人入驻工人可以入驻登记信息,方便企业查看邀请;3、零工报名工人可以在零工市场选择零工,主动报名参加;4、邀请工人企业可以在用工大厅,选择工人,发起主动邀请;5、查看求职电话支持设置免费或者</div> </li> <li><a href="/article/1892165365706846208.htm" title="AGP 8.0 适配 - 问题列表" target="_blank">AGP 8.0 适配 - 问题列表</a> <span class="text-muted">zhuzhumouse</span> <a class="tag" taget="_blank" href="/search/gradle/1.htm">gradle</a><a class="tag" taget="_blank" href="/search/android-studio/1.htm">android-studio</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>不管是基于编译速度,包体积,新特性等那个方面的考虑,大家都应该开始AGP8.0的适配了,下面使我适配过程中遇到的各种问题,这里列出来,给大家的适配做一个参考。问题一:编译失败@TaskAction解决方案:在根目录的setting.gradle或者build.gradle里面添加如下代码:classpath'com.android.tools.build:gradle:8.0.0'原因说明:AGP</div> </li> <li><a href="/article/1892135487041236992.htm" title="HTML5 新特性有哪些?" target="_blank">HTML5 新特性有哪些?</a> <span class="text-muted">IT木昜</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E7%99%BD%E8%AF%9D%E5%89%8D%E7%AB%AF%E9%9D%A2%E8%AF%95%E9%A2%98/1.htm">大白话前端面试题</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>HTML5新特性,你知道几个?语义化标签:HTML5引入了一系列语义化标签,比如代表网页的头部,就像是一本书的封面和目录部分,包含网站标志、导航栏等重要信息;用于导航链接,是网页的“交通指示牌”,方便用户快速找到不同页面;表示独立的文章内容,每一篇新闻报道、博客文章都可以放在这里;用来划分页面的不同区域,像一个商场里不同的楼层分区;代表网页底部,一般放版权信息、联系方式等。这些标签让网页结构更清晰</div> </li> <li><a href="/article/1892088171680821248.htm" title="读书笔记 - 修改代码的艺术" target="_blank">读书笔记 - 修改代码的艺术</a> <span class="text-muted">天罚神</span> <a class="tag" taget="_blank" href="/search/%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/1.htm">读书笔记</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>读书笔记-修改代码的艺术第1章修改软件第2章带着反馈工作系统变更方式反馈方式遗留代码修改方法第3章感知和分离伪协作程序模拟对象第4章接缝模型接缝第5章工具自动化重构工具单元测试用具第6章时间紧迫,但必须修改新生方法(SproutMethod)新生类(SproutClass)包装方法包装类装饰器模式第7章永远都无法完成的修改第8章如何添加新特性测试驱动开发测试驱动开发使用了下面这样的步骤:对于遗留代</div> </li> <li><a href="/article/1892084513916383232.htm" title="Spring生态圈的概要说明" target="_blank">Spring生态圈的概要说明</a> <span class="text-muted">志大洋</span> <a class="tag" taget="_blank" href="/search/%23%E5%BC%80%E5%8F%91/1.htm">#开发</a><a class="tag" taget="_blank" href="/search/Java%E7%94%9F%E6%80%81%E5%9C%88/1.htm">Java生态圈</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/%E6%A8%A1%E5%9D%97%E8%AF%B4%E6%98%8E/1.htm">模块说明</a> <div>《SpringCloud与Docker微服务架构实战》大多数Spring项目都是以“主版本号·次版本号·增量版本号·里程碑版本号”的形式命名版本号的。例如SpringFramework稳定版本4.3.5.RELEASE、里程碑版本5.0.0.M4等。其中,主版本号表示项目的重大重构;次版本号表示新特性的添加和变化;增量版本号一般表示Bug修复;里程碑版本号表示某版本号的里程碑。以下摘抄自《Spri</div> </li> <li><a href="/article/1892079338866667520.htm" title="android8.0自适应图标,适配8.0+的自适应图标" target="_blank">android8.0自适应图标,适配8.0+的自适应图标</a> <span class="text-muted">贫民窟的大富翁</span> <a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%8D%938.0/1.htm">安卓8.0</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E9%80%82%E5%BA%94%E5%9B%BE%E6%A0%87/1.htm">自适应图标</a><a class="tag" taget="_blank" href="/search/%E9%80%82%E9%85%8D%E6%95%99%E7%A8%8B/1.htm">适配教程</a><a class="tag" taget="_blank" href="/search/%E5%9B%BE%E6%A0%87%E8%83%8C%E6%99%AF/1.htm">图标背景</a><a class="tag" taget="_blank" href="/search/XML%E6%96%87%E4%BB%B6/1.htm">XML文件</a> <div>工具:mt管理器自适应图标是安卓8.0引入的新特性,可以让图标随系统主题变化,保持高度整齐,这个特性其实适配并不难准备工作:抠取图标前景(这个不用我讲了把),提取背景色步骤1:添加图标前景把图标前景文件丢进安装包,丢哪里都行,记住路径就行图片发自简书App打开arsc,在drawable/drawable下新建资源,类型为文本,把图标前景路径输进去,并记下这个资源的arscID比如7F020006</div> </li> <li><a href="/article/1892072277319675904.htm" title="Vue 3 工程化:从理论到实践 (上篇)" target="_blank">Vue 3 工程化:从理论到实践 (上篇)</a> <span class="text-muted">人民广场吃泡面</span> <a class="tag" taget="_blank" href="/search/Vue%E7%94%9F%E6%80%81/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>引言Vue3是Vue.js的最新版本,带来了许多新特性,如CompositionAPI、更好的TypeScript支持、性能优化等。随着Vue3的普及,如何高效地进行Vue3工程化开发成为了开发者关注的焦点。本文将深入探讨Vue3工程化的核心概念、常用工具以及实际开发中的应用。一、Vue3工程化的核心概念1.1CompositionAPIVue3引入了CompositionAPI,这是Vue3工程</div> </li> <li><a href="/article/1892023859297710080.htm" title="宝塔面板在CentOS下安装部署应用系统" target="_blank">宝塔面板在CentOS下安装部署应用系统</a> <span class="text-muted">奔跑吧邓邓子</span> <a class="tag" taget="_blank" href="/search/%E4%BC%81%E4%B8%9A%E8%BF%90%E8%90%A5/1.htm">企业运营</a><a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E5%AE%9D%E5%A1%94%E9%9D%A2%E6%9D%BF/1.htm">宝塔面板</a><a class="tag" taget="_blank" href="/search/%E9%83%A8%E7%BD%B2%E5%BA%94%E7%94%A8/1.htm">部署应用</a> <div>目录一、宝塔面板安装二、解决打开面板浏览器提示不安全三、服务器安全组放行xxxxx端口四、登录系统五、安装LNMP套件六、新建站点1.购买域名并注册2.域名备案(1)备案服务授权(2)去备案(3)新增备案3.添加解析记录4.添加站点5.删除站点下的生成的默认文件6.上传后台代码七、公众号/H5运行八、微信小程序发布1.小程序认证2.添加开发者3.开发配置(1)生成AppSecret(小程序密钥)(</div> </li> <li><a href="/article/1892019823433543680.htm" title="2025年前端工程师职业发展的系统性应聘规划" target="_blank">2025年前端工程师职业发展的系统性应聘规划</a> <span class="text-muted">IT木昜</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>2025年前端工程师职业发展的系统性应聘规划,结合技术趋势、企业需求和竞争力提升策略,分为技术栈学习、项目实战、求职策略三部分:一、2025年前端技术趋势与核心技能1.必学技术栈(基础+进阶)层级技术方向具体技能基础核心语言-HTML6新特性(预测)、CSS容器查询、TypeScript5.0+主流框架React22+(ServerComponents)、Vue4.0(VaporMode)、Sve</div> </li> <li><a href="/article/1892003303588425728.htm" title="Oracle 12c新特性" target="_blank">Oracle 12c新特性</a> <span class="text-muted">半入门级运维</span> <a class="tag" taget="_blank" href="/search/Oracle%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">Oracle数据库</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>Oracle12c新特性一、多租户架构oracle数据库从12cR1开始引入多租户架构。即以往版本oracle是一个实例对应一个数据库,在12c中oracle改变了原来一对一的理念,一个实例存在多个数据库,即PDB(可插拔数据库,pulggabledatabase)。12c中oracle引入了容器数据库CDB(containerdatabase),和可插拔数据库PDB(pluggabledatab</div> </li> <li><a href="/article/1891927727603249152.htm" title="Spring Framework 7.0.0-M1 预发布版重磅更新!全面优化,性能与稳定性双提升!" target="_blank">Spring Framework 7.0.0-M1 预发布版重磅更新!全面优化,性能与稳定性双提升!</a> <span class="text-muted"></span> <div>在当今快速发展的技术领域中,SpringFramework作为Java生态系统中的核心框架之一,今天的内容是介绍v7.0.0-M1预发布版——一个旨在为开发者们带来前所未有的编程体验的里程碑版本。v7.0.0-M1预发布:spring-projects/spring-framework⭐新特性在ClassUtils.forName()中移除对二进制数组名称的处理。(#34291https://gi</div> </li> <li><a href="/article/1891883471547199488.htm" title="免登录H5快手商城系统/抖音小店商城全开源运营版本" target="_blank">免登录H5快手商城系统/抖音小店商城全开源运营版本</a> <span class="text-muted">云深不知处㊣</span> <a class="tag" taget="_blank" href="/search/%E6%BA%90%E7%A0%81%E4%B8%93%E5%8C%BA/1.htm">源码专区</a><a class="tag" taget="_blank" href="/search/%E5%85%8D%E7%99%BB%E5%BD%95%E5%95%86%E5%9F%8E%E6%BA%90%E7%A0%81/1.htm">免登录商城源码</a> <div>内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示三、学习资料下载一、详细介绍最近因为直播需要然后在互站花500买了一套仿抖音的商城系统,感觉确实还可以,反正都买了所以就分享给有需要的人以下是互站那边的网站介绍可以了看一下,还是很不错的1、无需登录直接可以购买商品2、独立后台支持分站3、修复已知问题完美运营4、支持对接第三方支付:易支付、码支付、虎皮椒等。二、效果展示1.部分代码代码如下(</div> </li> <li><a href="/article/1891786176638021632.htm" title="HarmonyOS Next 界面开发新特性与技巧" target="_blank">HarmonyOS Next 界面开发新特性与技巧</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/harmonyos/1.htm">harmonyos</a> <div>本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)中界面开发相关技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。一、ArkUI框架在HarmonyOSNext中的演进(一)发展历程ArkUI框架从最初的版本一路走来,在HarmonyOSNext中实现</div> </li> <li><a href="/article/1891770609898156032.htm" title="Vue 3 Composition API进阶指南" target="_blank">Vue 3 Composition API进阶指南</a> <span class="text-muted">前端学步</span> <a class="tag" taget="_blank" href="/search/Vue3%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB%E4%B8%93%E6%A0%8F/1.htm">Vue3技术分享专栏</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>在上一篇文章中,我们介绍了Vue3的CompositionAPI基础,包括如何使用setup函数、ref和reactive来创建响应式数据,以及使用watchEffect来监控数据变化。本文将继续深入探讨CompositionAPI的高级用法,帮助你更好地理解和利用Vue3的新特性。组合多个Hooks在实际开发中,我们经常需要组合使用多个自定义的Hooks来实现复杂的功能。Vue3的Composi</div> </li> <li><a href="/article/1891748404598468608.htm" title="【Java进阶篇】——第11篇:Java 8 新特性及使用" target="_blank">【Java进阶篇】——第11篇:Java 8 新特性及使用</a> <span class="text-muted">猿享天开</span> <a class="tag" taget="_blank" href="/search/Java%E5%BC%80%E5%8F%91%E4%BB%8E%E5%85%A5%E9%97%A8%E5%88%B0%E7%B2%BE%E9%80%9A/1.htm">Java开发从入门到精通</a><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> <div>第11篇:Java8新特性及使用Java8是一次里程碑式的更新,引入了多项革新特性,极大地提升了开发效率和代码表现力。本文将从Lambda表达式、StreamAPI、时间日期API、Optional类等核心特性出发,结合实战场景和最佳实践,全面解析Java8的核心功能。1.Lambda表达式与函数式编程1.1Lambda表达式基础Lambda表达式允许以简洁的语法实现函数式接口(仅含一个抽象方法的</div> </li> <li><a href="/article/1891693270543691776.htm" title="2024年 Java 面试八股文——SpringBoot篇" target="_blank">2024年 Java 面试八股文——SpringBoot篇</a> <span class="text-muted">Java技术前沿</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><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/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a> <div>目录1.什么是SpringBoot?2.为什么要用SpringBoot3.SpringBoot与SpringCloud区别4.SpringBoot有哪些优点?5.SpringBoot的核心注解是哪个?它主要由哪几个注解组成的?6.SpringBoot支持哪些日志框架?推荐和默认的日志框架是哪个?7.SpringBootStarter的工作原理8.SpringBoot2.X有什么新特性?与1.X有什</div> </li> <li><a href="/article/1891590274988175360.htm" title="详解 React 18 更新后的特性,一文即懂" target="_blank">详解 React 18 更新后的特性,一文即懂</a> <span class="text-muted">FinBird</span> <a class="tag" taget="_blank" href="/search/%E6%8A%80%E6%9C%AF%E9%A3%9E%E8%B5%B7%E6%9D%A5/1.htm">技术飞起来</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>React18通过其改进的渲染系统带来了并发能力,并在此基础上构建了转换或自动批处理等性能增强特性。下面就看看到底有哪些值得关注的新特性。迭代更新内容总的来说,由于新的并发特性是渐进适配并按需启用的,React18中的重大更改仅限于几个简单的API更改,以及对React中多个行为的稳定性和一致性的一些改进,比较重要的一点是,不再支持IE浏览器。1、客户端渲染API带有createRoot()的ro</div> </li> <li><a href="/article/1891550916801261568.htm" title="心理测评性格测试矩阵版h5微信抖音QQ快手小程序app开源版开发" target="_blank">心理测评性格测试矩阵版h5微信抖音QQ快手小程序app开源版开发</a> <span class="text-muted">云起SAAS</span> <a class="tag" taget="_blank" href="/search/%E7%9F%A9%E9%98%B5/1.htm">矩阵</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1/1.htm">微信</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</a> <div>心理测评性格测试矩阵版h5微信抖音QQ快手小程序app开源版开发支持SAAS、支持独立加密、支持独立开源、价格不同。自带题库数据,后台一键初始,支持自己上传题目心理测评微信公众号微信小程序抖音小程序可打包APP支持单题、跳跃题、计分题、因子题、单选多选等99%题型这是一款什么软件?从智力、能力、人格、心理健康等各方面对个体进行全面的描述,从而确定其相对优势和不足。对心理从业者及人力资源从业者而言,</div> </li> <li><a href="/article/1891525137598050304.htm" title="h5 uniapp html2canvas生成海报,保存到本地功能实现;" target="_blank">h5 uniapp html2canvas生成海报,保存到本地功能实现;</a> <span class="text-muted">js小白羊</span> <a class="tag" taget="_blank" href="/search/uni-app/1.htm">uni-app</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>html2canvas生成海报,保存到本地功能实现1.在开发过程中我们将HTML2canvas封装成一个组件,通过prop传递ID参数2.组件的使用,伪代码不要直接复制uniapp语法3.h5保存生成后的图片到本地方法;1.在开发过程中我们将HTML2canvas封装成一个组件,通过prop传递ID参数在组件中,通过prop接收ID的,ID的变化来触发render.js里面的函数。html2can</div> </li> <li><a href="/article/1891505208865910784.htm" title="html 字体图标不显示不出来了,h5页面字体图标显示不正常" target="_blank">html 字体图标不显示不出来了,h5页面字体图标显示不正常</a> <span class="text-muted">微基因WeGene</span> <a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%AD%97%E4%BD%93%E5%9B%BE%E6%A0%87%E4%B8%8D%E6%98%BE%E7%A4%BA%E4%B8%8D%E5%87%BA%E6%9D%A5%E4%BA%86/1.htm">字体图标不显示不出来了</a> <div>问题描述开发的是微信公众号的纯静态H5页面,测试发现在iOS上面首次打开会出现字体图标无法显示的问题,并且切换到其它页面,字体图标也是一样无法显示:只能使用微信的右上角内的刷新选项,所有页面的图标就可正常显示,浏览其它页也正常:P.S.所有页面在iOS自带的safari或者chrome浏览器均可正常显示,在android也是正常显示。相关代码HTML:CSS:@charset"UTF-8";@fo</div> </li> <li><a href="/article/1891504956758880256.htm" title="html页面跳转先显示底部,H5页面在IOS微信中跳转时,会出现底部工具栏,遮挡页面底部内容..." target="_blank">html页面跳转先显示底部,H5页面在IOS微信中跳转时,会出现底部工具栏,遮挡页面底部内容...</a> <span class="text-muted">一一MIO一一</span> <a class="tag" taget="_blank" href="/search/html%E9%A1%B5%E9%9D%A2%E8%B7%B3%E8%BD%AC%E5%85%88%E6%98%BE%E7%A4%BA%E5%BA%95%E9%83%A8/1.htm">html页面跳转先显示底部</a> <div>问题描述:在IOS微信中打开H5页面,当浏览器内出现跳转产生url历史记录时,页面底部会出现一个带有前进和后退按钮的工具栏,会遮挡页面底部的内容。css分析缘由:页面跳转时,微信浏览器经过window.history读取到浏览的历史记录,此时便会在页面底部显示出前进后退按钮的工具栏,形成页面底部内容遮挡。但刷新一下该页面,就不会遮挡了。底部的工具栏是在页面完成渲染以后才渲染的。html解决方案:i</div> </li> <li><a href="/article/1891462805438132224.htm" title="C++11 学习笔记" target="_blank">C++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/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a> <div>EffectiveModernC++第一章新特性类型推导auto关键字:隐式定义,也是强类型定义。在编译期让编译器自动推断出变量类型以便分配内存,必须在定义时进行初始化decltype关键字:获取表达式的类型typedef重定义一个模板需要借助外敷类,但是using别名语法覆盖了typedef全部功能。使用using重定义模板会更简洁,定义函数指针会更加清晰。templatestructstr_m</div> </li> <li><a href="/article/1891448808177463296.htm" title="HTML5 起步" target="_blank">HTML5 起步</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/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>HTML5是W3C与WHATWG合作的结果,WHATWG指WebHypertextApplicationTechnologyWorkingGroup。WHATWG致力于web表单和应用程序,而W3C专注于XHTML2.0。在2006年,双方决定进行合作,来创建一个新版本的HTML。HTML5中的一些有趣的新特性:用于绘画的canvas元素用于媒介回放的video和audio元素对本地离线存储的更好</div> </li> <li><a href="/article/1891436944542461952.htm" title="HTML5新特性" target="_blank">HTML5新特性</a> <span class="text-muted">augenstern416</span> <a class="tag" taget="_blank" href="/search/HTMl/1.htm">HTMl</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>1.声明方式修改html5:2.更多的语义化标签header(网页头部)footer(网页尾部)aside(侧边栏)section(内容区域块)3.新的input表单输入类型与属性类型邮箱数值输入文件导入上传本地文件,需js代码配合。如果需要上传多个文件,给表单添加mulitiple属性。如果上传图片,给表单添加enctype属性。constmyFile=document.getElementBy</div> </li> <li><a href="/article/1891394850763370496.htm" title="Web组件适配网页中iframe" target="_blank">Web组件适配网页中iframe</a> <span class="text-muted"></span> <div>场景描述:当使用web组件加载带有iframe的页面时,由于H5的iframe标签的几个限制条件,可能会出现以下问题:1.由于iframe也要遵守浏览器同源策略,也有对应的白名单限制,所以也会出现跨域或者无法加载的问题,大多出现在本地或沙箱中的H5资源内联iframe时,并且cookie有时候也设置不上2.在应用侧调用runJavascript方法调用不到iframe里面,且主frame和ifra</div> </li> <li><a href="/article/1891293774726885376.htm" title="vue3.x的Teleport详细解读" target="_blank">vue3.x的Teleport详细解读</a> <span class="text-muted">黑码小帅</span> <a class="tag" taget="_blank" href="/search/vue%E7%9F%A5%E8%AF%86%E7%82%B9/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/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a><a class="tag" taget="_blank" href="/search/typescript/1.htm">typescript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/1.htm">前端框架</a><a class="tag" taget="_blank" href="/search/bootstrap/1.htm">bootstrap</a> <div>Teleport是Vue3.x中引入的一个新特性,用于将组件的内容渲染到DOM树中的任意位置,而不受组件自身DOM结构的限制。这在处理模态框、通知、下拉菜单等需要脱离当前组件层级的情况下非常有用。1.基本用法Teleport的基本语法如下:这是一个模态框在这个例子中,组件会将内部的渲染到标签中,而不是在当前组件的DOM结构中。2.to属性to属性指定了Teleport内容的目标位置。它可以是一个C</div> </li> <li><a href="/article/1891285192904077312.htm" title="html5 判断长按操作,移动端h5模拟长按事件" target="_blank">html5 判断长按操作,移动端h5模拟长按事件</a> <span class="text-muted">weixin_39933414</span> <a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%88%A4%E6%96%AD%E9%95%BF%E6%8C%89%E6%93%8D%E4%BD%9C/1.htm">判断长按操作</a> <div>1、标志位vartimer='';varisLongTouch=false;//加个标志位,防止settimeout因为事件循环和实际时间有偏差vartarget=document.getElementById('target');target.addEventListener('touchstart',function(){timer=setTimeout(function(){isLongTo</div> </li> <li><a href="/article/77.htm" title="算法 单链的创建与删除" target="_blank">算法 单链的创建与删除</a> <span class="text-muted">换个号韩国红果果</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div> 先创建结构体 struct student { int data; //int tag;//标记这是第几个 struct student *next; }; // addone 用于将一个数插入已从小到大排好序的链中 struct student *addone(struct student *h,int x){ if(h==NULL) //?????? </div> </li> <li><a href="/article/204.htm" title="《大型网站系统与Java中间件实践》第2章读后感" target="_blank">《大型网站系统与Java中间件实践》第2章读后感</a> <span class="text-muted">白糖_</span> <a class="tag" taget="_blank" href="/search/java%E4%B8%AD%E9%97%B4%E4%BB%B6/1.htm">java中间件</a> <div>&nbsp; &nbsp; &nbsp; &nbsp;断断续续花了两天时间试读了《大型网站系统与Java中间件实践》的第2章,这章总述了从一个小型单机构建的网站发展到大型网站的演化过程---整个过程会遇到很多困难,但每一个屏障都会有解决方案,最终就是依靠这些个解决方案汇聚到一起组成了一个健壮稳定高效的大型系统。 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;看完整章内容,</div> </li> <li><a href="/article/331.htm" title="zeus持久层spring事务单元测试" target="_blank">zeus持久层spring事务单元测试</a> <span class="text-muted">deng520159</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/jdbc/1.htm">jdbc</a> <div>今天把zeus事务单元测试放出来,让大家指出他的毛病, 1.ZeusTransactionTest.java 单元测试 &nbsp; package com.dengliang.zeus.webdemo.test; import java.util.ArrayList; import java.util.List; import org.junit.Test; import </div> </li> <li><a href="/article/458.htm" title="Rss 订阅 开发" target="_blank">Rss 订阅 开发</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/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/%E8%AE%A2%E9%98%85/1.htm">订阅</a><a class="tag" taget="_blank" href="/search/rss/1.htm">rss</a><a class="tag" taget="_blank" href="/search/%E8%A7%84%E8%8C%83/1.htm">规范</a> <div>&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RSS是 Really Simple Syndication的缩写(对rss2.0而言,是这三个词的缩写,对rss1.0而言则是RDF Site Summary的缩写,1.0与2.0走的是两个体系)。 &nbsp; RSS</div> </li> <li><a href="/article/585.htm" title="分页查询实现" target="_blank">分页查询实现</a> <span class="text-muted">g21121</span> <a class="tag" taget="_blank" href="/search/%E5%88%86%E9%A1%B5%E6%9F%A5%E8%AF%A2/1.htm">分页查询</a> <div>在查询列表时我们常常会用到分页,分页的好处就是减少数据交换,每次查询一定数量减少数据库压力等等。 按实现形式分前台分页和服务器分页: 前台分页就是一次查询出所有记录,在页面中用js进行虚拟分页,这种形式在数据量较小时优势比较明显,一次加载就不必再访问服务器了,但当数据量较大时会对页面造成压力,传输速度也会大幅下降。 服务器分页就是每次请求相同数量记录,按一定规则排序,每次取一定序号直接的数据</div> </li> <li><a href="/article/712.htm" title="spring jms异步消息处理" target="_blank">spring jms异步消息处理</a> <span class="text-muted">510888780</span> <a class="tag" taget="_blank" href="/search/jms/1.htm">jms</a> <div>spring JMS对于异步消息处理基本上只需配置下就能进行高效的处理。其核心就是消息侦听器容器,常用的类就是DefaultMessageListenerContainer。该容器可配置侦听器的并发数量,以及配合MessageListenerAdapter使用消息驱动POJO进行消息处理。且消息驱动POJO是放入TaskExecutor中进行处理,进一步提高性能,减少侦听器的阻塞。具体配置如下: </div> </li> <li><a href="/article/839.htm" title="highCharts柱状图" target="_blank">highCharts柱状图</a> <span class="text-muted">布衣凌宇</span> <a class="tag" taget="_blank" href="/search/hightCharts/1.htm">hightCharts</a><a class="tag" taget="_blank" href="/search/%E6%9F%B1%E5%9B%BE/1.htm">柱图</a> <div>第一步:导入 exporting.js,grid.js,highcharts.js;第二步:写controller &nbsp; @Controller@RequestMapping(value=&quot;${adminPath}/statistick&quot;)public class StatistickController {&nbsp;&nbsp;private UserServi</div> </li> <li><a href="/article/966.htm" title="我的spring学习笔记2-IoC(反向控制 依赖注入)" target="_blank">我的spring学习笔记2-IoC(反向控制 依赖注入)</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/mvc/1.htm">mvc</a><a class="tag" taget="_blank" href="/search/Spring+%E6%95%99%E7%A8%8B/1.htm">Spring 教程</a><a class="tag" taget="_blank" href="/search/spring3+%E6%95%99%E7%A8%8B/1.htm">spring3 教程</a><a class="tag" taget="_blank" href="/search/Spring+%E5%85%A5%E9%97%A8/1.htm">Spring 入门</a> <div>IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。 IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明: 如:程序中有 Mysql.calss 、Oracle.class 、SqlSe</div> </li> <li><a href="/article/1093.htm" title="TLS java简单实现" target="_blank">TLS java简单实现</a> <span class="text-muted">antlove</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/ssl/1.htm">ssl</a><a class="tag" taget="_blank" href="/search/keystore/1.htm">keystore</a><a class="tag" taget="_blank" href="/search/tls/1.htm">tls</a><a class="tag" taget="_blank" href="/search/secure/1.htm">secure</a> <div>&nbsp; 1. SSLServer.java package ssl; import java.io.FileInputStream; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; import java.security.KeyStore; import </div> </li> <li><a href="/article/1220.htm" title="Zip解压压缩文件" target="_blank">Zip解压压缩文件</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/Zip%E6%A0%BC%E5%BC%8F%E8%A7%A3%E5%8E%8B/1.htm">Zip格式解压</a><a class="tag" taget="_blank" href="/search/Zip%E6%B5%81%E7%9A%84%E4%BD%BF%E7%94%A8/1.htm">Zip流的使用</a><a class="tag" taget="_blank" href="/search/%E6%96%87%E4%BB%B6%E8%A7%A3%E5%8E%8B/1.htm">文件解压</a> <div>&nbsp; &nbsp;ZIP文件的解压缩实质上就是从输入流中读取数据。Java.util.zip包提供了类ZipInputStream来读取ZIP文件,下面的代码段创建了一个输入流来读取ZIP格式的文件; ZipInputStream in = new ZipInputStream(new FileInputStream(zipFileName)); &nbsp; &nbsp; &n</div> </li> <li><a href="/article/1347.htm" title="underscore.js 学习(一)" target="_blank">underscore.js 学习(一)</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/underscore/1.htm">underscore</a> <div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 工作中需要用到underscore.js,发现这是一个包括了很多基本功能函数的js库,里面有很多实用的函数。而且它没有扩展 javascript的原生对象。主要涉及对Collection、Object、Array、Function的操作。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 学</div> </li> <li><a href="/article/1474.htm" title="java jvm常用命令工具——jstatd命令(Java Statistics Monitoring Daemon)" target="_blank">java jvm常用命令工具——jstatd命令(Java Statistics Monitoring Daemon)</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/jstatd/1.htm">jstatd</a> <div>1.介绍 &nbsp; &nbsp; &nbsp; &nbsp; jstatd是一个基于RMI(Remove Method Invocation)的服务程序,它用于监控基于HotSpot的JVM中资源的创建及销毁,并且提供了一个远程接口允许远程的监控工具连接到本地的JVM执行命令。 &nbsp; &nbsp; &nbsp; &nbsp; jstatd是基于RMI的,所以在运行jstatd的服务</div> </li> <li><a href="/article/1601.htm" title="【Spring框架三】Spring常用注解之Transactional" target="_blank">【Spring框架三】Spring常用注解之Transactional</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/transactional/1.htm">transactional</a> <div>Spring可以通过注解@Transactional来为业务逻辑层的方法(调用DAO完成持久化动作)添加事务能力,如下是@Transactional注解的定义: &nbsp; /* * Copyright 2002-2010 the original author or authors. * * Licensed under the Apache License, Version </div> </li> <li><a href="/article/1728.htm" title="我(程序员)的前进方向" target="_blank">我(程序员)的前进方向</a> <span class="text-muted">bitray</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a> <div>作为一个普通的程序员,我一直游走在java语言中,java也确实让我有了很多的体会.不过随着学习的深入,java语言的新技术产生的越来越多,从最初期的javase,我逐渐开始转变到ssh,ssi,这种主流的码农,.过了几天为了解决新问题,webservice的大旗也被我祭出来了,又过了些日子jms架构的activemq也开始必须学习了.再后来开始了一系列技术学习,osgi,restful.....</div> </li> <li><a href="/article/1855.htm" title="nginx lua开发经验总结" target="_blank">nginx lua开发经验总结</a> <span class="text-muted">ronin47</span> <div>使用nginx lua已经两三个月了,项目接开发完毕了,这几天准备上线并且跟高德地图对接。回顾下来lua在项目中占得必中还是比较大的,跟PHP的占比差不多持平了,因此在开发中遇到一些问题备忘一下 1:content_by_lua中代码容量有限制,一般不要写太多代码,正常编写代码一般在100行左右(具体容量没有细心测哈哈,在4kb左右),如果超出了则重启nginx的时候会报 too long pa</div> </li> <li><a href="/article/1982.htm" title="java-66-用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。颠倒之后的栈为{5,4,3,2,1},5处在栈顶" target="_blank">java-66-用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。颠倒之后的栈为{5,4,3,2,1},5处在栈顶</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div> import java.util.Stack; public class ReverseStackRecursive { /** * Q 66.颠倒栈。 * 题目:用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。 * 颠倒之后的栈为{5,4,3,2,1},5处在栈顶。 *1. Pop the top element *2. Revers</div> </li> <li><a href="/article/2109.htm" title="正确理解Linux内存占用过高的问题" target="_blank">正确理解Linux内存占用过高的问题</a> <span class="text-muted">cfyme</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>Linux开机后,使用top命令查看,4G物理内存发现已使用的多大3.2G,占用率高达80%以上: Mem:&nbsp;&nbsp; 3889836k total,&nbsp;&nbsp;3341868k&nbsp;used,&nbsp;&nbsp; 547968k free,&nbsp;&nbsp; 286044k buffers Swap:&nbsp; 6127608k total,&nb</div> </li> <li><a href="/article/2236.htm" title="[JWFD开源工作流]当前流程引擎设计的一个急需解决的问题" target="_blank">[JWFD开源工作流]当前流程引擎设计的一个急需解决的问题</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C%E6%B5%81/1.htm">工作流</a> <div> &nbsp;&nbsp;&nbsp;&nbsp; 当我们的流程引擎进入IRC阶段的时候,当循环反馈模型出现之后,每次循环都会导致一大堆节点内存数据残留在系统内存中,循环的次数越多,这些残留数据将导致系统内存溢出,并使得引擎崩溃。。。。。。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 而解决办法就是利用汇编语言或者其它系统编程语言,在引擎运行时,把这些残留数据清除掉。</div> </li> <li><a href="/article/2363.htm" title="自定义类的equals函数" target="_blank">自定义类的equals函数</a> <span class="text-muted">dai_lm</span> <a class="tag" taget="_blank" href="/search/equals/1.htm">equals</a> <div>仅作笔记使用 public class VectorQueue { private final Vector&lt;VectorItem&gt; queue; private class VectorItem { private final Object item; private final int quantity; public VectorI</div> </li> <li><a href="/article/2490.htm" title="Linux下安装R语言" target="_blank">Linux下安装R语言</a> <span class="text-muted">datageek</span> <a class="tag" taget="_blank" href="/search/R%E8%AF%AD%E8%A8%80+linux/1.htm">R语言 linux</a> <div>命令如下:sudo gedit &nbsp;/etc/apt/sources.list1、deb http://mirrors.ustc.edu.cn/CRAN/bin/linux/ubuntu/ precise/&nbsp;2、deb http://dk.archive.ubuntu.com/ubuntu hardy universesudo apt-key adv --keyserver ke</div> </li> <li><a href="/article/2617.htm" title="如何修改mysql 并发数(连接数)最大值" target="_blank">如何修改mysql 并发数(连接数)最大值</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>MySQL的连接数最大值跟MySQL没关系,主要看系统和业务逻辑了 &nbsp; 方法一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MYSQL即可   方法二:MySQL的最大连接数默认是100客户端登录:mysql -uusername -ppass</div> </li> <li><a href="/article/2744.htm" title="单一功能原则" target="_blank">单一功能原则</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1/1.htm">面向对象的程序设计</a><a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E8%AE%BE%E8%AE%A1/1.htm">软件设计</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E5%8E%9F%E5%88%99/1.htm">编程原则</a> <div>单一功能原则[ 编辑] &nbsp; &nbsp; SOLID 原则 单一功能原则 开闭原则 Liskov代换原则 接口隔离原则 依赖反转原则 查 &nbsp; 论 &nbsp; 编 在面向对象编程领域中,单一功能原则(Single responsibility principle)规定每个类都应该有</div> </li> <li><a href="/article/2871.htm" title="POJO、VO和JavaBean区别和联系" target="_blank">POJO、VO和JavaBean区别和联系</a> <span class="text-muted">fanmingxing</span> <a class="tag" taget="_blank" href="/search/VO/1.htm">VO</a><a class="tag" taget="_blank" href="/search/POJO/1.htm">POJO</a><a class="tag" taget="_blank" href="/search/javabean/1.htm">javabean</a> <div>POJO和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Plain Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比POJO复杂很多,JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被</div> </li> <li><a href="/article/2998.htm" title="SpringSecurity3.X--LDAP:AD配置" target="_blank">SpringSecurity3.X--LDAP:AD配置</a> <span class="text-muted">hanqunfeng</span> <a class="tag" taget="_blank" href="/search/SpringSecurity/1.htm">SpringSecurity</a> <div>前面介绍过基于本地数据库验证的方式,参考http://hanqunfeng.iteye.com/blog/1155226,这里说一下如何修改为使用AD进行身份验证【只对用户名和密码进行验证,权限依旧存储在本地数据库中】。 &nbsp; 将配置文件中的如下部分删除: &lt;!-- 认证管理器,使用自定义的UserDetailsService,并对密码采用md5加密--&gt; </div> </li> <li><a href="/article/3125.htm" title="mac mysql 修改密码" target="_blank">mac mysql 修改密码</a> <span class="text-muted">IXHONG</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>$ sudo /usr/local/mysql/bin/mysqld_safe –user=root &amp; //启动MySQL(也可以通过偏好设置面板来启动)$ sudo /usr/local/mysql/bin/mysqladmin -uroot password yourpassword //设置MySQL密码(注意,这是第一次MySQL密码为空的时候的设置命令,如果是修改密码,还需在-</div> </li> <li><a href="/article/3252.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>抽象工厂模式: &nbsp;&nbsp;&nbsp; 工厂模式有一个问题就是,类的创建依赖于工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则。我们采用抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。 &nbsp;&nbsp;&nbsp; 总结:这个模式的好处就是,如果想增加一个功能,就需要做一个实现类,</div> </li> <li><a href="/article/3379.htm" title="评"高中女生军训期跳楼”" target="_blank">评"高中女生军训期跳楼”</a> <span class="text-muted">nannan408</span> <div>&nbsp;&nbsp; 首先,先抛出我的观点,各位看官少点砖头。那就是,中国的差异化教育必须做起来。 &nbsp;&nbsp; 孔圣人有云:有教无类。不同类型的人,都应该有对应的教育方法。目前中国的一体化教育,不知道已经扼杀了多少创造性人才。我们出不了爱迪生,出不了爱因斯坦,很大原因,是我们的培养思路错了,我们是第一要“顺从”。如果不顺从,我们的学校,就会用各种方法,罚站,罚写作业,各种罚。军</div> </li> <li><a href="/article/3506.htm" title="scala如何读取和写入文件内容?" target="_blank">scala如何读取和写入文件内容?</a> <span class="text-muted">qindongliang1922</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/scala/1.htm">scala</a> <div>直接看如下代码: package file import java.io.RandomAccessFile import java.nio.charset.Charset import scala.io.Source import scala.reflect.io.{File, Path} /** * Created by qindongliang on 2015/</div> </li> <li><a href="/article/3633.htm" title="C语言算法之百元买百鸡" target="_blank">C语言算法之百元买百鸡</a> <span class="text-muted">qiufeihu</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁,母,雏各几何? 代码如下: #include &lt;stdio.h&gt; int main() { int cock,hen,chick; /*定义变量为基本整型*/ for(coc</div> </li> <li><a href="/article/3760.htm" title="Hadoop集群安全性:Hadoop中Namenode单点故障的解决方案及详细介绍AvatarNode" target="_blank">Hadoop集群安全性:Hadoop中Namenode单点故障的解决方案及详细介绍AvatarNode</a> <span class="text-muted">wyz2009107220</span> <a class="tag" taget="_blank" href="/search/NameNode/1.htm">NameNode</a> <div>正如大家所知,NameNode在Hadoop系统中存在单点故障问题,这个对于标榜高可用性的Hadoop来说一直是个软肋。本文讨论一下为了解决这个问题而存在的几个solution。 1. Secondary NameNode 原理:Secondary NN会定期的从NN中读取editlog,与自己存储的Image进行合并形成新的metadata image 优点:Hadoop较早的版本都自带,</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>