js延迟加载方法 2022-03-31 1.defer属性 <script src="file.js" defer> </script> 浏览器会并行下载 file.js和其它有 defer 属性的script,而不会阻塞页面后续处理。defer属性在IE 4.0中就实现了,超过10多年了!Firefox从 3.5 开始支持defer属性 。 注:所有的defer脚本保证是按顺序依次执行的。 2.async属性 <script src="file.js" async> </script> async属性是HTML5新增的。作用和defer类似,但是它将在下载后尽快执行,不能保证脚本会按顺序执行。它们将在onload 事件之前完成。 Firefox3.6、Opera 10.5、IE 9和 最新的Chrome 和 Safari 都支持 async 属性。可以同时使用 async 和 defer,这样IE 4之后的所有IE 都支持异步加载。 3.动态创建DOM方式 (使用的最多) 12345678910111213``function` `downloadJSAtOnload()....
摘自公众号:9 个实用 shell 脚本 2022-03-25 9 个实用 shell 脚本,建议收藏! 程序员解析 2022-03-25 16:00 公众号关注 “程序员解析” 设为“星标”,重磅干货,第一时间送达定义00作 者 | 郑晓慧 编 辑 | 唐也钦 设 计 | 戚桐 转载:我的小碗汤 1.Dos攻击防范(自动屏蔽攻击 IP) #!/bin/bash DATE=$(date +%d/%b/%Y:%H:%M) LOG_FILE=/usr/local/nginx/logs/demo2.access.log ABNORMAL_IP=$(tail -n5000 $LOG_FILE |grep $DATE |awk '{a[$1]++}END{for(i in a)if(a[i]>10)print i}') for IP in $ABNORMAL_IP; do if [ $(iptables -vnL |grep -c "$IP") -eq 0 ]; then iptables -I INPUT -s $IP -j DROP echo "$(date +'%F_%T') $IP" >> /tmp/drop_ip.log fi d....
当你老了,一生最后悔什么 2022-03-25 当你老了,一生最后悔什么?全球统计前5名公布 一生很短,不过三万多天。 有些人迷迷糊糊就踏进了中年;再一眨眼,便要老去。 很多时候,我们都以为来日方长,可太多事情可能永远消逝了,太多机会一旦错过就再无可能。 有这么一份全球统计前五名的报告,是否让你也陷入沉思…… no1————45%的人后悔没有善待自己的身体 茨威格有句名言:一个人年轻的时候,总以为疾病和死神只会光顾别人。 青春犹在时,不懂健康的珍贵,等到失去之后,才恍悟那是一件无价之宝。 随着年龄增长,活力不再,心有余而力不足;病痛也常来光顾,糟心奔走医院,给家人带来过多困扰烦忧。 这才悔恨:财富于己何用?赚了半辈子的钱,最后只能拿来买药看病。时间于己何用?躺在病床上的时间,比住在大房子里的时间还长。 人生的破产往往不是败于智商、情商、财商,而是败给了健康。 原来善待自己的身体,就是对生命最好的投资。 健康,永远是无数的“0”前面的“1”。合理饮食,定期体检,劳逸结合,坚持锻炼。 当同龄人爬层楼梯都大喘气,而你随时可以拉上爱人,来场说走就走的旅行时,便会由衷感叹健康的美好。 no2————57%的人后悔没有好好对待自己的伴侣 罗振宇....
呼叫中心概念解释 2022-03-24 呼叫中心概念解释 座席 座席也称为话务员, 是呼叫中心中处理传真, 呼叫, 电子邮件等业务的基本单位, 在传统的呼叫中心中, 座席的任务就是接听或者拨打电话, 而在新型系统中, 由于终端电脑的普及, 座席还将能够处理电子邮件, 短信, 传真等多种类型的业务. 座席使用的电话可以为内线电话(连接内部交换机), 普通直线电话, 以及软件电话(运行在电脑系统上). 一个系统中 一般使用工号作为坐席的唯一标识。 坐席操作系统 一般来说坐席会配备电脑并且运行相应的客户端系统,当坐席电话发生事件时, 例如振铃,接通,挂断, 客户端系统上也会执行一定的操作, 如事件提示, 弹屏等;相反, 坐席也可以通过在客户端系统对电话进行操作, 例如发起通话, 咨询, 三方通话, 拒接, 挂断等. 大部分坐席操作系统还将会和业务系统相结合. 对于一些简单的应用 坐席并不配备电脑 但他们可以通过电话键盘完成基本的操作, 例如在通话结束后坐席不挂机, 系统通过语音提示坐席通过电话键盘标记此通通话在业务上的状态:成功,失败,有意向等。 队列/坐席组 一个队列是由一定数量的座席组成的, 该队列为处理呼叫的基本单位,....
送东阳马生序 2022-03-10 送东阳马生序^1^ 余幼时即嗜学^2^ 。家贫,无从致书以观^3^ ,每假借于藏书之家^4^ ,手自笔录,计日以还。天大寒,砚冰坚,手指不可屈伸,弗之怠^5^ 。录毕,走送之^6^ ,不敢稍逾约^7^ 。以是人多以书假余,余因得遍观群书。既加冠^8^ ,益慕圣贤之道^9^ ,又患无硕师、名人与游^10^ ,尝趋百里外^11^ ,从乡之先达执经叩问^12^ 。先达德隆望尊,门人弟子填其室,未尝稍降辞色^13^ 。余立侍左右,援疑质理^14^ ,俯身倾耳以请;或遇其叱咄^15^ ,色愈恭,礼愈至,不敢出一言以复;俟其欣悦^16^ ,则又请焉。故余虽愚,卒获有所闻^17^ 。 当余之从师也,负箧曳屣^18^ ,行深山巨谷中,穷冬烈风^19^ ,大雪深数尺,足肤皲裂而不知^20^ 。至舍,四支僵劲不能动^21^ ,媵人持汤沃灌^22^ ,以衾拥覆^23^ ,久而乃和。寓逆旅^24^ ,主人日再食^25^ ,无鲜肥滋味之享。同舍生皆被绮绣^26^ ,戴朱缨宝饰之帽^27^ ,腰白玉之环^28^ ,左佩刀,右备容臭^29^ ,烨然若神人^30^ ;余则缊袍敝衣处其间^31^ ,略无慕艳意。以中有足....
全栈工具推荐 2022-03-08 全栈工具推荐 在开发中我应用到了当今很流行的工具,这里给大家介绍一些我认为很有用的工具或者代码框架。 设计 Zeplin:在dev与designer之间共享设计稿; Sketch:强大的移动应用设计工具,什么都能做; 字体:文悦科技家有很多优秀的字体; dribbble:全球最优质的设计作品聚集地。 Android OkHttp + Retrofit + RxJava + RxAndroid + RxLifecycle:为你的应用提供简洁稳定的网络架构; Dagger:依赖注入框架,性能好; Fabric:监控应用的crash情况和用户增长,免费; Stetho: 方便在chrome里监听所有http请求,查看本地Database内容等; DBFlow: 基于Sqlite的orm工具。 Server Python +Flask:快速为移动应用搭建稳定安全的后台服务; Jenkins:当前最好用的持续集成工具,自动将GitHub代码部署到服务器上,再也不用copy代码到ftp上啦; Rollbar /Sentry +Slack:监控server运行环境,一旦发生问题能及时通知给开发者停....
有技术还怕做不出能变现的Side Project 2022-03-08 有技术还怕做不出能变现的Side Project? Mr.Wu Mr.Wu 8 人赞同了该文章 有幸自从写了几篇关于被动收入、Side Project的文章后,从邮箱和公众号后台收到了一些朋友的讨论留言。大部分人的困惑都大同小异,就是守着一门手艺,却不知道该怎么迈出Side Project的第一步,其实我在跌入了这一坑之后的几年里,也在不同时期和项目的构思上反复会陷入这种困惑,没什么牛掰的资历去直接告诉你操作步骤,仅有些心得想分享一下,但愿对你创建Side Project和被动收入的变现能有所启发。 首先,这里提到的技术,不局限于计算机技术,也可以是其他方面,比如翻译、写作等等技能,我要分享的是启动一项Side Project的思路。 发现问题,并解决问题 一切的一切,都应始于解决问题这个初衷,这将定义项目的价值,这是老生常谈的观点了,但确实重要。就像家里空气太干燥,你很自然会想到买一个空气加湿器一样,那么空气加湿器的价值就在于它解决了人为改善空气湿度这个问题。所以,从自己的行业或者实际工作出发,去发现问题,哪怕是为了解决自己的问题也行,因为和你一样面临同样问题的人肯定大有人在。 我举....
JVMTI 2022-03-08 Java生态中有一些非常规的技术,它们能达到一些特别的效果。这些技术的实现原理不去深究的话一般并不是广为人知。这种技术通常被称为黑科技。而这些黑科技中的绝大部分底层都是通过JVMTI实现的。 形象地说,JVMTI是Java虚拟机提供的一整套后门。通过这套后门可以对虚拟机方方面面进行监控,分析。甚至干预虚拟机的运行。 下面先介绍下哪些黑科技是通过JVMTI实现的,再详细的介绍JVMTI。 JVMTI可以用来实现哪些黑科技 使用JVMTI对class文件加密 有时一些涉及到关键技术的class文件或者jar包我们不希望对外暴露,因而需要进行加密。使用一些常规的手段(例如使用混淆器或者自定义类加载器)来对class文件进行加密很容易被反编译。反编译后的代码虽然增加了阅读的难度,但花费一些功夫也是可以读懂的。使用JVMTI我们可以将解密的代码封装成.dll,或.so 文件。这些文件想要反编译就很麻烦了,另外还能加壳。解密代码不能被破解,从而也就保护了我们想要加密的class文件。 使用JVMTI实现应用性能监控(APM) 在微服务大行其道的环境下,分布式系统的逻辑结构变得越来越复杂。这给....
金刚顶瑜伽念珠经 有更新! 2022-03-03 金刚顶瑜伽念珠经(于十万广颂中略出) 尔时毗卢遮那世尊。告金刚手言。善哉善哉。为诸修真言行菩萨者。说诸仪轨则。哀愍未来诸有情等。说念珠功德胜利。由闻如是妙意趣故速证悉地。时金刚萨埵菩萨白佛言。唯然世尊我今为说之。尔时金刚萨埵菩萨而说偈言。 珠表菩萨之胜果 于中间绝为断漏 绳线贯串表观音 母珠以表无量寿 慎莫蓦过越法罪 皆由念珠积功德 砗渠念珠一倍福 木患念珠两倍福 以铁为珠三倍福 熟铜作珠四倍福 水精真珠及诸宝 此等念珠百倍福 千倍功德帝释子 金刚子珠俱胝福 莲子念珠千俱胝 菩提子珠无数福 佛部念诵菩提子 金刚部法金刚子 宝部念诵以诸宝 莲花部珠用莲子 羯磨部中为念珠 众珠间杂应贯串 念珠分别有四种 上品最胜及中下 一千八十以为上 一百八珠为最胜 五十四珠以为中 二十七珠为下类 二手持珠当心上 静虑离念心专注 本尊瑜伽心一境 皆得成就理事法 设安顶髻或挂身 或安颈上及安臂 所说言论成念诵 以此念诵净三业 由安顶髻净无间 由带颈上净四重 手持臂上除众罪 能令行人速清....
金刚功答疑摘录 2022-03-02 1.《金刚长寿功》这个功名有“金刚“二字,应怎样理解? 答:它指的是练功后,病已去除,身体健康像金刚一样。 2.《金刚长寿功》在习练时,是否要怒眉突眼,全身绷紧? 答:不要。恰恰相反,练功前要全身放松,排除杂念,安静自然。 3.练功前的思想准备是什么? 答:打起精神。认真投入,排除杂念,心志专一,意守本体。这样才能够神不外驰,气不外跑。决不可精神疲惫,马虎敷衍。 4.会出偏差或走火入魔吗? 答:按照《金刚长寿功》的练功要求及动作要领去做,决不会出现偏差,走火入魔。从各地习练的情况来看,也从未发生过上述情况。 5.有无禁忌? 答:有。饭后一小时内不能练,饭前饭后不能做剧烈运动,这是普通的卫生常识。另外,下雨、大风、大雾、打雷或天气恶劣时不宜在室外练功。 6.《金刚长寿功》中,有几部的动作是左右对称的,是否练一边也可以? 答:不可。一定要练完对称动作。 7.《金刚长寿功》能否与其他功法同练? 答:《金刚长寿功》不排斥其他功法,但如收到良好的效果或出现问题,怎么分辨,如何处理?如果一定要与别的功法一起练,可以将两种功法习练的时间适当的隔开,以避免不良的问题发生。 8.练功后出现呕吐杂质或吐血....
佛说木槵子经 2022-03-01 《佛说木患子经》经文及白话略讲: 一时佛游罗阅只耆阇崛山中,与大比丘众一千二百五十人俱,菩萨无数,名称远闻,天、人所敬。 时难国王,名波流离,遣使来到佛所,顶礼佛足,白佛言:“世尊!我国边小,频岁寇贼,五谷勇贵,疾病流行,人民困苦,我恒不得安卧。如来法藏,多悉深广;我有忧务,不得修行。唯愿世尊特垂慈愍,赐我要法!使我日夜易得修行,未来世中远离众苦。” 佛告王言:“若欲灭烦恼障、报障者,当贯木槵子一百八,以常自随。若行、若坐、若卧,恒当至心,无分散意,称佛陀、达摩、僧伽名,乃过一木槵子,如是渐次度木槵子,若十、若二十、若百、若千,乃至百千万。若能满二十万遍,身心不乱,无诸谄曲者,舍命得生第三焰天,衣食自然,常安乐行。若复能满一百万遍者,当得断除百八结业,始名背生死流,趣向泥洹,永断烦恼根,获无上果。” 信还启王,王大欢喜,遥向世尊,头面礼佛云:“大善!我当奉行。”即敕吏民,营办木槵子,以为千具,六亲国戚,皆与一具。王常诵念,虽亲军旅,亦不废置。 又作是念:“世尊大慈,普应一切。若我此善,得免长沦苦海,如来当现我身,为我说法。”愿乐迫心,三日不食。 佛即应形,与诸眷属,来其宫内,而告....
spring相关说明 2022-03-01 采用声明式事务 1、声明式事务配置 配置SessionFactory 配置事务管理器 事务的传播特性 那些类那些方法使用事务 2、编写业务逻辑方法 继承HibernateDaoSupport类,使用HibernateTemplate来持久化,HibernateTemplate是Hibernate session的封装 * 默认的回滚是RuntimeException(包括继承RuntimeException的子类),普通异常不回滚 在编写业务逻辑方法时,最好将异常一直往上抛出,在呈现层处理(struts) spring的事务需要设置到业务方法上(事务边界定义到Facade类上),不要添加到Dao上 3、了解事务的几种传播特性 PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务。如果没有事务则开启 PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行 PROPAGATION_MANDATORY: 如果已经存在一个事务,支持当前事务。如果没有一个活动的事务,则抛出异常。 PROPAGATION_REQUIR....
OGNL表达式 2022-03-01 OGNL表达式struts2标签“%,#,$” 一、什么是OGNL,有什么特点? OGNL(Object-Graph Navigation Language),大概可以理解为:对象图形化导航语言。是一种可以方便地操作对象属性的开源表达式语言。OGNL有如下特点: 1、支持对象方法调用,形式如:objName.methodName(); 2、支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路)]@[方法名 | 值名],例如: @java.lang.String@format('foo %s', 'bar')或@tutorial.MyConstant@APP_NAME; 3、支持赋值操作和表达式串联,例如: price=100, discount=0.8, calculatePrice(),这个表达式会返回80; 4、访问OGNL上下文(OGNL context)和ActionContext; 5、操作集合对象。 二、使用OGNL表达式 OGNL要结合struts标签来使用。由于比较灵活,也容易把人给弄晕,尤其是“%”、“#”、“$”这三个符号的使用....
log4j配置解释 2022-03-01 配置Log4j(很详细) 收藏 来自: http://www.blogjava.net/zJun/archive/2006/06/28/55511.html Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。 配置文件 Log4J配置文件的基本格式如下: #配置根Logger log4j.rootLogger = [ level ] , appenderName1 , appenderName2 , … #配置日志信息输出目的地Appender log4j.appender.appenderName = fully.qualified.name.of.appender.class log4j.appender.appenderName.option1 = value1 … log4j.appender.appenderName.optionN = valueN #配置日志信息的格式(布局) log4j.appender.....
fn标签用法 2022-03-01 fn还有很丰富的用法: 函数名 函数说明 使用举例 fn:contains 判断字符串是否包含另外一个字符串 <c:if test="${fn:contains(name, searchString)}"> fn:containsIgnoreCase 判断字符串是否包含另外一个字符串(大小写无关) <c:if test="${fn:containsIgnoreCase(name, searchString)}"> fn:endsWith 判断字符串是否以另外字符串结束 <c:if test="${fn:endsWith(filename, ".txt")}"> fn:escapeXml 把一些字符转成XML表示,例如<字符应该转为< ${fn:escapeXml(param:info)} fn:indexOf 子字符串在母字符串中出现的位置 ${fn:indexOf(name, "-")} fn:join 将数组中的数据联合成一个新字符串,并使用指定字符格开 ${fn:join(array, ";")} fn:length 获取字符串的长....