前端性能分析工具——Lighthouse

在前端开发中,自己开发的app或者web page性能的好坏,一直是让前端开发人员很在意的话题。因为影响用户浏览网页速度的因素主要有:服务端数据返回、网络传输、页面渲染等等,这些方面做的不够好,都会影响客户体验。所以我们除了在开发的过程中注意代码的质量,同时还需要专业的网站测试工具辅助,让我们知道自己的网页还有哪些需要更为优化的方面。

当下流行的前端性能分析工具有很多,比如 Lighthouse、Pingdom、SpeedTracker、WebPageTest、Sitespeed.io等等。

我自己尝试了一款工具:Lighthouse,感觉还不错,上手容易,操作简单。

Lighthouse是一个开源的自动化工具,用于帮助改进网络应用的质量。可将其作为一个 Chrome扩展程序运行,或从命令行运行。Lighthouse分析web应用程序和web页面,收集关于开发人员最佳实践的现代性能指标和见解,让开发人员根据生成的评估页面,来进行网站优化和完善,提高用户体验。

一、安装使用

安装方式一:
1.全局安装:npm install -g lighthouse
2.创建一个文件(用于存放生成的报告文件),然后进入到文件,运行命令:lighthouse http://xxxxxxx
3.然后静态运行,生成报告,跑完之后,会生成一个.html的报告

安装方式二:
通过chrome的应用商店搜索Lighthouse下载安装,安装好后打开需要测试的网页,按F12打开调试模式,会在浏览器右上角出现Lighthouse图标,如图所示,点击Generate report 按钮,即可以看到最终的性能检测报告。

二、指标详解

1.Performance(性能)
First Contentful Paint(FCP):衡量页面开始加载到页面中第一个元素被渲染之间的时间。元素包含文本、图片、canvas等。
Speed Index:代表页面内容渲染所消耗的时间,该值越低越好。
Largest Contentful Paint(LCP):衡量标准视口内可见的最大内容元素的渲染时间。元素包括img、video、div及其他块级元素。
Time to Interactive(TTL):测量页面所有资源加载成功并能够可靠地快速响应用户输入的时间,即互动时间。
Total Blocking Time(TBT):这是 FCP 与 TTL 之间的所有时间段的总和。
Cumulative Layout Shift (CLS):衡量视觉稳定性,为了提供良好的用户体验,页面的CLS应保持小于 0.1。

2.Accessibility(可访问性)
无障碍功能:
当我们说某个网站具有无障碍功能时,我们的意思是网站的内容可用,其功能可由任何人操作。所有用户都能看见和使用键盘、鼠标或触摸屏,并且与网页内容的交互方式也清晰明了。这会让使用者获得良好的体验。我们在探讨无障碍功能时往往是围绕身体有缺陷的用户,下面我们来看一个示例:

我们可以看到上面的图中存在的一些问题:文本对比度低,这会让弱视用户难以阅读;“Remember details?”标签未关联复选框,因此您只得点按或点击那个小方框,而不能直接点击标签;将标签置于左侧而将字段置于右侧会让许多人难以将它们关联起来,也会让需要进行放大的人几乎无法使用页面;想像一下,如果在手机上看到这个画面,并且需要来回平移才能搞明白标签与字段的关联;此外,使用屏幕阅读器的用户会难以弄清楚关联问题。

我们经过调整:
a.将文本的颜色加深;
b.修改设计,让标签靠近它们所标示的字段;
c.修正标签,使其与复选框关联起来,以便点击标签同样可以进行状态切换。

3.Best Practices(最佳实践)
检查网页总体代码运行状况。通过的审核显示了针对最佳实践还验证了其他内容:
Uses HTTPS:使用HTTPS
Avoids requesting geolocation permission on page load:避免在页面加载时请求地理位置许可
Avoids front-end JavaScript libraries with known security vulnerabilities:避免具有已知安全漏洞的前端JavaScript库
Allows users to paste into password fields:允许用户粘贴到密码字段中

