手机借款那家好

【贝亲产品介绍】_贝亲原创文章_pigeon晒单_第2页_什么值得买
当前位置:
用户名/邮箱
两周内免登录忘记密码?- <a href='http:/0. 预览 http://huanglii.github.io/TianDiTu/index.html 在GitHub上查看 1. index.html
&!DOCTYPE html&
&meta http-equiv="Content-Type" content="text/ charset=utf-8"&
&meta http-equiv="X-UA-Compatible" content="IE=7,IE=9"&
&meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"&
&title&ArcGIS API for JavaScript 加载天地图WMTS图层&/title&
&link rel="stylesheet" href="css/style.css"&
&link rel="stylesheet" href="http://localhost/arcgis_js_api/library/3.18/3.18/esri/css/esri.css"&
&div id="map"&&/div&
&select id="selectBasemap"&
&option value="vec"&矢量&/option&
&option value="img"&影像&/option&
&option value="ter"&地形&/option&
&select id="selectCood"&
&option value="c"&地理坐标系&/option&
&option value="w"&投影坐标系&/option&
var selfUrl = document.location.href.substring(0, document.location.href.l...
&写在前面 上一篇文章写了mybatis的基本原理和配置文件的基本使用,这一篇写mybatis的使用,主要包括与sping集成、动态sql、还有mapper的xml文件一下复杂配置等。值得注意的是,导图17和18中讲解resultMap子元素的时候可能讲得不是很清楚,应该需要大量的代码来讲解使用方法,思维导图恰恰不适合这种表现方法。所以需要读者根据给出的链接去读一些好的博客文章,这样才能更好理解。毕竟是技术性的东西,实践出真理。 &mybatis简介 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。 ![11、mybatis的优缺点.png](http://upload-images.jianshu.io/upload_images/fef702c790c2b11.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) ![12、与spring整合.png](http://upload-images.jianshu.io/upload_images/d791bc0c2ca011d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) ![13、mapper的xml文件(一)...
openresty(nginx+lua)学习小记
本文要讲解的是关于JMonkeyEngine游戏引擎中如何使用AppState来实现游戏场景的管理和切换.
趁着六月美景正好,OSC源创会带着自由、开放、分享的开源精神,也带着满满的干货主题,邀请杭州的各位来约。
分布式调度在互联网企业中占据着十分重要的作用,尤其是电子商务领域,由于存在数据量大、高并发的特点,对数据处理的要求较高,既要保证高效性,也要保证准确性和安全性,相对比较耗时的业务逻辑往往会从中剥离开来进行异步处理。 开源中国任务调度系统/框架类别下有非常多的开源项目,其中不乏出自国内外知名企业的优秀大作。与此同时,还有新的同类项目在不断增加。接下来,推荐几款优秀和极具潜力的国产开源分布式任务调度系统,希望能对大家有所帮助。 1、opencron opencron 是一个功能完善且通用的开源定时任务调度系统,拥有先进可靠的自动化任务管理调度功能,提供可操作的 web 图形化管理满足多种场景下各种复杂的定时任务调度,同时集成了 linux 实时监控、webssh 等功能特性。 2、LTS LTS,light-task-scheduler,是一款分布式任务调度框架, 支持实时任务、定时任务和 Cron 任务。有较好的伸缩性和扩展性,提供对 Spring 的支持(包括 Xml 和注解),提供业务日志记录器。支持节点监控、任务执行监、JVM 监控,支持动态提交、更改、停止任务。 3、XXL-JOB XXL-JOB 是一个轻量级分布式任务调度框架,支持通过 Web 页面对任务进行 CRUD 操作,支持动态修改任务状...
一直想写个爬虫,于是就用PHP写了一个,众所周知PHP并不支持多线程,所以爬行效率很低,同时运行10个进程,内存和CPU占用率很高,开大概10个进程爬行,对爬行时间还进行优化,但我的mac pro还是差不多就down掉了。 于是开始采用PHP7结合pthreads多线程工具,经测试,稳定性、效率、内存和cpu的占用各方面都很满意。 下边就介绍PHP7的多线程环境搭建。 安装PHP7 以下所有命令在root用户下执行 下载PHP7,目前最新版本是7.0.3,根据情况自行选择版本,PHP5.4以后的各版本也是支持的。 ``` wget http://ar2.php.net/get/php-7.0.3.tar.gz/from/this/mirror -O php.tar.gz tar xvfz php.tar.gz cd php ``` 编译安装。 选项自行选择,可以让PHP多版本共存。但maintainer-zts是必须的,如果只做爬虫,除了curl,其它扩展基本不用安装。遇到无法安装的自行查找解决,例如我安装的时候遇到iconv没有找到,那直接就without了。 ``` ./configure --prefix=/usr/local/php7 --without-iconv --enable-maintainer-zts --with-curl make make install ``` 安装完成 然后开始安装pthreads。用pecl安装是超级简单的。 ``` cd /usr/local/php7/bin ./pecl install pthreads ``` 安装完成 配...
在开发neo4j的过程中,经常会有同学问如何向neo4j中导入大量的历史数据,而这些数据一般都会存在于关系型数据库中,现在本人就根据自己的导入经历,把导入的过程和一些挖过的坑分享给大家,以便后面的同学少走弯路,废话不多说,直接上干货。 1、batch-import原始项目地址:/jexp/batch-import
这个工具是neo4j的作者之一Michael Hunger所编写,是在neo4j自带批量导入工具基础之上做的进一步优化,但是它在导入.gz压缩文件时,会出现关系无法导入的情况,所以如果要使用.gz压缩包进行导入,请使用我修改过的版本:/mo9527/batch-import 2、环境准备
jdk:7以上
内存:8G以上,导入数据多的话会非常消耗内存,我自己导入的是将近1.5亿节点,3亿关系,用的是32G内存 3、导入步骤
a)从github上clone下代码,并使用maven进行打包,打完包后的jar文件,与项目本身的依赖jar一起放到lib文件夹下,batch.properties文件和执行导入的脚本放在lib同级目录下,最后的目录结构如下图:
ps:file文件夹是我自己将要导入的csv文件和.gz压缩包。
b)组装csv文件
说起这一步,可能需要你们...
由于一些历史原因,php中并没有内建的日志接口,故长期以来也没一个功能完备并且应用广泛的日志库。在我的工作生涯中,如果系统需要记录一些应用日志的话,基本上就是封装一个日志类,然后把一些要记录的字段写入到磁盘文件。 这样就难免要一遍一遍的造轮子,并且在没有一个规范的情况下,记录下来的日志也是不方便分析的。但是希望读完本文后希望你们可以放弃自己造这种日志类的轮子了,因为几乎你不可能造得比我们今天要介绍的主角:monolog更圆。 monolog是一个为5.3以上版本php开发的日志库,但是需要注意的是现在主干版本只支持php 7以上版本,如果你的服务器环境还是php 5的话,可以使用monolog的1.x版本。 值得一提的是monolog是一个符合psr-3规范的日志类库,并且符合psr-4加载规范。如果有对psr规范不太了解的同学可以参看如下链接:http://www.php-fig.org/psr/,我们在这里就不具体介绍这些规范了,反正知道monolog是复合当前最新行业规范的日志库就够了。 如果想要在你的代码中引入monolog的话只需要执行: composer require monolog/monolog mongolog中有几个很重要的概念: 第一个:handler 日志管理器 存放handler的数据结构是一个“栈”,一个日志实例可以...
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。【百度百科】 0. 默认风格
首先看看Sublime Text 3的默认风格,自带的主题也是不错的。 1. 步骤 1.1 安装Package Control
Package Control是Sublime Text包管理器。它包含一个可用于安装的2500多个包的列表,用户可以自己添加任何GitHub 或BitBucket存储库。
packagecontrol.io/installation#st3
最简单的安装方法是通过Sublime Text控制台安装。通过快捷方式
View -& Show Console
菜单打开控制台。打开后,将上图红框中的Python代码粘贴到控制台中,回车即可安装。安装成功后可在
Preferences
菜单下看到
Package Control
。 注意你的Sublime Text版本。 1.2 安装主题
通过快捷方式
ctrl+shift+p
打开控制台,输入
因为有使用到storm-kafka,所以例子会采用KafkaSpout
FilterAggregationBuilder:是elasticsearch 中过滤后,聚合一个神奇工具,官网例子: POST /sales/_search?size=0
"aggs" : {
"t_shirts" : {
"filter" : { "term": { "type": "t-shirt" } },
"aggs" : {
"avg_price" : { "avg" : { "field" : "price" } }
} 显示 类型 t-shirt 的平均价格,先根据类型过滤,然后在进行聚合计算 在java api 中使用的例子:其中某些值需要使用者,修改, AggregationBuilder aggregation= AggregationBuilders.terms("customer").field("province.raw");
//新增客户
BoolQueryBuilder addCustomer=QueryBuilders.boolQuery();
addCustomer.must(QueryBuilders.rangeQuery("start_time").from(System.currentTimeMillis()-(10*1000 * 60 * 60 * 24)).to(
Instant.now().toEpochMilli()));
FilterAggregationBuilder addAggregationBuilder= AggregationBuilders.filter("add",
addCustomer).subAggregation(aggregation);
//新增签约
BoolQueryBuilder addSignBuilder=QueryBuilders.boolQuery();
addSignBuilder.must(Quer...
往昔 最初团队里使用Angularjs进行开发,刚开始还好,到了项目后期越发感觉Angularjs太重了,以至于后来重构项目时,毅然放弃Angularjs,投入了Vue的怀抱。除了组建团队时,是我搭建了基于Angularjs的前端开发框架,之后都是由前端小组开发。前段时间,由于公司层面的原因,整个团队解散,不得已我又要写前端程序了。 虽然前期Angularjs的开发框架是我搭建的,但对前端来说我也是半路出家了。那个时候也不知道模块开发,更分不清commonJS、AMD、CMD,知道有个requirejs,就研究requirejs,研究了几天突然冒出一个叫grunt的构建工具,于是又研究grunt,同样研究了几天又窜出来个叫gulp的东西,丢了grunt又研究起gulp来,这真有点像小时候听的猴子摘桃的故事,看见好的就丢掉了之前的,最后什么都没得到。gulp搞的差不多了,不知又从哪里看到了一个叫webpack的东西,我的天哪,当时的感觉就是前端的东西太多东西了,那个时候是2015年下。 当下 再一次写前端程序已经到了2017年了,除了维护之前Angularjs的代码,还有新的项目,我选择了Vue 2.0。 学习一门新的技术是需要花费不少代价的,时间不说,动力也是不可或缺的。时间我有,动力也足,那就是半个月做完一个小的管理后台...
分布式多副本一致性在现实应用中是非常重要的,它既可以保证数据节点无单点(HA)时还能保证数据节点的一致性。此类协议比较著名的有paxos、raft和zab(zookeeper实现)等。其中,paxos允许多点写,而raft则是会先选举出一个leader,所有的写都会通过leader完成。
本文会先介绍paxos思想,以后还会介绍raft。关于paxos的文章已经很多了,而且讲解的风格和方式不尽相同。我发现,如果单纯从纯理论角度来分析paxos,虽然在论证上会严谨一些,但是也导致即使你写了很大的篇幅,最终还是达不到想要的效果,最终还是:晦涩难懂。这其实也是paxos和raft的另一个区别,相对而言,raft从理论上就比paxos简单易懂的多。
本文不准备从理论角度剖析paxos算法原理,我会尝试使用图形(伪代码)的方式给让大家对paxos有一个宏观的把握,同时,我在阅读了很多paxos文章之后,发现一篇以现实场景为角度讲解paxos的文章,我将其稍微修改了一下引用在这里。我相信,通过这两种角度,你的脑海中应该觉得paxos不再神秘。 二、paxos概念
首先来必须看一下Lamport对paxos算法的文字版描述。 阶段一: 1、Proposer选择一个提案编号为Mn,然后向Accep...
2个人,35天撸了1个业务监控系统,翻出来,大致讲讲原理,原理很简单,细节很重要,相信通过这个PPT,大家也能明白如何自己动手写一个业务API监控系统。 -----------
最近在工作中负责对接API,对方要求对业务数据进行AES/CBC/PKCS5Padding加密。刚看到这个加密要求的时候一脸懵逼,于是稀里糊涂地按照常规做法实现了一个加密Helper类。谢天谢地,经过这一番折腾,代码终于如愿调通,可以安心喝杯咖啡压压惊了。最后附上完整的demo代码。
## 背景 这两天开发工作中,需要运用 Base64来进行数据的编解码。使用 Cryptopp库的 base64(网络上其他基于Boost 的 BIO)都会出现解码出来的字节数只是其中很少的一部分,具体编码结果如下。 ## 原因 ### 1/ 问题的 Base64串 有兴趣的同学可以试试,如下是出现问题的 Base64字符串: ``` nh5os9KdYYloLDEAAjknMc1mobYofaepkpO8VmQOLmProkitBJHeH8RN0yloaXZ6fU8DxSA6kKL1h9sAqYjd6y5oEZeUfrII2t9Wz0zZyz96QSbpjwJGXFbLWEjwolwyi+fuYnCzpWPPOspEXieuUnEtx2y7GWquGMrf7Vee/GR/ZJOqUNJzK3g59TcjfzhhEaUsm7M65bHQ+TBDC7xDB25gmeao4K/3 ``` ### 2/ 基于 Golang 解码 解码后有168个字节,属于正常的字符串结果。 ``` 158 30 104 179 210 157 97 137 104 44 49 0 2 57 39 49 205 102 161 182 40 125 167 169 146 147 188 86 100 14 46 99 235 162 72 173 4 145 222 31 196 77 211 41 104 105 118 122 125 79 3 197 32 58 144 162 245 135 219 0 169 136 221 235 46 104 17 151 148 126 178 8 218 223 86 207 76 217 203 63 122 65 38 233 143 2 70 92 86 203 88 72 240 162 92 50 139 231 238 98 112 179 165 99 207 58 202 68 94 39 174 82 113 45 199 108 187 25 106 174 24 2...
用过python、php等动态类型语言的人肯定对动态数据类型不陌生。对于定义时不确定、运行时才确定的数据类型,使用动态类型是非常方便的。c++是一门不折不扣的静态类型语言,那么是否就无缘享受“动态”类型的好处了呢?不尽然。folly为我们提供了dynamic类型,从一定程度上实现了c++中的“动态”数据类型,为什么说是“一定程度上”呢,因为dynamic类型只支持c++中的基本类型(部分)和复合类型(array和map),不支持自定义类型。你可能会把dynamic和boost::any或std::any(将在c++17中支持)进行对比,但是其实它们没有可比性,首先是它们的实现原理不同。boost::any虽然可以盛放任何类型,但是它在实现上是用继承的方式进行了类型擦除,因此在还原类型时,需要程序员自己显示的提供类型信息,这也是boost::any的缺点之一。而dynamic虽然代表的类型有限,但是dynamic本身可以记住类型,便于赋值和还原。因此,dynamic不是boost::any的替代品,更像是一种补充,如果非要类比的话,dynamic和boost::variant更为相似。 二、类型支持
如前文所述,dynamic可以盛放的类型是有限的,它可以盛放部分基本类型、字符串类型、数组类型和OBJECT(本质为m...
欢迎使用SuperTextView,这篇文档将会向你展示如何使用这个控件来提高你构建项目的效率。
PHP 是一种通用开源脚本语言。语法吸收了 C 语言、Java 和 Perl 的特点,利于学习,使用广泛,主要适用于 Web 开发领域,是大多数后端开发者的首选。PHP 作为最受欢迎的编程语言之一,经常出现在各大语言之战中,但到底谁是最好的编程语言呢?这不是文章要讨论的内容:) 本文从众多 PHP 开源库中选出了几款实用有趣的工具,希望对你的学习工作有帮助。 1、PHP 日志工具 Monolog Monolog 是一种支持 PHP 5.3+ 以上的日志记录工具。并为 Symfony2 默认支持。 示例代码: &?php
use Monolog\L
use Monolog\Handler\StreamH
// create a log channel
$log = new Logger('name');
$log-&pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING));
// add records to the log
$log-&addWarning('Foo');
$log-&addError('Bar'); 2、Excel 操作库 PHPExcel PHPExcel 是一个用来读写 Excel 2007 (OpenXML) 文件的 PHP 库。 示例代码: include 'PHPExcel/IOFactory.php';
$inputFileName = './sampleData/example1.xls';
echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory';
$objPHPExcel = PHPExcel_IO...
想必大家对照片这个东西再熟悉不过,但我不知道在座的各位是否知道相片的EXIF信息。简单得说它就是每一张图片的"指纹信息",然后这边写了个小工具,或许社工的时候可以用到。
JAVA学习路线图,特此声明; 仅希望对热爱JAVA学习有所帮助 如若转载或者使用本图,请注明出处,避免后期出现版权问题,谢谢!!!
JAVA学习路线图 此乃是java攻城狮的学习路线图,由简到繁,由易到难,一步步的学习,最后成为 JAVA攻城狮。希望对大家的学习有所帮助 阶段1
1:学习HTML
3:Javascript
6:Bootstrap
7:JAVAse基础
8:mysql数据库
9:Powerdesigner
11:JAVAWEB
阶段三 12:oracle
13:struts2
14:Hibernate
15:Spring 阶段四 16:Maven
17:SpringMVC
18:MyBatis Java学习交流QQ群:
禁止闲聊,非喜勿进!
  从事Web前端开发的人都与CSS打交道很多,有的人也许不知道CSS是怎么去工作的,写出来的CSS浏览器是怎么样去解析的呢?当这个成为我们提高CSS水平的一个瓶颈时,是否应该多了解一下呢?   一、浏览器的发展与CSS   网页浏览器主要通过 HTTP 协议连接网页服务器而取得网页, HTTP 容许网页浏览器送交资料到网页服务器并且获取网页。目前最常用的 HTTP 是 HTTP/1.1,这个协议在 RFC2616 中被完整定义。HTTP/1.1 有其一套 Internet Explorer 并不完全支援的标准,然而许多其他当代的网页浏览器则完全支援这些标准。网页的位置以 URL(统一资源定位符)指示,此乃网页的地址;以 http: 开首的便是通过 HTTP协议登陆。很多浏览器同时支援其他类型的 URL 及协议,例如 ftp: 是 FTP(档案传送协议)、gopher: 是 Gopher 及 https: 是 HTTPS(以SSL加密的HTTP)。   早期的网页浏览器只支援简易版本的HTML。专属软件的浏览器的迅速发展导致非标准的 HTML 代码的产生。但随着 HTML 的成长,为了满足设计师的要求,HTML 获得了很多显示功能。随着这些功能的增加外来定义样式的语言越来越没有意义了。   1994年哈坤·利提出了 CSS 的最初建议。伯特·波斯(BertBos)当时正...
不一样的姿势打开所谓的virtual dom && diff
本文介绍了AQS框架,并基于AQS实现了2个工具类。并简要分析了JDK中的同步类。最后在总结...
工作当中遇到的事情比较杂,因此涉及的知识点也很多。这里暂且记录一下,今天遇到的知识点,纯干货~ 关于文件的解压和压缩 如果你的系统不支持tar -z命令 如果是古老的Unix系统,可能并不认识tar -z命令,因此如果你想要压缩或者解压tar.gz的文件,就需要使用gzip或者gunzip以及tar命令了。 关于tar.gz可以这么理解,tar结尾的压缩包,其实只负责把文件打包,并没有进行压缩;而gz结尾的包,则是进行压缩操作。 因此,tar.gz的文件可以理解为,先进行打包,再进行压缩。 那么,压缩的命令就可以这样写: tar -cvf abc.tar abc
gzip -c abc.tar & abc.tar.gz 最终就会得出一个abc.tar.gz的文件。同理如果想要进行解压,可以这样: gunzip abc.tar.gz
=&该命令会首先得出一个abc.tar的文件
tar -xvf abc.tar
=&该命令完成解压的步骤 执行完这两个命令,当前文件夹就会出现一个abc的文件夹了。 如果你的系统支持tar -z命令 如果你的系统级别高一点,就不用这么费事了,tar命令直接可以对gz进行操作: tar -zxvf 压缩文件名.tar.gz
=&这个命令可以直接完成对压缩文件的解压
tar -zcvf 压缩文件名.tar.gz 被压缩文件名
=&这个命令可以直接完成对tar.gz的压缩 文件句柄占用导致...
手把手教你魔改微信小游戏
前端工程师是做什么的? 前端工程师是互联网时代软件产品研发中不可缺少的一种专业研发角色。从狭义上讲,前端工程师使用 HTML、CSS、JavaScript 等专业技能和工具将产品UI设计稿实现成网站产品,涵盖用户PC端、移动端网页,处理视觉和交互问题。从广义上来讲,所有用户终端产品与视觉和交互有关的部分,都是前端工程师的专业领域。 2005年的时候大多数网页长这样: 现在的网页一般是这样的: 前端工程师的发展之路和前景是怎么样的? 前端是一个相对比较新的行业,互联网发展早期(1995年~2005年)是没有专业的前端工程师的。随着互联网的发展,大约从2005年开始,正式的前端工程师角色被行业认可,到了2010年,互联网开始全面进入移动时代,前端工程师的地位越来越重要,前端领域的技术发展也越来越快,各种新的思想、设计模式、工具和平台都快速发展,对前端工程师的技能要求也越来越高。 有一些数据可以说明前端行业的发展迅速。 在2010年之后最流行的新编程语言中有相当部分和前端有关,比如 Dart、Clojure、CoffeeScript 和 TypeScript。 作为前端最重要的编程语言 JavaScript,在最近几年里不论是代码量还是关注数都稳居 Github 平台热门编程语言榜。 行业对前端需求...
私有云是一个由许多硬件和软件组件组成的复杂系统。对于任何支持的企业组织,操作流程的自动化和文档记录、规划变更以及跟踪应用的更新都是强制性的要求。在可维护性,可靠性,效率和安全性方面,DevOps为私有云在改进操作流程方面发挥着重要的作用。在这篇文章中,我们将在几个类别中讨论15个针对私有云的DevOps工具。
我们先下载安装anyconnet软件,下载地址:链接: /s/1sljRHff 密码: exfs
然后选择图中的选项选择安装
在开始-程序里面找到cisco打开
点开设置,勾选第一个选项,然后关闭对话框,重新连接
然后在弹窗中选择图中的选项
输入用户名和密码,连接
连接成功。
连接成功之后,我们就可以正常打开国外网站使用了
一直很喜欢IT技术和互联网,是尚学堂培训让我走上了IT道路。我之前其实是土木工程专业的,毕业后一直在做土木工程,和互联网技术一点也挂不上边,但是,我勇敢的选择了IT。
记得刚毕业的时候,我从土木工程专业毕业,先是去工地实习了半年,可以说感受了一下什么才是生活。当时每天的工作很轻松,唯一一点工资么,在省吃俭用的情况下自己能过的下去,但是,一个年轻人,如果这样安逸的过下去,将来的生活怎样就可想而知了,太不甘心了。我想要过更好的生活,因此最终我选择了互联网,也是对自己人生的一次挑战。
说起对尚学堂的评价,我感觉培训质量非常好。还记得第一天来到北京,来到学校尚学堂是报道的时候,第二天开始正式上课。第一天的感触很特别,说实话因为基础差,听到Java、环境配置、安装软件、方法、变量、类这些我从来未接触的事物,是有点难度的,但看到好多学生听的似乎都很简单,他们有好多是计算机专业的,这样看来也是比较正常。但非常庆幸让我欣慰的是,老师真的是太用心了,非常耐心的给我们基础差的学员讲解,让我们跟了上来。尚学堂做的真是良心事业,我感觉要比大学的老师强太多了。另外,在尚学堂学习起来也是很...
1.在开始菜单的搜索框中输入“regedit”,按回车; 2. 注册表编辑将会触发UAC而弹出提示窗口,点击确认继续; 3.找到如下注册表分支:
HKEY_LOCAL_MACHINE
– software
– – Microsoft
– – – Windows NT
– – – – Currentversion
– – – – – Windows 4. 在右侧窗格中可以看到名为“GDIProcessHandleQuota”与“USERProcessHandleQuota”的注册表项; 5. GDIProcessHandleQuota项设置GDI句柄数量,默认值为2710(16进制)/10000(10进制),该值的允许范围为 256 ~ 16384 ,将其调整为大于默认的10000的值。如果您的系统配置了2G或更多内容,不妨将其设置为允许的最大值 16384(10进制); 6. USERProcessHandleQuota项设置用户句柄数量,默认值同样为2710(16进制)/10000(10进制),该值的允许范围为 200 ~ 18000 ,将其调整为更多的数值。同样地,对于具有2GB或更多物理内存的系统,不妨将用户句柄数直接设置为上限 18000(10进制); 需要强调的是,修改“GDIProcessHandleQuota”与“USERProcessHandleQuota”值时,不要超过其接受的上限,不然,将导致Windows 无法工作或运行不稳定。另一方面,即使您的调整其超过其允许的上限,如果发现修改后Windows出现不稳...
if ($request_uri ~* "([+|(%20)]and[+|(%20)])|([+|(%20)]or[+|(%20)])|([+|(%20)]select[+|(%20)])|([+|(%20)]exec[+|(%20)])|([+|(%20)]union[+|(%20)])") {
return 403;
if ($request_uri ~* "(cost\()|(concat\()") {
return 404;
if ($query_string ~ "(&|%3C).*script.*(&|%3E)") {
return 404;
if ($query_string ~ "GLOBALS(=|[|%[0-9A-Z]{ 0,2})") {
return 404;
if ($query_string ~ "_REQUEST(=|[|%[0-9A-Z]{ 0,2})") {
return 404;
if ($query_string ~ "proc/self/environ") {
return 404;
if ($query_string ~ "mosConfig_[a-zA-Z_]{ 1,21}(=|%3D)") {
return 404;
if ($query_string ~ "base64_(en|de)code(.*)") {
return 404;
if ($http_user_agent ~ "Python-urllib") {
return 404;
if ($query_string ~ "union.*select.*\(")
set $block_sql_injections 1;
if ($query_string ~ "union.*all.*select.*")
{ set $block_sql_injections 1; }
if ($query_string ~ "concat.*\(")
set $block_sql_injections 1; }
if ($block_sql_injections = 1)
return 403; }
if ($query_string ~ "[a-zA-Z0-9_]=http:...
就是不写摘要.
nodejs node npm
否则,连不上hbase服务器
这是本人第一次写博,有不当之处敬请指正 首先感谢config-toolkit 开发者 wangyuxuan 由于分布式项目修改某个值,就需要所有应用中的配置均需要修改, 所以项目需要将配置集中管理,在wangyuxuan大哥的帮助下,顺利完成了config-toolkit与项目集成,本文是个人在集成config-toolkit时的心得 config-toolkit 下载地址:/dangdangdotcom/config-toolkit 在此地址中作者介绍了config-toolkit的作用以及使用 本文在此基础上进行详细集成说明: 开发环境:win7、jdk1.6、spring3.2、tomcat7、zookeeper3.3.6 配置文件类型; *.properties 本人项目中使用config-toolkit特点: 实现配置热更新 (举例; 应用中上传文件的路径需要修改,无需停服务就可以实时更改) 版本控制,支持灰度发布 (举例:多个应用使用不同的配置,可以快速从测试环境的配置更改到正式环境的配置) 一、搭建ConfigWeb环境,用于管理ZK中的配置信息 搭建configweb 下载config-toolkit,将config-web工程进行打成war包,部署到tomcat7下 注:由于config-web使用了鉴权密码,故需要执行以下python程序 [python] view plain copy print ? python -c "print hashlib.sha1('abc').hexdi...
一、安装软件准备 1、Apache(httpd-2.2.19-win64) 2、PHP(php-5.3.6-win32-vc9-x64) 3、MySQL(mysql_5.5.13_winx64) 4、testlink1.9.8 二、安装Apache 1、解压httpd-2.2.19-win64到E:\server\apache-httpd-2.2.19-win64(ps:存放路径可以自行设置) 2、执行httpd -k install 3、修改E:\server\apache-httpd-2.2.19-win64\conf\httpd.conf (1) ServerRoot "E:\server\apache-httpd-2.2.19-win64/" (2)往下找到apache开启的功能模块:#LoadModule vhost_alias_module modules/mod_vhost_alias.so 模块后面添加: LoadModule php5_module "E:/Server/php-5.3.6-Win32-VC9-x64/php5apache2_2.dll" PHPiniDir "c:/windows/php.ini" AddType application/x-httpd-php .html .htm .php (3)继续往下,找到DocumentRoot "e:/code/php"设置网页文件目录 此行修改要与行This should be changed to whatever you set DocumentRoot to.后的&Directory "e:/code/php"&目录设置相对应 4、再次在命令提示符 执行 httpd -k start 没有错误即服务器启动成功 5、IIS默认80端口 因此 修改一下E:\server\apache-httpd-2.2.19-win64\conf\httpd.conf中listen端口 否则 会出现冲突 三、配置...
display:block就是将元素显示为块级元素.   block元素的特点是:   总是在新行上开始;   高度,行高以及顶和底边距都可控制;   宽度缺省是它的容器的100%,除非设定一个宽度   &div&, &p&, &h1&, &form&, &ul& 和 &li&是块元素的例子。   display:inline就是将元素显示为行内元素.   inline元素的特点是:
  和其他元素都在一行上;   高,行高及顶和底边距不可改变;   宽度就是它的文字或图片的宽度,不可改变。   &span&, &a&, &label&, &input&, &img&, &strong& 和&em&是inline元素的例子。   inline和block可以控制一个元素的行宽高等特性,需要切换的情况如下:   让一个inline元素从新行开始;   让块元素和其他元素保持在一行上;   控制inline元素的宽度(对导航条特别有用);   控制inline元素的高度;   无须设定宽度即可为一个块元素设定与文字同宽的背景色。   display:inline-block将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内,允许空格。   inline-block的元素特点:   将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内,...
昨天发布了一个&5分钟实现多行文本框[textarea]自动高度jquery 插件& 发现有bug,今天用了更简单的办法实现,支持初始化加载textarea高度 支持复制文字自动高度 支持长段不换行文字 支持连续回车和连续删除自动高度
&关于这件事情我们的本意和唯一诉求是 “就事论事,撤销专利”,无意伤害任何人。为了防止事情被误导和进一步扩大,我隐去了发明人、代理人和申请人的相关信息,在此希望大家不要转发和恶意评论此事,理智对待切勿网络暴力。我们的最终目标是要解决问题,希望大家可以提供一个协商解决的环境。 ## 请大家理智对待,不要发表过激言论 感谢各位的关注,相关事情已经委托"开源中国"处理,正在和对方沟通中。我们的诉求只有两点: - 1、对方撤销专利。(专利发明人已积极道歉并,且勿网络暴力); - 2、对方正面声明。(给关注的朋友一个交代); ## 声明 - 1、XXL-JOB自始至终是一款开源软件,永远开源免费,社区成员将会持续提供技术支持。 - 2、XXL-JOB一直以来是GPL协议开源,目的是为了禁止各种定制版本变相收费,我们承诺产品免费。 - 3、希望冒名申请国家发明专利的公司和个人正视问题:**尽快撤销申请专利,并且公开声明**。 - 4、请大家就事论事,不要变成网络暴力,也不要偏离主题啊。 &抛开冒名申请国家发明专利不谈,在此我有几个问题: - 开源软件是否能够申请国家知识专利? - 开源软件如何进行保护,开源协议还是专利? - 开源作者的辛苦成果,如何保证不会变成...
IBM Bluemix,包含认知、物联网、大数据分析、安全、DevOps、应用、应用整合、移动、计算、网络、存储等 11 大类共 140 多个服务的云计算平台。
最近闹的沸沸扬扬的“某知名公司侵权开源软件申请专利”的事件(《知名公司(努比亚/中兴)拿我的开源软件( XXL-JOB)申请国家知识专利,我该怎么办?》)仍在持续发酵中。 和众多开源爱好者一样,我一直在持续关注事件的后续发展。在这过程中,发现多数人对开源协议具有的法律效力以及开源软件的知识权益十分模糊。在此,整理了一些与开源软件的知识产权相关的内容,希望能加深大家对开源的了解。 一、两个相关案例: 1、Jacobsen VS Katzer:开源协议是一种著作权协议 2006年,Bob Jacobsen 起诉 Matt Katzer ,称后者的软件没有遵守开源协议,标明源代码的出处和作者,要求法院认定这是侵犯著作权行为。当时的旧金山联邦地区法院驳回了这个请求,认为这只是“违反契约”(a breach of the licensing agreement),而不是“侵犯著作权”(copyright infringement)。 Bob Jacobsen 不服判决,继续上诉。于2008年,在联邦上诉法院成功翻案。法官认定,即使采用放弃著作权的开源协议,依然可以发生侵犯著作权的侵权行为。(判决词、详细报道) 2、Artifex VS Hancom:开源协议是具备强制执行力的合同 Hancom 公司自 2013 年起在其字处理软件中整合了开源 PDF 解释器 Ghos...
Node.js 系统含有多种不同的结构,如 MVC、全栈、REST API 和生成器等。这些结构不仅提升了 Web 应用的开发效率,也优化了开发过程。在这里,我们收集整理了十个高效的 Node.js 框架,希望对你有帮助。 1、Node.js 开发框架 Sail.js Sails.js 就像是 Node.js 平台上的 Rails 框架。这是一个可靠可伸缩的开发框架,面向服务的架构,提供数据驱动的 API 集合。用来开发多玩家游戏、聊天应用和实时面板引用非常方便,也可用于开发企业级 Node.js 应用。 Sails.js 基于 Node.js, Connect, Express 和 Socket.io 构建。 控制器示例代码: module.exports = {
hi: function (req, res) {
return res.send("Hi there!");
bye: function (req, res) {
return res.redirect("http://www.OSChina.net");
}; 2、Node.js 服务器端框架 Hapi.js Hapi.js 是一个用来构建基于 Node.js 的应用和服务的富框架,使得开发者把重点放在便携可重用的应用逻辑而不是构建架构。内建输入验证、缓存、认证和其他 Web 应用开发常用的功能。 示例代码: var Hapi = require('hapi');
// Create a server with a host and por...
6月10日晚 xxl-job 的作者全权委托开源中国与涉事公司深圳努比亚技术有限公司进行沟通协商处理此问题。委托内容请看原帖:https://my.oschina.net/xuxueli/blog/918201 作者的诉求包括: 努比亚公司向专利局申请撤销专利 以公司名义发布正面声明,客观的描述此事 感谢作者的信任,不敢怠慢。6月11日开源中国与努比亚进行了第一次沟通,主要针对公开声明的内容进行讨论。 开源中国与作者对声明内容的要求是: 详细描述出现使用开源软件申请专利的管理不善问题,如果是在开源软件上做改进,那么应该详细描述改进的内容 在声明中表明将公开宣布主动申请撤销专利 如果专利撤销失败,已经授予,那么公司将发布另外声明,声明该专利基于某某开源项目,并将无偿开源 目前尚无法在声明内容上达成一致。我们将继续积极的协商此事。请大家保持关注。
Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.net/xyang81/article/details/可以看更多介绍 Keepalived的介绍可以百度一堆一堆的资料。一定要看看哦。 1.基于上一篇博客总结,再次安装一个虚拟机当backup服务器,这个服务器只安装Keepalived+Nginx即可 2.Master还是上一篇博文的虚拟机,环境是Tomcat+JDK+Nginx+Keepalived 3.每个Nginx服务器都安装Keepalived
这篇文章将列出十个关注隐私和安全性的 Linux 发行版
每周为您推送最有价值的开源技术内参!
本项目完全开源 项目Github地址:[AndroidInstantVideo](/ChillingVan/AndroidInstantVideo) 码云地址:[AndroidInstantVideo](http://git.oschina.net/ChillingVan/AndroidInstantVideo) 目前开源的项目或市面上的Android直播客户端主要是用ffmpeg来实现推流的。本文将介绍使用Android原生的视频编码类MediaCodec实现直播推流。 ### 数据流及大致原理 这里所说的直播,就是将你的客户端产生的视频数据,实时发送到服务器上。服务器上的数据再实时地发送到播放客户端上。 * 以视频数据为例: **获取Camera画面** 首先是摄像头拍摄得到原始画面数据,这里原始画面数据的格式我们不用管,因为我们使用的是MediaCodec,所以我们会使用 camera.setPreviewTexture(surfaceTexture) 来利用Camera获取到的画面。 此处的原理可忽略,大致说明的话,就是Camera会把获得的画面保存为OpenGL的一个纹理,我们使用这个纹理就能使用Camera的画面。 **绘制画面** 在获得画面之后,我们要把这个画面(纹理)“画”到MediaCodec上。 如何画? MediaCodec提供一张’白纸’,也就是一个Surface,供我们把纹理画到上面。此处的API是 MediaCodec.createInputSurface() 怎么画?...
学习每一门语言,一般都是从其数据结构开始,JavaScript也是一样,而JavaScript的数据结构中对象(Object)是最基础也是使用最频繁的概念和语法,坊间有言,JavaScript中,一切皆对象,基本可以描述对象在JavaScript中的地位,而且JavaScript中对象的强大也使其地位名副其实,本篇介绍JavaScript对象属性描述器接口及其在数据视图绑定方向的实践,然后对Vue.js的响应式原理进行剖析。
声明: 欢迎本着技术讨论为主的讨论者一起探讨。让我们一起共同维护好技术圈的和谐氛围。以下内容均为个人理解,如果不妥的地方请大家指出。如果发现错字,只能麻烦你暂时脑补一下。
我作为 Voovan 的设计及主创人员,针对目前流行的几款框架在设计和功能方面做一个分析,分析的内容我选取了一些我个人比较关注的性能和开发的便利性有影响的点,当然一定会不够全面的,就像大家关注的点总是不同的,有人喜欢大长腿,有人喜欢大XX。这篇文章中不涉及性能的好坏评价(因为没有对三个框架做全面的横向评测),也不做框架设计优劣的评论,存在及合理。
首先目的是要在熟悉和了解其他框架的过程中,学习他们好的设计思想和编码技巧,这里我不做结论性的陈述。目的是在于帮助开发者更好的选择适合自己的框架。
在编写这篇文章时与 t-io 的作者进行了沟通,当然就我们两个人的理解也极有可能有错误的地方,欢迎大家指出错误,我们会尽快修复的。
以下是我对三个框架在设计或者说是编码特点中选取的几个我比较关注的点的对比图: 首先我们对几个关键的概念进行一些解析,方便大家更好的理解上面表中的概念: NIO、AIO 的区别?
在这里我们来看一下两者最...
持续更新中... 张致水咨询 1: 杨保勇咨询 2:
  从事Web前端开发的人都与CSS打交道很多,有的人也许不知道CSS是怎么去工作的,写出来的CSS浏览器是怎么样去解析的呢?当这个成为我们提高CSS水平的一个瓶颈时,是否应该多了解一下呢?   一、浏览器的发展与CSS   网页浏览器主要通过 HTTP 协议连接网页服务器而取得网页, HTTP 容许网页浏览器送交资料到网页服务器并且获取网页。目前最常用的 HTTP 是 HTTP/1.1,这个协议在 RFC2616 中被完整定义。HTTP/1.1 有其一套 Internet Explorer 并不完全支援的标准,然而许多其他当代的网页浏览器则完全支援这些标准。网页的位置以 URL(统一资源定位符)指示,此乃网页的地址;以 http: 开首的便是通过 HTTP协议登陆。很多浏览器同时支援其他类型的 URL 及协议,例如 ftp: 是 FTP(档案传送协议)、gopher: 是 Gopher 及 https: 是 HTTPS(以SSL加密的HTTP)。   早期的网页浏览器只支援简易版本的HTML。专属软件的浏览器的迅速发展导致非标准的 HTML 代码的产生。但随着 HTML 的成长,为了满足设计师的要求,HTML 获得了很多显示功能。随着这些功能的增加外来定义样式的语言越来越没有意义了。   1994年哈坤·利提出了 CSS 的最初建议。伯特·波斯(BertBos)当时正...
JAVA学习路线图,特此声明; 仅希望对热爱JAVA学习有所帮助 如若转载或者使用本图,请注明出处,避免后期出现版权问题,谢谢!!!
JAVA学习路线图 此乃是java攻城狮的学习路线图,由简到繁,由易到难,一步步的学习,最后成为 JAVA攻城狮。希望对大家的学习有所帮助 阶段1
1:学习HTML
3:Javascript
6:Bootstrap
7:JAVAse基础
8:mysql数据库
9:Powerdesigner
11:JAVAWEB
阶段三 12:oracle
13:struts2
14:Hibernate
15:Spring 阶段四 16:Maven
17:SpringMVC
18:MyBatis Java学习交流QQ群:
禁止闲聊,非喜勿进!
多年前我自学的时候是很茫然,上网问问题,总是一堆外行的人说很难啊,你需要这样需要那样,不然就是,一堆人说一些空话,多看多写,买好书,我很无语,除了这些就没有自己的一些想法吗?
首先很多人认为学JAVA要C的基础,但是实际上不用,学开车,我不想先学骑自行车,没有必要。 第一阶段:
1. JAVA语法和基础,包括循环。。和类的相关内容,如实现,继承什么的
2. 你需要掌握几个重点的集合,List接口的两个子类LinkedList,ArrayL然后是Map几口的两个子类HashMap,HashTable;Set接口 掌握List后学Set就容易了;掌握Collection和Collections的区别
3. 掌握IO一章,重点的几个流 InputStream,OuputSBufferedReader,BufferedW
ObjectInputStream, ObjectOutputStream,,PrintWriter,FileReader,FileWriter了解JAVA的序列化,掌握JAVA的File类
4. JDBC非常重要,重点掌握Connection,PreparedStatement, Statement,ResultSet,
其他的可以在学习或项目中如果碰到再学,但早期重点掌握前面几个,其他了解足够,
数据库建议新手用MySql,下载Navicat for MySQL管理工具
5.如果你想快速上手的话,那么你需要跳过这些,
包括:线程,网络...
Thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 等等编程语言间无缝结合的、高效的服务。 Thrift最初由facebook开发,07年四月开放源码,08年5月进入apache孵化器。thrift允许你定义一个简单的定义文件中的数据类型和服务接口。以作为输入文件,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言。 本篇博文编写的目的是对Thrfit不同的服务类型进行整理,并结合代码示例进行说明~ 目标 本篇博文编写的目的是对Thrfit不同的服务类型进行整理,并结合代码示例进行说明~ 博文主要包含如下几个部分: 1. 实例代码准备 2. 对不同的服务类型进行介绍说明,并给出示例 3. 异步客户端调用实例 4. Nifty库的使用,包含服务端和客户端代码示例 实例 说明 在这个示例中,我们主要在用户接口中定义三个接口:保存用户,根据name获取用户列表以及删除用户 如:
* 保存用户
* @param user
public boolean save(com.xxx.tutorial.thrift.entity....
学习的最好途径就是看书 "学习的最好途径就是看书",这是我自己学习并且小有了一定的积累之后的第一体会。个人认为看书有两点好处: 1、能出版出来的书一定是经过反复的思考、雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超其他资料 2、对着书上的代码自己敲的时候方便 "看完书之后再次提升自我的最好途径是看一些相关的好博文",我个人认为这是学习的第二步,因为一本书往往有好几百页,好的博文是自己看书学习之后的一些总结和提炼,对于梳理学习的内容很有好处,当然这里不是说自己的学习方法,就不再扯下去了。 很多程序员们往往有看书的冲动,但不知道看哪些书,下面我就给各位Java程序猿们推荐一些好书(每本书的作者会加粗标红),其中绝大多数都是我自己平时在看的书,也算是我对于平时读的书做一个小总结和读后感吧。 目前市面上讲解设计模式的书很多,虽然我前面讲了看书是最好的,但是对设计模式感兴趣的朋友们,我推荐的是这个博客。这位博友的设计模式讲得非常非常好,我认为90%的内容都是没有问题且很值得学习的,其讲解设计模式的大体路线是: 1、开篇点明该设计模式的定义 2、图文并茂讲解该设计模式中的结构 3、以详细的代码形式写一下该种设...
基于dubbox发布restful服务
其实按照我的情怀和尿性,文章的标题应该是 前端登堂入室宝典、前端成长就这三招 之类,奈何这是篇软文 ~ 看官先别急Command + W,尤其是和我经历类似 做着其它岗位的工作,却多少会接触一些前端
发现有些兴趣,但又不肯定这应该是自己未来
也会有些成就感,但似乎挫折和沮丧来的更多一些 我可以负责任的说,这是一篇有态度的软文 欲语泪先流 我希望做些有用的事情,甚至可以做个有用的人 才毕业工作的第一年我是满足的,学到了很多新知识,写的代码不但能work,还能真的跑在生产环境中 我提交代码上线,忐忑的测试之后没有问题,看着屏幕傻笑了一下午,虽然整个两年半可以说失落更多一些,但那天我是幸福的 最后的半年我想走了,那里有人真心对我好,工作氛围也不错,待遇也不至于让人失望,可我还是想走了 有天早上醒来莫名其妙的沮丧,下午我看着代码发呆的时候忽然想起我早上做的梦,客户铺天盖地的投诉我做的产品问题太多,忽然觉得满世界都是委屈,情不自禁的满脸都是泪 除了登录后首页,我负责的产品根本没人使用,永远躺在免费的Package中,客户投诉对我来说是一种奢望。公司方向也好,个人努力也罢,我一直在做一些可有可无的事情 那天才了解,我的成就感不像大...
用户流量从搜索引擎为入口的增量时代到移动互联网普及人口红利不再的存量时代,这个变化对每个公司的获客成本,运营思路都产生了很大的影响,在流量日益枯竭,获客成本越来越高的时代,伴随着大数据、精细化运营、人工智能、机器学习等一大波新技术和概念的崛起、普及,它们之间有何关联?如今互联网产品又该如何运营、攻城略地?本文介绍的用户画像或许能带来一点思路。
回头看看, 我进入Java 领域已经快15个年头了, 虽然学的也一般, 但是分享下我的心得,估计也能帮大家少走点弯路。 [入门] 我在2001年之前是C/C++阵营, 有C和面向对象的基础, 后来转到Java ,发现没有指针的Java真是好简单, 另外Java 的类库好用的让人哭啊。 后来我就看《Thinking in Java》 ,《 Java 核心技术 》, 感觉也不吃力。 如果我之前没学过别的语言,或者半路出家转到计算机行业, 我不会先看上面那两本, 相反我会选《Head First Java》, 这本书非常适合零基础的小白, 读起来轻松搞笑, 不信你看看第一页 但是光看书也挺无趣的,不妨和视频结合着看, 我觉得传智播客的Java基础视频很不错 (唉, 给传智打了个广告), 网上一搜就有,真搜不到就来我的QQ群里吧(群号码:) 注意:视频的好处就是能看到敲代码的过程, 代码是活的, 这点很爽。 如果视频只是按PPT讲编程, 果断扔掉。 书也有书的好处,能写成书的, 肯定是作者经过系统化思考,梳理才能形成的东西, 所以系统性比较强。 书还有其他优点, 例如可以随便的翻, 找到重点反复的看。 所以混合着看经典书+优秀的视频 应该是最好的入门。 Java 入门, 我不会去上培训班,白白浪费钱 ,自...
趁着六月美景正好,OSC源创会带着自由、开放、分享的开源精神,也带着满满的干货主题,邀请杭州的各位来约。
Debug: F8:下一步 F7:进入方法 F9:跳到下一断点处或执行结束 Alt+F8:选中对象,弹出可输入计算表达式调试框,查看该输入内容的调试结果 Shift+F8:跳出该方法 跳转或移动: Ctrl + G 跳转到指定行 Ctrl+Shift+Up/Down,向上/下移动语句 Alt+Up/Down,在方法间快速移动定位 Ctrl+[ OR ],可以跑到大括号的开头与结尾 Ctrl+Alt+B,或者Ctrl+Alt+单击:跳转到方法实现处 Ctrl+Alt+left/right,返回至上次浏览的位置 Alt+左右箭头
切换标签 快速打开: Ctrl+N,可以快速打开类 Ctrl+Shift+N,可以快速打开文件
优化转换: Ctrl+Enter,导入包,自动修正 Ctrl+Alt+O,优化导入的类和包 Ctrl+Alt+L,格式化代码 Ctrl+Shift+U,大小写转化 删除插入: Ctrl+x/y,删除当前行 Ctrl+Alt+T,可以把代码包在一个块内,例如:try/catch Shift+Enter,向下插入新行 Ctrl+D,复制行 Ctrl+O,重写方法 Ctrl+I,实现方法
查看: Ctrl+F12,可以显示当前文件的结构 Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择 Ctrl+P,可以显示参数信息 Ctrl+Shift+”+/-”,全部展开、折叠
&!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&
&meta http-equiv="Content-Type" content="text/ charset=utf-8"&
&title& Insert title here&/title&
/*背景与边框相关样式
1.1指定背景的显示范围 background-clip属性
1.2指定背景图像的绘制起点 background-origin属性 利用background-origin属性来指定绘制时从边框的左上角开始绘制,或者从内容的左上角开始绘制
1.3指定背景图像的尺寸 background-size属性
例:background-size:40px 2040px为背景图片的宽度,20px为背景图像的高度
可以将background-size属性指定为contain关键字,这将把原始图像在维持纵横比的前提下自动放大或缩小,以使原始图像的宽度或高度完全等于元素的宽度或高度
可以将background-size属性指定为cover关键字,这会使原始图像在维持纵横比的前提下将背景图像自动缩放到填满元素内部,
如果元素的长宽比例与原始图像的长宽比例不一致,那么多余部分将被剪去
1.4新增的用于平铺背景图像的选项 space与round space选项在水平方向或垂...
1、create schema [数据库名称] default character set utf8 collate utf8_general_--创建数据库   采用create schema和create database创建数据库的效果一样。 2、create user '[用户名称]'@'%' identified by '[用户密码]';--创建用户   密码8位以上,包括:大写字母、小写字母、数字、特殊字符   %:匹配所有主机,该地方还可以设置成‘localhost’,代表只能本地访问,例如root账户默认为‘localhost‘ 3、grant select,insert,update,delete,create on [数据库名称].* to [用户名称];--用户授权数据库   *代表整个数据库 4、--立即启用修改 5、revoke all on *.* from [用户名称];--取消用户所有数据库(表)的所有权限 6、delete from mysql.user where user='[用户名称]';--删除用户 7、drop database [schema名称|数据库名称];--删除数据库...
策略模式定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的&...
,第三次在斗鱼直播讲Angular相关的内容,这次主要解答环境搭建相关的内容。因为看到很多群里面的反馈,仍然有一些道友卡在环境问题上。 @angular/cli的安装配置以及一些需要注意的坑。 真实的案例项目NiceFish应该怎么搭建环境并把项目启动起来,对于的系列开源项目在这里http://git.oschina.net/mumu-osc/NiceFish 基于Angular的前端项目如何与Server端真正对接(前后端分离开发、分离部署,nginx的配置,IDEA如何导入maven项目等等) 如果您有需要,请点击这个链接收看/show/ra2JEMJbo8oMNxml 注意:这是新手内容,如果您已经会了,不要浪费时间在上面。我会经常直播写代码的,欢迎下回来看看。
公司线上redis主从环境下的持久化策略调整: 描述: 之前线上项目使用redis,部署了redis主从环境。redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。由于主redis采用了AOF和save快照的持久化,长时间下去,aof文件不断增大,磁盘空间使用率逐渐暴增。 考虑到性能问题,需要对redis持久化做些调整,调整如下:
1)主库不开启AOF持久化,并关闭save快照功能(即注释默认的三个save设置),只在每晚12点定时手动做一次bgsave快照,并将快照文件转移到异地。即主库上不产生appendonly.aof持久化文件,做的快照数据放在.rdb文件里(如dump.rdb,由于是压缩配置(rdbcompression yes表示快照文件要压缩),所以快照文件要比aof文件小),然后将这个快照文件dump.rdb转移到其他的服务器上,防止主服务器宕机造成的损失!
2)从库开启AOF持久化并1秒落地,同样不做快照save。并在每晚12点做一次bgrewriteaof压缩appendonly.aof持久化文件,压缩前先对aof文件进行备份。 ------------------------------------------------------------------------------------------------------...
对于http来说,这是个短链接的,rpc据我了解一般都是长连接,访问量高的情况下,链接重新创建的开销很大。 另外http这种依赖容器,容器搞的不6的话。性能有时候会被容器拖下来。 http传输的数据大小,访问量高的时候,rpc和http,相同的数据传送的大小不同(多数rpc采用二进制,http一般都是json之类的),这里数据大是一方面,虽然一个包大不了多少,访问量高的话,这流量钱也挺贵。之后解析json效率不敢恭维。 可靠性、安全性,这个其实在访问量大的时候尤为看中。其实这俩可扩展性差别不是特别大,剩下的就是rpc一些自动降级、流控的功能,保证服务的稳定。 这里举一个例子,比如你http,你想负载均衡的话,一般搞个nginx,分发,一旦流量高,挂了一台,第二台基本也就挂了。rpc一般都自带这种功能,或者比较好实现。当然如果你可以实现上面说的降级和流控功能,这当然没问题~ 相对于安全,http这种数据易监听。
&p&一般是开一个ssh &br/& 然后: &/p& &pre&&code&node t.js &/code&&/pre& &p&如果这个ssh关闭,node也关闭了 &br/& 如何让node t.js以守护进程运行啊???&/p&
nohup node app.js
前言:一直想找一个工具,能很好的实现mysql主从的读写分离架构,曾经试用过mysql-proxy发现lua用起来很不爽,尤其是不懂lua脚本,突然发现了Amoeba这个项目,试用了下,感觉还不错,写出文档,希望对大家有帮助! 一、Amoeba 是什么 Amoeba(变形虫)项目,专注 分布式数据库 proxy 开发。座落与Client、DB Server(s)之间。对客户端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请求多台数据库合并结果。 主要解决: o 降低 数据切分带来的复杂多数据库结构 o 提供切分规则并降低 数据切分规则 给应用带来的影响 o 降低db 与客户端的连接数 o 读写分离 二、为什么要用Amoeba 目前要实现mysql的主从读写分离,主要有以下几种方案: 1、 通过程序实现,网上很多现成的代码,比较复杂,如果添加从服务器要更改多台服务器的代码。 2、 通过mysql-proxy来实现,由于mysql-proxy的主从读写分离是通过lua脚本来实现,目前lua的脚本的开发跟不上节奏,而写没有完美的现成的脚本,因此导致用于生产环境的话风险比较大,据网上很多人说mysql-proxy的性能不高。 3、 自己开发接口实现,这种方案门槛高,开发成本高,不是一般的小公司能...
C提供位的逻辑运算符和移位运算符。 15.3.1
位的逻辑运算符 4个位运算符用于整型数据,包括char。将这些运算符称为位运算符的原因是它们对每位进行操作,而不影响左右两侧的位。而常规逻辑运算符(&&、||、!)对整个值进行操作。 一、二进制反码或按位取反 一元运算符~将每个1变0,将每个0变1,如下面的例子所示: ~()
//表达式 ()
//结果 假设val是一个unsigned char,已赋值为2。在二进制中,2是。于是~val的值为,或253。 请注意该运算符不改变val的值,正如3*val不改变val的值一样;val仍为2,但是该运算符并不创建一个可以在别处使用或被赋值的新值。 newval=~ printf("%d",~val); 如果您想将val的值变为~val,请使用简单的赋值: val=~val; 二、位与(AND):& 二进制运算符&通过对两个操作数逐位进行比较产生一个新值。对于每个位,只有两个操作数的对应位都为1时结果才为1。 ()&()
//表达式 的结果值是: ()
//结果值 原因是在两个操作数中,只有位4和0都为1。 C也有一个组合的位与-赋值运算符:&=。下面的语句产生相同的最终结果: val &=0377; val = val & 0377; 三、位或...
ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijkplayer, 即便以前从没有接触过, 按着下面做也可以集成成功! 一. 下载ijkplayer ijkplayer下载地址:/Bilibili/ijkplayer 下载完成后解压, 解压后文件夹内部目录如下图: ijkplayer-master文件夹内容.png 二. 编译 ijkplayer 说是编译 ijkplayer, 其实是编译 ffmpeg, 在这里我们已经下载好了ijkplayer, 所以 github 上README.md中的Build iOS那一步中有一些步骤是不需要的. 下面开始一步一步编译: 1.打开终端, cd 到jkplayer-master文件夹中, 也就是下载完解压后的文件夹, 如下图: 进入到这个文件夹 2.执行命令行./init-ios.sh, 这一步是去下载 ffmpeg 的, 时间会久一点, 耐心等一下.如下图: 3.在第2步中下载完成后, 执行cd ios, 也就是进入到 ios目录中, 如下图: 进入ios 文件夹 4.进入 ios 文件夹后, 在终端依次执行./compile-ffmpeg.sh clean和./compile-ffmpeg.sh all命令, 编译 ffmpeg, 也就是README.md中这两步, 如下图: 编译 ffmpeg 编译时间较久, 耐心等待一下. 三. 打包IJKMediaFra...
HAPPENS-BEFORE
"Happens before" is a partial order describing program events,
invented by Leslie Lamport.
Consider multithreaded executions as traces R of events E, as defined
(A trace is just a sequence.)
Events E ::= start(T)
read(T,x,v)
write(T,x,v)
spawn(T1,T2)
join(T1,T2)
unlock(T,x)
Here T is a thread identifier, x is a variable, and v is a value.
the event read(T,x,v) indicates that thread T read value v from
variable x.
We also assume that traces R are well-formed by requiring
the first event by a thread T in R must be start(T).
No events by T
may follow end(T) in the trace.
Let E1 & E2 be the ordering of events as they appear in the trace,
which is transitive, irreflexive, and antisymmetric, as usual.
happens-before ordering &: in a trace R as follows: E1 &: E2 iff E1 & E2
and one of the following holds:
a) thread(E1) = thread(E2)
b) E1 is spawn(T1,T2), and E2 is start(T2)
方法一.通过node版本管理工具nvm(Node version manager)安装; ①安装nvm 1.1.安装nvm; curl -o- /creationix/nvm/v0.31.1/install.sh | bash 或者 wget -qO- /creationix/nvm/v0.31.1/install.sh | bash 1.2.安装nvm; source ~/.bash_profile 可使用nvm --version 命令检查nvm是否安装成功 ②安装node 2.1.查看可以安装的node版本 nvm list-remote 2.2 安装想要安装版本的node,(例如:) nvm install v4.3.1 ③查看版本号(验证是否安装成功) node -v npm -v 其他命令 nvm list 查看所有安装版本号 nvm use v4.3.1 切换到v4.3.1版本 nvm alias default v4.3.1 设置默认版本为v4.3.1
方法二. 源码安装 ①下载源码 前往https://nodejs.org/en/download/
选择想要安装的版本复制链接,ex: wget
https://nodejs.org/dist/v4.4.5/node-v4.4.5.tar.gz ②解压源码 tar xzvf node-v* && cd node-v* ③安装编译环境(下载内容较多,版本太低可能出现编译失败的状况); sudo yum install gcc gcc-c++ ④编译 ./configure make ⑤安装 sudo make install ⑥查看版本号 node --version
新学习了一些类,QGraphicsView,QGraphicsScene,QGraphicsItem,QUndoStack等等,下面是具体的运用实例,也算是在上一篇实例程序上的扩展学习吧,以后也可能会在此程序上增加更多的内容吧,
这个不错,可以解决不少问题,可以举一反三,深入研究
package com.study.
public class BaseVarAndClassPackge {
* @description 数据类型转换和类包装
public static void main(String[] args) {
//1、 各类简单数据类型的转换优先关系
byte a = 2;
char b = 'a';
short c = 3;
int d = 400;
long e = 200000L;
float f = 10.344f;
double g = d;
int aa = a +//会隐式转换成int类型
long ee = aa +//会隐式转换成long类型
float ff = f +//这是一个特例:转换成float类型
double gg = ff +//double类型
System.out.println("int:" + aa );
System.out.println("long:" + ee );
System.out.println("float:" + ff );
System.out.println("double:" + gg );
//2、类型的强制转换
int tt = (int)(ee + aa);
//总结:小的数据类型和大的数据类型一起运算,JDK会自动隐式转换成大的数据类型
//大的数据类型想转成小的数据类型,这个时候要使用"强转"
//3、各类简单类型数据的类包装
Character cc =
Byte aaa =
Short ccc =
System.out.println(ccc.t...
### 1. 安装zabbix-agent ```shell rpm -ivh /zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm ``` Red Hat Enterprise Linux / CentOS ```shell yum install zabbix-agent systemctl start zabbix-agent ``` Debian / Ubuntu ```shell apt-get install zabbix-agent service zabbix-agent start ``` ### 2. 开启防火墙 ```shell firewall-cmd --permanent --zone=public --add-port=10050/tcp firewall-cmd --permanent --zone=public --add-port=10051/tcp ``` ### 3. 添加主机 在配置----主机界面点击 Zabbix server ![file-list](/thumbnail/7b8700b0cac81de5cd3355dff3b2cf7f?fid=-&time=&rt=sh&sign=FDTAER-DCb740cccfedcff06b081203-yJo8MFElNjDsqX5zqEYiDp5vVS0%3D&expires=8h&chkv=0&chkbd=0&chkpc=&dp-logid=1166336&dp-callid=0&size=c710_u400&quality=100&vuk=-&ft=video) 在最下面点击全克隆 ![file-list](/thumbnail/f05df34d08ef96ad3d8a9ccd?fid=-529645...
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。 本文将介绍通过 MongoDB 存储二进制文件,从而实现一个文件服务器 MongoDB File Server。
子查询可以返回单行结果,可以返回多行结果,也可以不返回结果 1.如果子查询未返回任何行,则主查询也不会返回任何结果 (空值)select * from emp where sal & (select sal from emp where empno = 8888); 2.如果子查询返回单行结果,则为单行子查询,可以在主查询中对其使用相应的单行 记录比较运算符 (正常)select * from emp where sal & (select sal from emp where empno = 7566); 3.如果子查询返回多行结果,则为多行子查询,此时不允许对其使用单行记录比较运算符 (多值)select * from emp where sal & (select avg(sal) from emp group by deptno);//非法
子查询中常用方法 1.any即任何一个。如果在where条件中加入&any,意思是大于任何一个,也就是大于最小的 select * from emp t where t.sal& any(select sal from hhgy.emp where deptno=30) 2.some即一些。和any的用法基本相同。用any的地方都可以用some代替。不过some大多用在=操作中。表示等于所选集合中的任何一个。当然any也可以用于=操作中,效果和some相同。 select * from emp t where t.sal= some(select sal from hhgy.emp where deptno=30) 3. all即所有。如果在where条件中加入&all,意思是...
在笔记本电脑发展过程中,加入新元素、淘汰老元素是不便的规律。过去的五年里,笔记本电脑实现了前所未有的形态变革。随着硬件功耗降低、性能提升、芯片体积越来越小,从2012年开始,英特尔倡导的2合1电脑在经过五年发展之后,使得笔记本电脑形态发生极大的改变。翻转屏、旋转屏、可插拔、极致轻薄、超窄边框等等形态上的转变,使得如今的笔记本电脑与五年以前的产品大相径庭。 而除了形态、性能、功能改变之外,笔记本相应硬件的改变也时有发生。从摄像头、麦克风的加入,到电池外置向内置的转变,再到一些物理按键的逐步消失,笔记本电脑在最近十年左右的时间逐渐走向简化,同时也更加贴合于用户的使用体验。 如果对笔记本产品有较为广泛了解的话就会发现,时下,与笔记本电脑最密切相关的一处硬件正在发生改变,它就是键盘。 此前,笔记本电脑键盘有过几次小小的改变,比如Acer Iconia双屏笔记本用触控键盘取代了物理键盘;再比如苹果MacBook的蝴蝶键盘等等。不过体验过这些键盘的朋友大都对其手感没有留下好印象。 苹果MacBook的蝴蝶键盘也是机械键盘的一种,不过手感确实不咋地 其实笔记本键盘无论怎么改变,最为主要的方向应该是手感的提升。触控键盘虽能能够通过震动...
本文是最简单的自学sketch指南,作为全栈工程师,怎么可以不会设计呢?西乔女神说:"sketch无学习门槛,能用keynote的人就自然会用,但sketch是非常有效的能解决问题的原型工具。对设计复杂度要求不高的,直接可以当设计工具用"
本文展示了在之前搭建的Hadoop分布式集群的基础上如何搭建Spark分布式集群环境。
Python Web框架Tornado运行和部署
两种I/O多路复用方案:Reactor和Proactor设计模式
本文描述了如何使用php绘制验证码并在前端输出。
Python logging 模块源码解读,实现log 的json 格式化
引用、匿名对象、理解、本质剖析
“房子是租的 但生活不是”
  干货|建议初创团队起初也要构建分布式应用   本文内容整理自W-Time技术分享沙龙-天津站现场演讲《一切都是分布的》,演讲者:李傲,问啊联合创始人,前中交车联网总架构。   好多人都会问什么是架构师?其实架构师的定义很宽泛,前端后端的定义都不一样。作为后端出身的架构师,我认为后端并不是大家想的封装组件,它要定义的是规划,规划模块之前的关系。在一台机器搞不定时怎么办?答:集群!这词说着很容易,但真要给你,你发现how?怎么去加?   有人问我,架构师要做什么?我认为,架构师就是要在软件起初阶段就能够从情景当中预先想到这问题,通过架构分布式解决方案,预先把问题都埋好。可能有人会说这算不算重度设计?其实所谓重度设计,要看团队的基本能力,如果团队写代码还写不利索的情况下,那么这个设计就很重要。因为不能指望一个代码都没有写过几行的人去写架构,这个是不可能的,做分布式都很难。如果团队能力属于中上层,那么有两种可能:1、团队做过十几年的代码,但架构差一些,那么也会把程序写的非常漂亮,因为对代码有把控能力,对底层的研究比较透彻;2、代码写的并不是很好,但是架构师对新技术有了解,那么也是有可能做好分布式的。如...
# 场景介绍 对于小型的应用来说,我们经常使用一个MySQL实例来存放持久化的数据。在这种情况下,如果MySQL崩溃或者安装MySQL的服务器发生了故障,那么整个应用就不可用了。也就是发生单点故障。为了提高系统的可靠性,通常我们可以用两台服务器分别安装MySQL,并且让这两个MySQL实例互为主备。这样,当一台服务器发生了故障,那么另一台服务器可以自动接管数据库连接。 # 方案介绍 这里我们用keepalived来做failover的检测和自动切换。 ``` 虚拟IP: 192.168.1.2 主机1: 192.168.1.3 主机2: 192.168.1.4 MySQL: 5.6.24 (源码编译) keepalived: 1.2.20 ``` 整个网络拓扑如下: ![输入图片说明](https://static.oschina.net/uploads/img/33734_erun.png "在这里输入图片标题") - 两台服务器分别安装了keepalived和MySQL - keepalived 通过VRRP协议协商出一个MASTER实例,由这个实例对外提供虚拟IP的访问服务 - 两个MySQL实例之间互为主备,即每个实例都既是主也是备,利用MySQL的replication可以实现 这个架构比较简单,不过也有一些好处: 1. 对于外部应用来说,只要访问同一个IP地址(虚拟IP)。这样,底层的数据库发生切换时,应用不会感知,也不需要做任何修改...
在《开源安全运维平台OSSIM最佳实践》一书中叙述到,事件关联是整个OSSIM关联分析的核心,对于OSSIM的事件关联需要海量处理能力,主要便于现在需要及时存储从设备采集到的日志,并能关联匹配和输出,进而通过Web UI展示。从实时性上看,关联分析的整个处理过程不能间断,这对系统的实时性要求较高,另外Ossim系统是基于规则的,Ossim内部具有多套高速规则分析引擎,以实现模式匹配和对关联分析结果调用。
直接看的官网
上一次的发布的是《Node.js最新Web技术栈(2015年5月)》,感谢大家喜爱,值此koa2.0发布后,决定再次升级技术栈
企业级容器Registry开源项目Harbor架构简介 作者:姜坦 张海宁 (本文作者为Harbor项目组核心成员,于日作了更新。) 1. Harbor项目 VMware公司最近开源了企业级Registry项目Harbor,由VMware中国研发的团队负责开发。Harbor项目是帮助用户迅速搭建一个企业级的registry 服务。它以Docker公司开源的registry为基础,提供了管理UI, 基于角色的访问控制(Role Based Access Control),镜像远程复制(同步),AD/LDAP集成、以及审计日志(Audit logging) 等企业用户需求的功能,同时还原生支持中文,对广大中国用户是一个好消息。本文将介绍Harbor项目的主要组件,并阐述Harbor的工作原理。 (源代码地址:/vmware/harbor ) 2.架构介绍 1)
主要组件 Harbor在架构上主要由6个组件构成: ·
Proxy:Harbor的registry, UI, token等服务,通过一个前置的反向代理统一接收浏览器、Docker客户端的请求,并将请求转发给后端不同的服务。 ·
Registry: 负责储存Docker镜像,并处理docker push/pull 命令。由于我们要对用户进行访问控制,即不同用户对Docker image有不同的读写权限,Registry会指向一个token服务,强制用户的...
# OpenGL ES 2.0 Shader 调试新思路(一): 改变提问方式 ## --是什么(答案是具体值) VS 是不是(答案是布尔值) # 目录 ## 背景介绍 ### 问题描述 `Codea` 是 `iPad` 上的一款很方便的开发软件, 尤其是它支持 `OpenGL ES 2.0/3.0`, 支持着色器 `shader`, 可以直接写代码操纵 `GPU`. 不过也有不太方便的地方, 那就是在 `Codea` 上写 `OpenGL ES 2.0 Shader` 代码的时候发现跟踪 `shader` 内部使用的变量特别困难, 因为 `GPU` 就像一个黑洞, 程序员可以通过程序向 `vertex shader` 和 `fragment shader` 传递数据进去, 但是却没办法把 `shader` 的变量值传回来, 这样就导致在调试 `shader` 代码时看不到内部的变化, 有时候出了问题就得左右推测, 以往 `打印/输出` 变量值的调试方法也失效了, 结果使得调试 `shader` 代码比较困难. ### 已知条件 但是 `shader` 还是要输出信息的, 只不过它输出的信息是 `gl_Position` 和 `gl_FragColor`, 前者是一个四维向量用于设定屏幕图像像素点坐标, 后者也是一个四维向量用于设定颜色值, 而这两个信息是无法直接为我们输出变量值的. 那么是否可以做一点文章, 通过一种间接的方式来传递我们需要知道的信息呢? ## 解决思路 ### 转换思维 昨天晚...
关于原型和原型链的个人认识,想完全的去搞懂原型链,大家有意见可以随便发言
注:本文的原始资料和示例来自[ServiceStackApps/typescript-redux][1] ,根据我的实际情况,做了一些调整,详见文内说明,感谢原作者的无私分享。 本文通过设置,运行和探索Javascript一些高级的技术栈: - [TypeScript][2] - 具备类型的Javascript超集, 提供一些高级别的语法特性(注:真正的面向对象等)和部分ES5的支持 - [typings][3] - 用于搜索和安装TypeScript语法定义的包管理器 - [React][4] - 简单,高性能的javascript UI层框架,利用虚拟DOM和应答数...
React是一个JavaScript库文件,使用它的目的在于能够解决构建大的应用和数据的实时变更。该设计使用JSX允许你在构建标签结构时充分利用JavaScript的强大能力,而不必在笨拙的模板语言上浪费时间。
上次整理了两篇后一直忙于其他的事情,正好这周在学习ASM时,重新回到字节码上面,趁周末时间把之前想写却一直没有完成的初始化篇整理出来。
用python也差不多一年多了,python应用最多的场景还是web快速开发、爬虫、自动化运维:写过简单网站、写过自动发帖脚本、写过收发邮件脚本、写过简单验证码识别脚本。 爬虫在开发过程中也有很多复用的过程,这里总结一下,以后也能省些事情。 1、基本抓取网页 get方法 import urllib2
response = urllib2.urlopen(url)
print response.read()
post方法 import urllib
import urllib2
form = {'name':'abc','password':'1234'}
form_data = urllib.urlencode(form)
request = urllib2.Request(url,form_data)
response = urllib2.urlopen(request)
print response.read()
2、使用代理IP
在开发爬虫过程中经常会遇到IP被封掉的情况,这时就需要用到代理IP; 在urllib2包中有ProxyHandler类,通过此类可以设置代理访问网页,如下代码片段: import urllib2
proxy = urllib2.ProxyHandler({'http': '127.0.0.1:8087'})
opener = urllib2.build_opener(proxy)
urllib2.install_opener(opener)
response = urllib2.urlopen('')
print response.read()...

我要回帖

更多关于 哪家贷款公司正规 的文章

 

随机推荐