给网站博客添加雪花特效
snow-min.gif使用方法下载相关文件,将snow.js(或压缩后的snow.min.js)上传至网站根目录;编辑主题的页脚文件footer.php,将如下代码添加到
snow-min.gif使用方法下载相关文件,将snow.js(或压缩后的snow.min.js)上传至网站根目录;编辑主题的页脚文件footer.php,将如下代码添加到
标签前;其中:src="snow.js"引号内为引用的JS文件路径
本篇文章稍微偏原理且底层,有一定难度和且比较晦涩。本篇文章主要是从广度上概括一下,具体的更细粒度的,会在后续的文章中,结合具体的Demo实例分析。一.NET框架概述1.作用:提供了基于.NET框架开发的基础平台和模板,为.NET开发的基架;2.基本构成:可支持语言,CLS,模板框架,基本模板,基本操作,基本类库,公共需要运行时,CTS和CLS,OS等;(1)可支持语言:.NET框架可支持vb,c++,c#,F#,js等语言开发;(2)CLS:通用语言规范,使多种语言开发成为了可能,可参考https://docs.microsoft.com/en-us/dotnet/standard/language-independence-and-language-independent-components(3)模板框架:B/S模式开发,C/S模式开发,App开发,接口开发B/S:WebForm和MVC,.NETCore;主要是PC运用程序;C/S:Winform和WPF,主要是桌面运用程
作为一个资深的老php程序员,我感觉我很有资格说这个话,不管你学的是Java、c++、PHP、安卓、IOS。只要你是程序员,你就绕不开这个梗。每一个程序员都有的一个病:项目做到哪里了?第一周:项目已完成10%(实际完成0%)第二周:项目已完成30%(实际完成5%)第三周:项目已完成50%(实际完成10%)第四周:项目已完成90%(实际完成15%)第五周:项目已完成100%(实际完成100%)老板:这里怎么有个Bug(异常)?快,赶紧解决了程序员:这是最后一个bug了,修了就好!先猥琐处理了,到时候想个好方案重构…(“到时候””一般是”到天荒地老的时候”的缩写…)老婆:老公,你怎么还不回家(睡觉)啊?程序员:嗯,马上回去(睡觉),写Bug呢。一不小心程序员就夸了个海口老板:这个项目能做吗,大概要多久?开发人员:做是能做,但需要10天才能做完老板:你5天可以做完么?开发人员:可以!程序员的理由永远都是最多的对,我已经测试了!我在读文档。这不是Bug,这是特性
我将从京麦商家开放平台的消息接入、MC系统搭建、消息配置、消息触达、消息监控五个方面来阐述和分享京麦实时消息推送架构在2017年的成长。即时通讯技术学习交流:-即时通讯开发交流群:215891622[推荐]-移动端IM开发推荐文章:《新手入门一篇就够:从零开发移动端IM》(本文同步发布于:http://www.52im.net/thread-1321-1-1.html)2、京东相关技术文章《Netty干货分享:京东京麦的生产级TCP网关技术实践总结》《从零到卓越:京东客服即时通讯系统的技术架构演进历程》3、本文分享者
2018年nb的第一次发新版,新增和更新了一堆组件,推荐更新到这个版本时间:2017-01-10事件:2018年新的开始曲目:StartOfSomethingNew变更:add:caffeine方法缓存by幸福的旁边add:hystrix支持@HystrixCommand和/hystrix.streamadd:hystrix-dashboardHystrix的DashBoardadd:eureka-server服务治理的
作者|章烨明杏仁医生CTO。中老年程序员,关注各种技术和团队管理。引子现在微服务很流行,企业架构微服务化的确能解决不少问题,但是在微服务环境下,服务之间的依赖以及由此造成的开发、测试和集成的问题,一直都是微服务最大的痛点。传统的解决方案是,除了测试、预发布和生产环境,还会部署多套用于开发和集成的环境。这样存在的问题是,只要有一组服务出现问题,就会影响其他使用该环境的团队的日常开发和测试。而且常常出现问题后,需要耗费很多时间定位,结果还常常是因为某个服务的版本没有同步。并且多套环境维护起来也是一个麻烦重重,即使有了容器。这次我们一起来探索一下API模拟工具以及基于契约的测试,也许会是解决这个问题的一个方案。WireMock介绍我们开发应用也好、服务也好,常常需要依赖后端或者服务的接口。例如开发移动应用App,可能后端接口还在开发中,这时App的开发因为无法调用后端,很不方便。又或者程序会依赖第三方的接口,例如微信支付,在本地开发时不能直接调用。这时我们就会需要一个工具来模拟这些服务,WireMock就是
OVS的整体架构:Architectureovs-vswitchd的整体架构如下:_|+-------------------+||ovs-vswitchd|<-->ovsdb-server|+-------------------+||ofproto|<-->OpenFlowcontrollers|+--------+-+--------+_||netdev||ofproto-||userspace|+--------+|dpif||||netdev|+--------+|||provider||dpif|||+---||---++--------+|||||dpif||implementationof||||provider||ofprotoprovider|_||
MySQL有一个很有意思的索引类型,叫做前缀索引,它可以给某个文本字段的前面部分单独做索引,从而降低索引的大小。其实,Oracle也有类似的实现,对于文本,它可以通过substr的函数索引,实现同样甚至更多的功能。另外,经过探索,我们发现,原来数字和时间字段,在Oracle也可以实现类似的功能。MySQL的前缀索引MySQL的前缀索引指的是对指定的栏位的前面几位建立的索引。AltertableTable_Nameaddkey(column_name(prefix_len));或者Createindexindex_nameonTable_Name(column_name(prefix_len));建立前缀索引后,可以直接当做普通索引进行过滤。Select..fromtable_namewherecolumn_name=’…’;前缀索引的最大的好处是降低索引的大小。另外,由于InnoDB单列索引长度不能超过767bytes,如果是text或者blob字段,直接建立索引可能会报错,而前缀索引可以绕过这
前言最近一段时间一直再看mysqlbinlog相关的内容,也整理了几篇相关的文章,对mysql的事件以及通讯协议在理论上有了一个大概的了解,但是缺少实战;本文的目的就是从实战出发,了解binlog解析的整个过程。解析思路把binlog的解析过程大致分为以下几个步骤:1.服务器启动首先获取上一次解析成功的位置(实例中存储在本地文件中);2.和mysql服务器建立连接;3.接受mysql发送来的binlog事件;4.对不同的binlog事件进行解析;5.将数据进行存储(实例中仅在日志中打印);6.存储成功后,定时记录BinalyLog位置。关于binlog相关的配置可以参考系列文章,里面有详解的介绍,下面对步骤进行详细的介绍;1.服务器启动首先获取上一次解析成功的位置(实例中存储在本地文件中)binlog的位置信息存储在文件namePosition,有更新也同样更新到namePosition中,部分代码如下:publicclassNamePositionStore{
前言有朋友在后台留言。希望我能说说我在数据库表设计时踩过的坑。那么,我们今天就来聊聊我在数据库表设计时踩过的坑,以及现在对数据库表设计的一点建议。希望能够帮助到你。utf8的锅场景:之前在给客户做微商城时,需要保存微信的授权信息,此时就有一个nickname字段,在设计数据表时,潜意识的将表的存储格式设置为utf8,生产上线一段时间后偶尔出现保存异常。经分析,出现异常的原因是:用户nickname中有email表情符号。utf8格式的数据表存储不下导致。经验提示:在设计数据表时,一定要注意该字段存储的内容,如果允许设置表情,则一定不能使用utf8,而是使用utf8mb4。选择合适的类型在数据库表设计时,字段的类型还真不好设计,这里简单说说:保存手机号的字段,用varchar(20)就已经足够了,就不应该设计为varchar(100),设置为varchar(100)只会消耗更多的存储以及内存开销,得不偿失啊!保存Boolean类型,使用tinyint就够了,而不需要设计为int,甚至bigint。数据类型设计的过大,就会造成没
前言虽然比赛过程中没做出来,结束后仔细研究了一下。感觉很有意思,分享给大家。再次体会到重要的不是结果,而是研究的过程。题目简介34c3CTFweb中的extract0r。题中的目是一个安全解压服务,用户输入zip的url地址,程序对url进行合法性校验后会下载该zip,然后为用户创建一个目录,把文件解压进去0×00任意文件读取经过测试,发现输入的域名中不能含有数字,并且压缩文件中不能含有目录,解压后的目录不解析php。通过上传一个含有符号链接文件的压缩包,可以达到任意文件读取的效果。ln-s../index.phptest_link7zaa-t7z-rtest.7ztest上传后访问test_link得到源代码index.php(html部分已删去)
ClouderaManager分为两个部分:CDH和CM。CDH是ClouderaDistributionHadoop的简称,顾名思义,就是cloudera公司发布的Hadoop版本,封装了ApacheHadoop,提供Hadoop所有的服务,包括HDFS,YARN,MapReduce以及各种相关的components:HBase,Hive,ZooKeeper,Kafka等。CM是clouderamanager的简称,是CDH的管理平台,主要包括CMserver,CMagent。通过CM可以对CDH进行配置,监测,报警,log查看,动态添加删除各种服务等。一、准备工作环境JDK:1.8centos:7.3操作系统:CentOS6JDK版本:1.7.0_80所需安装包及版本说明:由于我们的操作系统为CentOS7,需要下载以下文件:cloudera-manager-centos7-cm5.12.1_x86_64.tar.gzCDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcelCDH-5.
概述对于一般的数据库系统审计可能不太会被重视,但是对于金融系统就不一样的。金融系统对审计要求会很高,除了了记录数据库各种操作记录还可能会需要开发报表来呈现这些行为数据。使用SQLServerAudit功能,您可以对服务器级别和数据库级别事件组以及单个事件进行审核。“审核”SQLServer的实例或SQLServer数据库涉及到跟踪和记录系统中发生的事件,您可以记录每个实例的服务器审核操作组,或记录每个数据库的数据库审核操作组或数据库审核操作。在每次遇到可审核操作时,都将发生审核事件。SQLServer审核包括零个或多个审核操作项目。这些审核操作项目可以是一组操作,例如Server_Object_Change_Group,也可以是单个操作,例如对表的SELECT操作。注意:Server_Object_Change_Group包括对任何服务器对象(数据库或端点)的CREATE、ALTER和DROP操作。审核可以有以下类别的操作:服务器级别。这些操作包括服务器操作,例如管理更改以及登录
接触过vue的童鞋都知道,组件的模板一般都是在template选项内定义的,如1Vue.component('child-component',{23template:'
{{message}}
1011{{msg}}
1213前言上一期从零构建了一个基础版的vue-cli项目,主要介绍了loader的安装和一些配置项的用法,还给项目添加了less预处理器上一期的链接-从搭建vue-脚手架到掌握webpack配置(一.基础配置)本期开始引入常用的插件实现开发环境和生成环境会用到的一些功能,比如热插拔、css样式提取、公共模块提、取代码压缩等等区分开发与生产环境很多插件功能是在开发环境(development)用到的但是在s生产环境(production)用不到的,反之亦然。比如-development用到的热插拔调试生成html模板-production用到的生成html模板css样式提取公共模块提取JavaScript压缩......引用官方的说法,区分生产和开发环境有两种方法,如下图
本文为饥人谷讲师方方原创文章,首发于前端学习指南。大名鼎鼎的闭包!面试必问。请用自己的话简述什么是「闭包」。「闭包」的作用是什么。首先来简述什么是闭包假设上面三行代码在一个立即执行函数中(为简明起见,我就不写立即执行函数了,影响读者理解)。评论里没看完就说我写得有问题的,请看清楚哦:上面三行代码在一个立即执行函数中。三行代码中,有一个局部变量local,有一个函数foo,foo里面可以访问到local变量。好了这就是一个闭包:「函数」和「函数内部能访问到的变量」(也叫环境)的总和,就是一个闭包。就这么简单。有的同学就疑惑了,闭包这么简单么?「我听说闭包是需要函数套函数,然后return一个函数的呀!」比如这样:functionfoo(){varlocal=1functionbar(){local++returnlocal}returnbar}varfunc=foo()func()这里面确实有闭包,local变量和bar函数就组成了一个闭包(Closu
过渡效果在交互体验中的重要性不言而喻。以往我们使用js或Jquery添加或移除元素的类(class),搭配CSS中定义好的样式,再引用一些javascript库之后,可以做作出非常复杂,惊艳的动态效果,不过这套方法还是太繁琐。vue.js内置了一套过渡系统,可以在元素从DOM中插入或移除时自动应用过渡效果。vue会在是党的时机触发css过渡或者动画,你也可以提供相应的javascript钩子函数在过渡过程中执行自定义的DOM操作。每个过渡效果,都需要在目标元素上使用transition特性。
MZUI是由ZUI前端HTML5框架作者catouse的最新作品。MZUI专为移动端设计,基于Flex的UI框架。用来开发移动Web应用和微信应用非常方便。MZUI1.0.1已发布:增加了对jQuery的支持,将ZeptoJS从标准版中分离,现在可以自行搭配jQuery最新版本使用。ZeptoJS版本将不再维护,推荐使用jQuery;优化了界面所使用的字体,现在字体集合为'HelveticaNeue',Helvetica,'MicrosoftYahei','PingFangSC','HiraginoSansGB','WenQuanYiMicroHei',sans-serif;;优化了在触摸屏上的点击事件,现在使用touchstart来代替tap;
简述:本来是一个iOS原生程序员,但是公司最近需要混合开用的是mui框架,说实话这个框架流畅性很开,但是也有一些问题,不过对于大多数的App都能适用,接下来把用的东西整理出来分享给大家向大家遇见另一个非常火的混合开发框架ionic但是必须会angularjs。MUI绑定事件与解除绑定事件mui的H5+基于的是原生js写的,jquery也可以进行混用,但是最近开发发现一个问题,当用jquery给循环的div绑定点击事件发现只有边缘文字可以点击,原生开发人员都知道列表的点击事件都是整个cell的,这样mui提供的绑定事件解决了。绑定点击事件#news_btns是一个有许多.news_btn标签的元素,具体用法可以参照mui('#news_btns').on('tap','.news_btn',function(){console.log("打开预加载页面");});mui('#news_btns').on('tap','.off_btn',function(){alert("解绑成功");解除绑定
最近在策划一款狗年的H5,由于微信规定禁止诱导分享,但是又想要更好的传播效果,怎么办呢?最终选择了曲线救国,让最终的页面转换为图片带有H5的二维码,听上去很熟的套路吧,很多友商已经在用了,各家实现的方式也不一样,有用PHP实现的,也有用Canvas转image实现的,这里我们采用的是第二种。第二种方法将压力全部转移到前端,Canvas中绘制图片我们会用到img.onload=function(){};方法,但是多个图片绘制的时候会有层级问题,如果先绘制的图片过大就会把后面绘制的图片遮盖住,是我们不想看到的结果,而img.onload这种方法还有一个问题是谁的图片先加载完就先绘制谁,所以绘制顺序不好把控,听上去好心水的感觉,不过没关系,我们可以稍微调整下就可以让图片按照我们想要的顺序绘制,代码如下://最后绘制的图片在最外面resultBg.src='../dogs/media/result.jpg';resultBg.onload=function(){ctx.drawImage(resultBg,0,0,w