4.SEO(搜索引擎优化)
搜索引擎优化计分卡,它检查页面是否针对搜索引擎结果排名进行了优化。
这些是Lighthouse使用的标准:
没有阻止页面建立索引、链接具有描述性文字、页面具有成功的HTTP状态代码、具有宽度或初始比例的标签(适合移动设备)、文档具有元素、文档具有元描述等等。具体的可以看我之前的一篇关于SEO优化的文章</p> <p>5.Progressive Web App(PWA)<br>Is installable:可安装<br>Works in any browser:在任何浏览器中均可使用<br>Starts fast and stays fast:快速启动并保持快速<br>Is fully accessible:完全可访问<br>Responsive to any screen size:响应任何屏幕尺寸<br>Provides a custom offline page:提供自定义的离线页面<br>Can be discovered through search:可以通过搜索发现<br>Works with any input type, such as a mouse, a keyboard, a stylus, or touch:适用于任何输入类型,例如鼠标,键盘,手写笔或触摸<br>Provides context for permission requests:提供权限请求的上下文<br>Follows best practices for healthy code:遵循最佳实践以获取健康代码</p> </article> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1642817056791388160"></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">你可能感兴趣的:(前端性能分析工具——Lighthouse)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1835476983614631936.htm" title="Python开发常用的三方模块如下:" target="_blank">Python开发常用的三方模块如下:</a> <span class="text-muted">换个网名有点难</span> <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>Python是一门功能强大的编程语言,拥有丰富的第三方库,这些库为开发者提供了极大的便利。以下是100个常用的Python库,涵盖了多个领域:1、NumPy,用于科学计算的基础库。2、Pandas,提供数据结构和数据分析工具。3、Matplotlib,一个绘图库。4、Scikit-learn,机器学习库。5、SciPy,用于数学、科学和工程的库。6、TensorFlow,由Google开发的开源机</div> </li> <li><a href="/article/1835427057752961024.htm" title="补充元象二面" target="_blank">补充元象二面</a> <span class="text-muted">Redstone Monstrosity</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> <div>1.请尽可能详细地说明,防抖和节流的区别,应用场景?你的回答中不要写出示例代码。防抖(Debounce)和节流(Throttle)是两种常用的前端性能优化技术,它们的主要区别在于如何处理高频事件的触发。以下是防抖和节流的区别和应用场景的详细说明:防抖和节流的定义防抖:在一段时间内,多次执行变为只执行最后一次。防抖的原理是,当事件被触发后,设置一个延迟定时器。如果在这个延迟时间内事件再次被触发,则重</div> </li> <li><a href="/article/1834999618279141376.htm" title="前端性能优化" target="_blank">前端性能优化</a> <span class="text-muted">EdmundChen</span> <div>要做性能优化,首先我们得知道用户从开始访问站点到看结果的这一段时间到底后花在了哪些地方。这就设计到一个经典问题。在游览器输入地址按下回车键之后到用户看到结果经历了哪些过程,这里简单说一下大的几个过程。(假设是输入的一个域名而非IP)1.通过DNS解析获得网址的对应IP地址2.浏览器拿到IP地址与远程web服务器通过TCP三次握手协商来建立一个TCP/IP连接3.浏览器通过HTTP接发送请求4.服务</div> </li> <li><a href="/article/1834953947593404416.htm" title="实时监控或查看系统资源使用情况的工具——TOP" target="_blank">实时监控或查看系统资源使用情况的工具——TOP</a> <span class="text-muted">summer@彤妈</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>top命令可以显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率(MEM)、CPU占用率等。默认进程以CPU的占用率进行排序。输入大写M可以切换成使用内存占用率排序;输入大写P可以切换为使用CPU占用率排序。top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法:(实时监控系统资源使用情况图)统计</div> </li> <li><a href="/article/1834886766797090816.htm" title="【Trace】QQ+微信聊天记录分析工具" target="_blank">【Trace】QQ+微信聊天记录分析工具</a> <span class="text-muted">civilpy</span> <a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a> <div>Trace-痕迹阿里云:https://www.alipan.com/s/x6fqXe1jVg1百度云:https://pan.baidu.com/s/1FmchOjK2wAMwE5aQds7pIw?pwd=td7s该工具使用前,先配置随机码(当前):85EC【范例1】QQ个人聊天记录分析第1步:导出个人聊天记录或QQ群聊天记录,格式txt第2步:打开软件Trace-痕迹.exe,会自动弹出两个窗</div> </li> <li><a href="/article/1834818435637407744.htm" title="一张图详解开源监控夜莺(Nightingale)的架构" target="_blank">一张图详解开源监控夜莺(Nightingale)的架构</a> <span class="text-muted">夜莺开源监控</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E5%A4%9C%E8%8E%BA%E7%9B%91%E6%8E%A7/1.htm">夜莺监控</a><a class="tag" taget="_blank" href="/search/Nightingale/1.htm">Nightingale</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E5%A4%9C%E8%8E%BA/1.htm">开源夜莺</a> <div>夜莺监控是一款开源云原生观测分析工具,采用All-in-One的设计理念,集数据采集、可视化、监控告警、数据分析于一体,与云原生生态紧密集成,提供开箱即用的企业级监控分析和告警能力。夜莺于2020年3月20日,在github上发布v1版本,已累计迭代100多个版本。夜莺最初由滴滴开发和开源,并于2022年5月11日,捐赠予中国计算机学会开源发展委员会(CCFODC),为CCFODC成立后接受捐赠的</div> </li> <li><a href="/article/1834648385882255360.htm" title="为什么要学习使用C++常用软件分析工具?学会这些工具都有哪些好处?" target="_blank">为什么要学习使用C++常用软件分析工具?学会这些工具都有哪些好处?</a> <span class="text-muted">dvlinker</span> <a class="tag" taget="_blank" href="/search/C%2FC%2B%2B%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E4%BB%8E%E5%85%A5%E9%97%A8%E5%88%B0%E5%AE%9E%E6%88%98/1.htm">C/C++软件开发从入门到实战</a><a class="tag" taget="_blank" href="/search/C%2FC%2B%2B%E5%AE%9E%E6%88%98%E4%B8%93%E6%A0%8F/1.htm">C/C++实战专栏</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/%E5%B8%B8%E7%94%A8%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7/1.htm">常用分析工具</a><a class="tag" taget="_blank" href="/search/WIndbg/1.htm">WIndbg</a><a class="tag" taget="_blank" href="/search/IDA/1.htm">IDA</a><a class="tag" taget="_blank" href="/search/Depends/1.htm">Depends</a><a class="tag" taget="_blank" href="/search/ProcessExplorer/1.htm">ProcessExplorer</a><a class="tag" taget="_blank" href="/search/Process/1.htm">Process</a><a class="tag" taget="_blank" href="/search/Monitor/1.htm">Monitor</a> <div>目录1、为什么要学习使用C++软件常用分析工具?2、C++软件常用分析工具有哪些?都能处理哪些具体的问题?2.1、窗口信息查看工具SPY++2.2、模块依赖关系查看工具DependencyWalker2.3、GDI对象查看器GDIView2.4、进程信息查看工具ProcessExplorer2.5、进程活动监测工具ProcessMonitor2.6、函数调用监测工具APIMonitor2.7、调试</div> </li> <li><a href="/article/1834593684159557632.htm" title="python的pandas库" target="_blank">python的pandas库</a> <span class="text-muted">帅维维</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>什么是pandasPandas是一个开源的第三方Python库,它从Numpy和Matplotlib的基础上构建而来,享有数据分析“三剑客之一”的盛名。Pandas已经成为Python数据分析的必备高级工具,目标是成为强大、灵活、可以支持任何编程语言的数据分析工具。数据结构Pandas中除了Panel数据结构,还引入了两种新的数据结构——Series和DataFrame,这两种数据结构都建立在Nu</div> </li> <li><a href="/article/1834509242875342848.htm" title="应用Visual Studio Profiler分析CPU使用情况" target="_blank">应用Visual Studio Profiler分析CPU使用情况</a> <span class="text-muted">Rverdoser</span> <a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a> <div>使用VisualStudioProfiler分析CPU使用情况‌的步骤如下:1.‌启动CPU分析:‌在VisualStudio中打开你要分析的项目。在菜单栏中选择Debug>PerformanceProfiler,或者使用快捷键Alt+F2。在性能分析工具窗口中,选择CPUUsage选项,这将帮助你分析应用程序的CPU使用情况。2.‌运行CPU分析‌选择CPUUsage后,点击Start按钮。Vi</div> </li> <li><a href="/article/1834306407206318080.htm" title="Battery-Historian在win10上的详细环境搭建过程" target="_blank">Battery-Historian在win10上的详细环境搭建过程</a> <span class="text-muted">小赖同学啊</span> <a class="tag" taget="_blank" href="/search/%E7%A7%BB%E5%8A%A8%E7%AB%AF%E6%B5%8B%E8%AF%95/1.htm">移动端测试</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4%E7%9B%91%E6%8E%A7/1.htm">运维监控</a><a class="tag" taget="_blank" href="/search/%E7%94%B5%E9%87%8F%E6%B5%8B%E8%AF%95/1.htm">电量测试</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>Battery-historian是Google在GitHub上面开源的一个很强大的电量分析工具,相对来讲安装是比较麻烦的。之前已经在win7系统上搭过一次,这次在win10上再搭一次,整体来说没有发现什么太大的区别。Battery-Historian工具在Windows上运行主要需要有Go语言、Python、Java以及Git的支持。环境搭建详细步骤如下:一、安装配置Go语言环境1.下载:htt</div> </li> <li><a href="/article/1834077372249370624.htm" title="vue前端性能优化之cdn的使用" target="_blank">vue前端性能优化之cdn的使用</a> <span class="text-muted">不cong明的亚子</span> <a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/vue%2Belement/1.htm">vue+element</a><a class="tag" taget="_blank" href="/search/ui/1.htm">ui</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><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a> <div>优化原因项目中首页加载过慢,原因是js,css静态资源第一次加载的时间长vue.config.js'usestrict'......constcdn={js_cdn:['https://cdn.jsdelivr.net/npm/moment@2.27.0/moment.min.js','https://unpkg.com/vue@2.6.10/dist/vue.js','https://unpkg</div> </li> <li><a href="/article/1833968350158483456.htm" title="WiFi性能测试是评估无线网络性能的重要环节,它涵盖了多个方面的指标,如信号强度、网络速度、延迟时间等。" target="_blank">WiFi性能测试是评估无线网络性能的重要环节,它涵盖了多个方面的指标,如信号强度、网络速度、延迟时间等。</a> <span class="text-muted">weixin_45544617</span> <a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>WiFi性能测试是评估无线网络性能的重要环节,它涵盖了多个方面的指标,如信号强度、网络速度、延迟时间等。以下是对WiFi性能测试的详细解析:一、测试目的WiFi性能测试的主要目的是确保无线网络能够满足用户的实际需求,提供稳定、高速的网络连接。通过测试,可以及时发现并解决网络中的问题,优化网络配置,提升用户体验。二、测试工具1.智能手机应用:大多数智能手机都内置了WiFi分析工具,用户可以通过这些工</div> </li> <li><a href="/article/1833635870540918784.htm" title="Android性能优化之启动速度优化" target="_blank">Android性能优化之启动速度优化</a> <span class="text-muted">Just_Paranoid</span> <a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/Profiler/1.htm">Profiler</a><a class="tag" taget="_blank" href="/search/Systrace/1.htm">Systrace</a> <div>Android性能优化之启动速度优化1.App启动流程2.测试启动耗时的方法3.测试启动耗时的分析工具3.1AndroidProfiler3.2TraceView3.3Systrace4.如何优化启动时间4.1.减少DEX文件大小4.2优化Application初始化4.3优化Activity加载4.4使用启动引导页4.5使用启动优化库5.代码分析示例启动速度是衡量Android应用性能的重要指标</div> </li> <li><a href="/article/1833368344087064576.htm" title="每个分布式营销团队都应该使用的5种分析工具" target="_blank">每个分布式营销团队都应该使用的5种分析工具</a> <span class="text-muted">AI进修生</span> <a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a> <div>没有数据分析的营销就像没有计划的训练——当然,你可能会取得一些进展,但是你很可能没有将工作时间和努力投资在最有效的方式上。它是没有方向的,容易变成毫无目的的磨炼,通常会产生不可预测或次优的结果。但你已经了解这些了,所以你用GoogleAnalytics来追踪你网站的性能指标。你还可能会定期查看你的邮件和社交媒体营销平台内置的分析工具,以监控你的内容和广告表现。但这足够吗?特别是当你希望你的营销团队</div> </li> <li><a href="/article/1832980140431339520.htm" title="UE5引擎工具链知识点" target="_blank">UE5引擎工具链知识点</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/ue5/1.htm">ue5</a> <div>当我们提到“引擎工具链的开发”时,通常指的是为游戏开发或其他类型的软件开发创建一系列工具和技术栈的过程。这包括但不限于游戏引擎本身(如Unity或UnrealEngine),以及围绕这些引擎构建的各种工具和服务,比如用于构建关卡编辑器、物理模拟工具、动画系统、脚本环境、调试工具、性能分析工具等等。对于游戏引擎工具链的开发,开发者们通常需要掌握以下技能和知识:1.**编程语言**:大多数现代游戏引擎</div> </li> <li><a href="/article/1832737845807247360.htm" title="StarRocks 3.3 重磅发布,Lakehouse 架构发展进入快车道!" target="_blank">StarRocks 3.3 重磅发布,Lakehouse 架构发展进入快车道!</a> <span class="text-muted">StarRocks_labs</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%B9%96/1.htm">数据湖</a><a class="tag" taget="_blank" href="/search/%E6%B9%96%E4%BB%93%E4%B8%80%E4%BD%93/1.htm">湖仓一体</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E4%BB%93%E5%BA%93/1.htm">数据仓库</a> <div>StarRocks3.3的发布标志着Lakehouse架构在数据分析领域迈向了一个新的高度。作为下一代Lakehouse架构的代表,StarRocks3.3在稳定性、计算性能、缓存设计、物化视图、存储优化和Lakehouse生态系统等方面进行了全方位的优化和创新。本文将逐一介绍StarRocks3.3的这些新特性,带你深入了解这款强大的数据分析工具如何提升你的数据处理效率和分析能力。成熟稳定:全面</div> </li> <li><a href="/article/1832198878271729664.htm" title="Python处理大数据,如何提高处理速度" target="_blank">Python处理大数据,如何提高处理速度</a> <span class="text-muted">RS&</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a> <div>Python处理大数据,如何提高处理速度?一、利用大数据分析工具Dask:https://dask.org/Dask简介:Dask支持Pandas的DataFrame和NumpyArray的数据结构,并且既可在本地计算机上运行,也可以扩展到在集群上运行。Dask可支持pandas、Numpy、Sklearn、XGBoost、XArray、RAPIDS等等。原理及使用方法:https://blog.</div> </li> <li><a href="/article/1832122620653432832.htm" title="Python之Pandas详解" target="_blank">Python之Pandas详解</a> <span class="text-muted">八秒记忆的老男孩</span> <a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/Python%E5%9F%BA%E7%A1%80/1.htm">Python基础</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>Pandas是Python语言的一个扩展程序库,用于数据分析。Pandas是一个开放源码、BSD许可的库,提供高性能、易于使用的数据结构和数据分析工具。Pandas名字衍生自术语“paneldata”(面板数据)和“Pythondataanalysis”(Python数据分析)。Pandas一个强大的分析结构化数据的工具集,基础是NumPy(提供高性能的矩阵运算)。Pandas可以从各种文件格式比</div> </li> <li><a href="/article/1832082034852458496.htm" title="代码检查工具Sonar" target="_blank">代码检查工具Sonar</a> <span class="text-muted">我是谁??</span> <a class="tag" taget="_blank" href="/search/Tools/1.htm">Tools</a><a class="tag" taget="_blank" href="/search/Sonar/1.htm">Sonar</a> <div>sonar介绍Sonar是一个用于代码质量管理的开放平台。通过插件机制,Sonar可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如Hudson/Jenkins等)不同,Sonar并不是简单地把不同的代码检查工具结果(例如FindBugs,PMD等)直接显示在Web页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规</div> </li> <li><a href="/article/1831939443959885824.htm" title="Python读取Excel数据" target="_blank">Python读取Excel数据</a> <span class="text-muted">shiming8879</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/excel/1.htm">excel</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>在处理Excel数据时,Python提供了多种强大的库来读取、处理以及分析这些数据。最常用的库之一是pandas,它建立在numpy、matplotlib和scipy等库之上,为数据分析和操作提供了高级的、易于使用的数据结构和数据分析工具。另一个流行的库是openpyxl,它专门用于读写Excel2010xlsx/xlsm/xltx/xltm文件。一、引言在数据科学、机器学习、财务分析等多个领域,</div> </li> <li><a href="/article/1831557740963655680.htm" title="【Python】Pandas:数据分析" target="_blank">【Python】Pandas:数据分析</a> <span class="text-muted">T0uken</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%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/pandas/1.htm">pandas</a> <div>Pandas是Python中功能强大的数据分析工具,用于处理和分析结构化数据。本文将通过分步骤的方式,详细介绍如何使用Pandas进行数据分组、重塑、透视表、时间序列处理、类别型数据管理以及数据可视化。这些知识点将帮助初学者快速上手并掌握Pandas的核心功能。数据分组(Grouping)数据分组是数据分析中的常见操作,Pandas的groupby()方法允许我们按列对数据进行分组,然后对每个组执</div> </li> <li><a href="/article/1831418050491019264.htm" title="【数据分析工具】使用Pandas进行数据分析" target="_blank">【数据分析工具】使用Pandas进行数据分析</a> <span class="text-muted">爱技术的小伙子</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a><a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a> <div>数据分析工具使用Pandas进行数据分析引言在数据驱动的世界中,数据分析已经成为许多领域的核心技能。Pandas作为Python最流行的数据处理和分析库之一,以其强大的数据操作能力和简单易用的接口,广泛应用于各种数据分析任务。本文将介绍如何使用Pandas进行数据分析,并展示其在数据处理、清洗和分析中的强大功能。1.Pandas简介Pandas是基于Python的开源数据分析工具,特别适用于结构化</div> </li> <li><a href="/article/1831311045860356096.htm" title="构建灵活的搜索系统:Go 语言实践" target="_blank">构建灵活的搜索系统:Go 语言实践</a> <span class="text-muted">microrain</span> <a class="tag" taget="_blank" href="/search/%E7%89%A9%E8%81%94%E7%BD%91/1.htm">物联网</a><a class="tag" taget="_blank" href="/search/golang/1.htm">golang</a><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>构建灵活的搜索系统:Go语言实践在现代应用程序中,高效的搜索功能已成为不可或缺的组成部分。无论是内容管理系统、电子商务平台还是数据分析工具,都需要强大的搜索能力来提升用户体验。本文将介绍如何在Go语言中实现一个灵活的搜索系统,支持多种搜索引擎,包括ZincSearch和Elasticsearch。目标我们的目标是创建一个统一的搜索接口,使应用程序能够轻松地在不同的搜索引擎之间切换,而无需修改核心业</div> </li> <li><a href="/article/1830718605646458880.htm" title="Python数据分析与可视化的基础知识(带例子)" target="_blank">Python数据分析与可视化的基础知识(带例子)</a> <span class="text-muted">草宣</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/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>一、数据分析库在数据分析中,有许多常用的数据分析库可以帮助我们进行数据处理、探索和可视化。以下是几个常见的数据分析库和它们的功能:1.NumPyNumPy是一个功能强大的科学计算库,提供了多维数组对象和各种计算功能,用于高效地处理大规模数据集。它还提供了许多数学函数和线性代数操作。2.pandaspandas是基于NumPy的数据处理和分析库,提供了高效的数据结构和数据分析工具,如Series和D</div> </li> <li><a href="/article/1830679145441488896.htm" title="linux perf" target="_blank">linux perf</a> <span class="text-muted">秋夫人</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>perf是Linux性能分析工具的集合,它提供了丰富的命令来收集和分析程序运行时的性能数据。perf能够报告CPU使用率、缓存命中率、分支预测成功率等多种硬件级别的事件,同时也支持软件级别的事件,如页面错误、任务切换等。perf是理解程序性能瓶颈、进行性能优化的重要工具。perf的主要作用性能分析:通过监控硬件和软件事件,帮助开发者理解程序的性能瓶颈。热点函数定位:找出程序中CPU使用时间最多的函</div> </li> <li><a href="/article/1830625949654282240.htm" title="NCBI BLAST+:分析生物内在编码的工具" target="_blank">NCBI BLAST+:分析生物内在编码的工具</a> <span class="text-muted">belldeep</span> <a class="tag" taget="_blank" href="/search/%E7%94%9F%E7%89%A9%E4%BF%A1%E6%81%AF%E5%AD%A6/1.htm">生物信息学</a><a class="tag" taget="_blank" href="/search/Blast/1.htm">Blast</a><a class="tag" taget="_blank" href="/search/%E7%94%9F%E7%89%A9%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">生物数据分析</a> <div>在生物信息学的广阔领域中,NCBI(NationalCenterforBiotechnologyInformation,美国国立生物技术信息中心)开发的BLAST(BasicLocalAlignmentSearchTool,基本局部比对搜索工具)无疑是一把不可或缺的分析工具。NCBIBLAST+,作为其最新版本2.16.0+,为科研工作者提供了一套强大的序列比对和搜索功能,帮助解析生命现象背后的遗</div> </li> <li><a href="/article/1830615238031011840.htm" title="提升前端性能的JavaScript技巧(上)" target="_blank">提升前端性能的JavaScript技巧(上)</a> <span class="text-muted">Good_tea_h</span> <a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>提升前端性能的JavaScript技巧是一个广泛而深入的话题,它涵盖了从代码优化、资源管理、DOM操作效率、网络请求优化到利用现代浏览器特性等多个方面。以下将详细探讨这些技巧,并给出具体的实施建议。一、代码优化1.变量和函数优化局部变量优先:尽量使用局部变量而非全局变量,因为局部变量在查找时速度更快,因为它们位于作用域链的顶部。避免使用with语句:with语句会改变作用域链,导致JavaScri</div> </li> <li><a href="/article/1830582836525101056.htm" title="淘宝天猫卖家,需要用到哪些数据分析工具?这个黑科技插件,你一定要知道!" target="_blank">淘宝天猫卖家,需要用到哪些数据分析工具?这个黑科技插件,你一定要知道!</a> <span class="text-muted">口袋参谋插件</span> <div>今天给各位分享一个,特别好用又实际的一个淘宝数据分析插件—口袋参谋,我自己最近也一直在用。一、生意参谋指数转化大家都知道,淘宝生意参谋所有的数据,都是给你一个大概数值,给不了真实的实际数据,也就没什么参考意义了。不过,我们可以用口袋参谋的指数转化功能,查看实际数值可以对我们店铺后台的数据,进行转化为真实数据,帮助我们在日常运营店铺的过程中,更加精细化的分析店铺数据二、买家秀下载这个功能对我们做淘宝</div> </li> <li><a href="/article/1830534333778194432.htm" title="什么是日志分析" target="_blank">什么是日志分析</a> <span class="text-muted">ManageEngine卓豪</span> <a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%BF%97%E7%AE%A1%E7%90%86/1.htm">日志管理</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%BF%97%E5%88%86%E6%9E%90/1.htm">日志分析</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%BF%97%E7%AE%A1%E7%90%86/1.htm">日志管理</a> <div>日志分析(或日志文件分析)是检查整个网络生成的日志数据的过程,日志数据从各种来源生成,包括外围设备、工作站、服务器、应用程序以及其他硬件和软件组件,集中收集并分析这些信息,可以更好地理解网络运行、排除故障、维护网络安全。如何分析日志文件执行日志分析可以通过两种方式完成:手动筛选日志数据或使用日志分析工具。手动日志分析手动日志分析涉及个人或团队对日志文件进行物理检查,由于日志数据的数量和复杂性,这可</div> </li> <li><a href="/article/1830441953209184256.htm" title="这才是老板喜欢的数据分析简历" target="_blank">这才是老板喜欢的数据分析简历</a> <span class="text-muted">itLeeyw</span> <a class="tag" taget="_blank" href="/search/%E7%AE%80%E5%8E%86%E6%80%8E%E4%B9%88%E5%86%99/1.htm">简历怎么写</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a><a class="tag" taget="_blank" href="/search/%E7%AE%80%E5%8E%86/1.htm">简历</a><a class="tag" taget="_blank" href="/search/%E7%AE%80%E5%8E%86%E6%A8%A1%E6%9D%BF/1.htm">简历模板</a><a class="tag" taget="_blank" href="/search/%E9%80%9F%E5%88%9B%E7%8C%ABAI%E7%AE%80%E5%8E%86/1.htm">速创猫AI简历</a> <div>速创猫今天给大家分享的是应届毕业生数据分析简历优化案例,希望对大家求职有帮助。速创猫总结了以下七条简历制作干货,希望对大家有帮助:明确目标岗位:在简历的开头,清晰地标明你申请的职位和行业,让HR一眼就能看出你的求职意向。量化成果:用具体的数字来展示你的成就,比如“通过优化算法,提升了数据处理效率20%”,这样的描述比“提高了数据处理效率”更有说服力。技能与工具:列出你熟悉的数据分析工具和编程语言,</div> </li> <li><a href="/article/126.htm" title="插入表主键冲突做更新" target="_blank">插入表主键冲突做更新</a> <span class="text-muted">a-john</span> <div>有以下场景: 用户下了一个订单,订单内的内容较多,且来自多表,首次下单的时候,内容可能会不全(部分内容不是必须,出现有些表根本就没有没有该订单的值)。在以后更改订单时,有些内容会更改,有些内容会新增。 问题: 如果在sql语句中执行update操作,在没有数据的表中会出错。如果在逻辑代码中先做查询,查询结果有做更新,没有做插入,这样会将代码复杂化。 解决: mysql中提供了一个sql语</div> </li> <li><a href="/article/253.htm" title="Android xml资源文件中@、@android:type、@*、?、@+含义和区别" target="_blank">Android xml资源文件中@、@android:type、@*、?、@+含义和区别</a> <span class="text-muted">Cb123456</span> <a class="tag" taget="_blank" href="/search/%40%2B/1.htm">@+</a><a class="tag" taget="_blank" href="/search/%40/1.htm">@</a><a class="tag" taget="_blank" href="/search/%3F/1.htm">?</a><a class="tag" taget="_blank" href="/search/%40*/1.htm">@*</a> <div>一.@代表引用资源 1.引用自定义资源。格式:@[package:]type/name android:text="@string/hello"   2.引用系统资源。格式:@android:type/name     android:textColor="@android:color/opaque_red"</div> </li> <li><a href="/article/380.htm" title="数据结构的基本介绍" target="_blank">数据结构的基本介绍</a> <span class="text-muted">天子之骄</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E6%95%A3%E5%88%97%E8%A1%A8/1.htm">散列表</a><a class="tag" taget="_blank" href="/search/%E6%A0%91%E3%80%81%E5%9B%BE/1.htm">树、图</a><a class="tag" taget="_blank" href="/search/%E7%BA%BF%E6%80%A7%E7%BB%93%E6%9E%84/1.htm">线性结构</a><a class="tag" taget="_blank" href="/search/%E4%BB%B7%E6%A0%BC%E6%A0%87%E7%AD%BE/1.htm">价格标签</a> <div>数据结构的基本介绍 数据结构就是数据的组织形式,用一种提前设计好的框架去存取数据,以便更方便,高效的对数据进行增删查改。正确选择合适的数据结构,对软件程序的高效执行的影响作用不亚于算法的设计。此外,在计算机系统中数据结构的作用也是非同小可。例如常常在编程语言中听到的栈,堆等,就是经典的数据结构。   经典的数据结构大致如下:   一:线性数据结构 (1):列表 a</div> </li> <li><a href="/article/507.htm" title="通过二维码开放平台的API快速生成二维码" target="_blank">通过二维码开放平台的API快速生成二维码</a> <span class="text-muted">一炮送你回车库</span> <a class="tag" taget="_blank" href="/search/api/1.htm">api</a> <div> 现在很多网站都有通过扫二维码用手机连接的功能,联图网(http://www.liantu.com/pingtai/)的二维码开放平台开放了一个生成二维码图片的Api,挺方便使用的。闲着无聊,写了个前台快速生成二维码的方法。        html代码如下:(二维码将生成在这div下) ? 1  &nbs</div> </li> <li><a href="/article/634.htm" title="ImageIO读取一张图片改变大小" target="_blank">ImageIO读取一张图片改变大小</a> <span class="text-muted">3213213333332132</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/IO/1.htm">IO</a><a class="tag" taget="_blank" href="/search/image/1.htm">image</a><a class="tag" taget="_blank" href="/search/BufferedImage/1.htm">BufferedImage</a> <div> package com.demo; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; /** * @Description 读取一张图片改变大小 * @author FuJianyon</div> </li> <li><a href="/article/761.htm" title="myeclipse集成svn(一针见血)" target="_blank">myeclipse集成svn(一针见血)</a> <span class="text-muted">7454103</span> <a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a><a class="tag" taget="_blank" href="/search/SVN/1.htm">SVN</a><a class="tag" taget="_blank" href="/search/MyEclipse/1.htm">MyEclipse</a> <div>                                 &n</div> </li> <li><a href="/article/888.htm" title="装箱与拆箱----autoboxing和unboxing" target="_blank">装箱与拆箱----autoboxing和unboxing</a> <span class="text-muted">darkranger</span> <a class="tag" taget="_blank" href="/search/J2SE/1.htm">J2SE</a> <div>4.2 自动装箱和拆箱 基本数据(Primitive)类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。虽然为您打包基本数据类型提供了方便,但提供方便的同时表示隐藏了细节,建议在能够区分基本数据类型与对象的差别时再使用。 4.2.1 autoboxing和unboxing 在Java中,所有要处理的东西几乎都是对象(Object)</div> </li> <li><a href="/article/1015.htm" title="ajax传统的方式制作ajax" target="_blank">ajax传统的方式制作ajax</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a> <div>//这是前台的代码 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+</div> </li> <li><a href="/article/1142.htm" title="只用jre的eclipse是怎么编译java源文件的?" target="_blank">只用jre的eclipse是怎么编译java源文件的?</a> <span class="text-muted">avords</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a><a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a> <div>eclipse只需要jre就可以运行开发java程序了,也能自动 编译java源代码,但是jre不是java的运行环境么,难道jre中也带有编译工具? 还是eclipse自己实现的?谁能给解释一下呢问题补充:假设系统中没有安装jdk or jre,只在eclipse的目录中有一个jre,那么eclipse会采用该jre,问题是eclipse照样可以编译java源文件,为什么呢? &nb</div> </li> <li><a href="/article/1269.htm" title="前端模块化" target="_blank">前端模块化</a> <span class="text-muted">bee1314</span> <a class="tag" taget="_blank" href="/search/%E6%A8%A1%E5%9D%97%E5%8C%96/1.htm">模块化</a> <div>背景: 前端JavaScript模块化,其实已经不是什么新鲜事了。但是很多的项目还没有真正的使用起来,还处于刀耕火种的野蛮生长阶段。   JavaScript一直缺乏有效的包管理机制,造成了大量的全局变量,大量的方法冲突。我们多么渴望有天能像Java(import),Python (import),Ruby(require)那样写代码。在没有包管理机制的年代,我们是怎么避免所</div> </li> <li><a href="/article/1396.htm" title="处理百万级以上的数据处理" target="_blank">处理百万级以上的数据处理</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E6%9F%A5%E8%AF%A2/1.htm">查询</a> <div>一.处理百万级以上的数据提高查询速度的方法:        1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。         2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 o</div> </li> <li><a href="/article/1523.htm" title="mac 卸载 java 1.7 或更高版本" target="_blank">mac 卸载 java 1.7 或更高版本</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/OS/1.htm">OS</a> <div>卸载 java 1.7 或更高 sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin 成功执行此命令后,还可以执行 java 与 javac 命令 sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane 成功执行此命令后,还可以执行 java </div> </li> <li><a href="/article/1650.htm" title="【Spark六十一】Spark Streaming结合Flume、Kafka进行日志分析" target="_blank">【Spark六十一】Spark Streaming结合Flume、Kafka进行日志分析</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/Stream/1.htm">Stream</a> <div>第一步,Flume和Kakfa对接,Flume抓取日志,写到Kafka中 第二部,Spark Streaming读取Kafka中的数据,进行实时分析   本文首先使用Kakfa自带的消息处理(脚本)来获取消息,走通Flume和Kafka的对接 1. Flume配置 1. 下载Flume和Kafka集成的插件,下载地址:https://github.com/beyondj2ee/f</div> </li> <li><a href="/article/1777.htm" title="Erlang vs TNSDL" target="_blank">Erlang vs TNSDL</a> <span class="text-muted">bookjovi</span> <a class="tag" taget="_blank" href="/search/erlang/1.htm">erlang</a> <div>      TNSDL是Nokia内部用于开发电信交换软件的私有语言,是在SDL语言的基础上加以修改而成,TNSDL需翻译成C语言得以编译执行,TNSDL语言中实现了异步并行的特点,当然要完整实现异步并行还需要运行时动态库的支持,异步并行类似于Erlang的process(轻量级进程),TNSDL中则称之为hand,Erlang是基于vm(beam)开发,</div> </li> <li><a href="/article/1904.htm" title="非常希望有一个预防疲劳的java软件, 预防过劳死和眼睛疲劳,大家一起努力搞一个" target="_blank">非常希望有一个预防疲劳的java软件, 预防过劳死和眼睛疲劳,大家一起努力搞一个</a> <span class="text-muted">ljy325</span> <a class="tag" taget="_blank" href="/search/%E4%BC%81%E4%B8%9A%E5%BA%94%E7%94%A8/1.htm">企业应用</a> <div> 非常希望有一个预防疲劳的java软件,我看新闻和网站,国防科技大学的科学家累死了,太疲劳,老是加班,不休息,经常吃药,吃药根本就没用,根本原因是疲劳过度。我以前做java,那会公司垃圾,老想赶快学习到东西跳槽离开,搞得超负荷,不明理。深圳做软件开发经常累死人,总有不明理的人,有个软件提醒限制很好,可以挽救很多人的生命。 相关新闻: (1)IT行业成五大疾病重灾区:过劳死平均37.9岁 </div> </li> <li><a href="/article/2031.htm" title="读《研磨设计模式》-代码笔记-原型模式" target="_blank">读《研磨设计模式》-代码笔记-原型模式</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ /** * Effective Java 建议使用copy constructor or copy factory来代替clone()方法: * 1.public Product copy(Product p){} * 2.publi</div> </li> <li><a href="/article/2158.htm" title="配置管理---svn工具之权限配置" target="_blank">配置管理---svn工具之权限配置</a> <span class="text-muted">chenyu19891124</span> <a class="tag" taget="_blank" href="/search/SVN/1.htm">SVN</a> <div>今天花了大半天的功夫,终于弄懂svn权限配置。下面是今天收获的战绩。 安装完svn后就是在svn中建立版本库,比如我本地的是版本库路径是C:\Repositories\pepos。pepos是我的版本库。在pepos的目录结构 pepos    component    webapps 在conf里面的auth里赋予的权限配置为 [groups]</div> </li> <li><a href="/article/2285.htm" title="浅谈程序员的数学修养" target="_blank">浅谈程序员的数学修养</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/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/%E6%8B%9B%E8%81%98/1.htm">招聘</a> <div>                                 浅谈程序员的数学修养 </div> </li> <li><a href="/article/2412.htm" title="批量执行 bulk collect与forall用法" target="_blank">批量执行 bulk collect与forall用法</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/bulk+collect/1.htm">bulk collect</a><a class="tag" taget="_blank" href="/search/forall/1.htm">forall</a> <div>BULK COLLECT 子句会批量检索结果,即一次性将结果集绑定到一个集合变量中,并从SQL引擎发送到PL/SQL引擎。通常可以在SELECT INTO、 FETCH INTO以及RETURNING INTO子句中使用BULK COLLECT。本文将逐一描述BULK COLLECT在这几种情形下的用法。     有关FORALL语句的用法请参考:批量SQL之 F</div> </li> <li><a href="/article/2539.htm" title="Linux下使用rsync最快速删除海量文件的方法" target="_blank">Linux下使用rsync最快速删除海量文件的方法</a> <span class="text-muted">dongwei_6688</span> <a class="tag" taget="_blank" href="/search/OS/1.htm">OS</a> <div>1、先安装rsync:yum install rsync 2、建立一个空的文件夹:mkdir /tmp/test 3、用rsync删除目标目录:rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsync实际上用的是替换原理,处理数十万个文件也是秒删。 </div> </li> <li><a href="/article/2666.htm" title="Yii CModel中rules验证规格" target="_blank">Yii CModel中rules验证规格</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/rules/1.htm">rules</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a><a class="tag" taget="_blank" href="/search/validate/1.htm">validate</a> <div>Yii cValidator主要用法分析:  yii验证rulesit 分类: Yii yii的rules验证 cValidator主要属性 attributes ,builtInValidators,enableClientValidation,message,on,safe,skipOnError  </div> </li> <li><a href="/article/2793.htm" title="基于vagrant的redis主从实验" target="_blank">基于vagrant的redis主从实验</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/vagrant/1.htm">vagrant</a> <div>平台: Mac 工具: Vagrant 系统: Centos6.5 实验目的: Redis主从   实现思路 制作一个基于sentos6.5, 已经安装好reids的box, 添加一个脚本配置从机, 然后作为后面主机从机的基础box   制作sentos6.5+redis的box   mkdir vagrant_redis cd vagrant_</div> </li> <li><a href="/article/2920.htm" title="Memcached(二)、Centos安装Memcached服务器" target="_blank">Memcached(二)、Centos安装Memcached服务器</a> <span class="text-muted">frank1234</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/memcached/1.htm">memcached</a> <div>一、安装gcc rpm和yum安装memcached服务器连接没有找到,所以我使用的是make的方式安装,由于make依赖于gcc,所以要先安装gcc 开始安装,命令如下,[color=red][b]顺序一定不能出错[/b][/color]: 建议可以先切换到root用户,不然可能会遇到权限问题:su root 输入密码...... rpm -ivh kernel-head</div> </li> <li><a href="/article/3047.htm" title="Remove Duplicates from Sorted List" target="_blank">Remove Duplicates from Sorted List</a> <span class="text-muted">hcx2013</span> <a class="tag" taget="_blank" href="/search/remove/1.htm">remove</a> <div>Given a sorted linked list, delete all duplicates such that each element appear only once. For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return&</div> </li> <li><a href="/article/3174.htm" title="Spring4新特性——JSR310日期时间API的支持" target="_blank">Spring4新特性——JSR310日期时间API的支持</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/spring4/1.htm">spring4</a> <div>Spring4新特性——泛型限定式依赖注入 Spring4新特性——核心容器的其他改进 Spring4新特性——Web开发的增强 Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC  Spring4新特性——Groovy Bean定义DSL Spring4新特性——更好的Java泛型操作API  Spring4新</div> </li> <li><a href="/article/3301.htm" title="浅谈enum与单例设计模式" target="_blank">浅谈enum与单例设计模式</a> <span class="text-muted">247687009</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E4%BE%8B/1.htm">单例</a> <div>在JDK1.5之前的单例实现方式有两种(懒汉式和饿汉式并无设计上的区别故看做一种),两者同是私有构 造器,导出静态成员变量,以便调用者访问。 第一种 package singleton; public class Singleton { //导出全局成员 public final static Singleton INSTANCE = new S</div> </li> <li><a href="/article/3428.htm" title="使用switch条件语句需要注意的几点" target="_blank">使用switch条件语句需要注意的几点</a> <span class="text-muted">openwrt</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/break/1.htm">break</a><a class="tag" taget="_blank" href="/search/switch/1.htm">switch</a> <div>1. 当满足条件的case中没有break,程序将依次执行其后的每种条件(包括default)直到遇到break跳出 int main() { int n = 1; switch(n) { case 1: printf("--1--\n"); default: printf("defa</div> </li> <li><a href="/article/3555.htm" title="配置Spring Mybatis JUnit测试环境的应用上下文" target="_blank">配置Spring Mybatis JUnit测试环境的应用上下文</a> <span class="text-muted">schnell18</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a><a class="tag" taget="_blank" href="/search/JUnit/1.htm">JUnit</a> <div>Spring-test模块中的应用上下文和web及spring boot的有很大差异。主要试下来差异有: 单元测试的app context不支持从外部properties文件注入属性 @Value注解不能解析带通配符的路径字符串 解决第一个问题可以配置一个PropertyPlaceholderConfigurer的bean。 第二个问题的具体实例是:    </div> </li> <li><a href="/article/3682.htm" title="Java 定时任务总结一" target="_blank">Java 定时任务总结一</a> <span class="text-muted">tuoni</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/timer/1.htm">timer</a><a class="tag" taget="_blank" href="/search/quartz/1.htm">quartz</a><a class="tag" taget="_blank" href="/search/timertask/1.htm">timertask</a> <div> Java定时任务总结  一.从技术上分类大概分为以下三种方式:  1.Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务;   说明:    java.util.Timer定时器,实际上是个线程,定时执行TimerTask类 &</div> </li> <li><a href="/article/3809.htm" title="一种防止用户生成内容站点出现商业广告以及非法有害等垃圾信息的方法" target="_blank">一种防止用户生成内容站点出现商业广告以及非法有害等垃圾信息的方法</a> <span class="text-muted">yangshangchuan</span> <a class="tag" taget="_blank" href="/search/rank/1.htm">rank</a><a class="tag" taget="_blank" href="/search/%E7%9B%B8%E4%BC%BC%E5%BA%A6%E8%AE%A1%E7%AE%97/1.htm">相似度计算</a><a class="tag" taget="_blank" href="/search/%E6%96%87%E6%9C%AC%E7%9B%B8%E4%BC%BC%E5%BA%A6/1.htm">文本相似度</a><a class="tag" taget="_blank" href="/search/%E8%AF%8D%E8%A2%8B%E6%A8%A1%E5%9E%8B/1.htm">词袋模型</a><a class="tag" taget="_blank" href="/search/%E4%BD%99%E5%BC%A6%E7%9B%B8%E4%BC%BC%E5%BA%A6/1.htm">余弦相似度</a> <div>本文描述了一种在ITEYE博客频道上面出现的新型的商业广告形式及其应对方法,对于其他的用户生成内容站点类型也具有同样的适用性。   最近在ITEYE博客频道上面出现了一种新型的商业广告形式,方法如下:     1、注册多个账号(一般10个以上)。     2、从多个账号中选择一个账号,发表1-2篇博文</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>