自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 资源 (1)
  • 收藏
  • 关注

原创 PHP 实现 替换 Word 里面变量并导出 PDF 图片

在线生成合同信息,一个 word 文件里面有些信息需要通过数据库读取计算出并填写到 word 文档中最终显示在线 pdf 预览功能,接下来我交大家如果实现该需求1、首先我们要解决如果替换 word 文档中的数据,我使用的 phpword 包,安装方式如下composer require phpoffice/phpword2、接下来实现如何替换文档内容我们新建一个 aa.docx 的文档,里面放了一个变量信息3、接下来使用 php 来替换这个变量信息 代码如下 .

2020-11-26 11:18:14 887

原创 动态规划求解旅行商问题,tsp问题求最优解,附代码实现

旅行商问题,即TSP问题(Traveling Salesman Problem)又译为旅行推销员问题、货郎担问题,是数学领域中著名问题之一。假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路程为所有路径之中的最小值。一般分2大类:完全图:两两城市间都有直达的路线,这条路线不需要经过中间其他...

2019-07-13 15:03:16 33131 8

原创 管理、带人、管人5步法

随着自己工作年限的增长,组织结构的变化,从刚毕业的纯执行,也会慢慢的开始带项目、带人。总结几个带人的方式和层级。1、首先你能替代他所有的活,在负责业务内出任何问题的时候你都能把控得住。2、教他接替你的活,接得住的他接,接不住的你接,永远不要让事情掉地上没人接。这个过程根据人不同,时间长短不一样。但总体上讲都是你在给他打样,给他做事的方法论,总结你传递“做事方法”的方法。这个过程其实是双...

2019-05-08 16:37:35 915

原创 没理解工作的本质,永远赚不了大钱

最近股票涨得很好,也借此机会有些不错的收益,虽然这种几乎靠运势和赌博来的收入不应该作为自己的职业,但这种什么事都没干就能赚钱的好事,还是太吸引人了,可能这也是为啥这么多人都在炒股的原因吧。后来带着一些期待研究了下金融,也因为一些机会了解了人工智能+大数据做基金、公私募运作的方式,不得不对这个世界叹为观止啊。人类历史的发展,从以物换物到货币的诞生,再到整个金融体系,中间各种玩法和操作,让无...

2019-04-06 23:22:52 523

原创 技术人的发展方向

最近一些朋友都遇到了技术瓶颈,在一个公司、一个平台中,一旦对整体比较熟悉之后,似乎就很难再有特别让自己有成就感的东西了,甚至一段时间都看不到自己的进步,进而不停的跳槽,从一个技术栈跳到另一个技术栈,不停的追逐着不一样的技术或是更大的平台,但很快又遇到了瓶颈,作为一个技术人,薪资的成长也会逐渐止步,一个非常现实的问题。这个状态就像打游戏,当你在一个境界中等级已经达到很高了,再想提高会变得非...

2019-04-06 22:27:54 1133 1

原创 初探Flutter,初步解析Flutter,安卓ios统一开发还真有可能。还有谷歌的Fuchsia系统。

Flutter Framework使用Dart语言开发,所以App进程中需要一个Dart运行环境(VM),和Android Art一样,Flutter也对Dart源码做了AOT编译,直接将Dart源码编译成了本地字节码,没有了解释执行的过程,提升执行性能。和Java显著不同的是Dart的"线程"(Isolate)是不共享内存的,各自的堆(Heap)和栈(Stack)都是隔离的,并且是各自独立GC的...

2018-07-20 20:53:13 10412 2

原创 【weex】从入门到放弃

对weex做了一小段时间的尝试,还是发现了一些问题,暂时放弃了在比较大的app里做尝试,不过做做小的app,或者在app中内嵌一些动态变化多的模块还是不错的。不谈性能,weex是号称write once run everywhere,经历了几次变动,阿里巴巴开源之后,将代码托管给了阿帕奇,然后又请了尤大神过去做vue的兼容,希望全面支持vue。(当然目前又支持了RAX,没有使用过这个,就不做评...

2018-07-20 19:54:03 2866

原创 Javascript面向对象编程,定义类(class)的三种方法

在面向对象编程中,类(class)是对象(object)的模板,定义了同一组对象(又称"实例")共有的属性和方法。Javascript语言不支持"类",但是可以用一些变通的方法,模拟出"类"。一、构造函数法这是经典方法,也是教科书必教的方法。它用构造函数模拟"类",在其内部用this关键字指代实例对象。  function Cat() {    this

2017-09-07 18:04:36 731

原创 【weex】第一次尝试,weex windows下的环境搭建到第一个完整的app

安装 Node.jsnode.js需要4.0+官网下载地址https://nodejs.org/en/安装教程请看这里node.js安装图解安装 weex-toolkit安装好node.js后,打开CMD工具现在安装weex-toolkit,这是weex的集成环境。Java代码  npm install -g weex-toolkit

2017-03-25 16:36:01 12619 5

原创 【服务器优化】Linux内核tcp调优方案,sysctl.conf的设置。解释各参数含义

#sudo vi /etc/sysctl.conf $ /proc/sys/net/core/wmem_max最大socket写buffer,可参考的优化值:873200$ /proc/sys/net/core/rmem_max最大socket读buffer,可参考的优化值:873200$ /proc/sys/net/ipv4/tcp_wmemTCP写buf

2016-12-01 21:23:33 10988

原创 做好ASO优化方案,步骤。

ASO 优化现在是可以使用竞品的名称作为关键词的,一般放在关键词里是比较稳妥的,对于ASO优化--AppStore关键词排名优化规则,希望对做产品的ASO 优化能有所帮助ASO优化--AppStore关键词排名优化规则 对产品而言,为应用选择正确的关键字会对成功与否起到至关重要的作用。不过至今为止,尚未有一款工具把开发者从无聊并庞大的调查中解放出来。在AppStore,我们已经

2016-11-08 16:45:39 9038

原创 从eclipse转android studio遇到的坑

基础知识介绍,很详细:http://www.open-open.com/lib/view/open1433387390635.html加速glide的构建:http://my.oschina.net/sammy1990/blog/388846运行Check out Subversion抛出异常:Cannot run program "svn": Create

2016-06-07 20:23:05 1357

原创 安卓 java.lang.StackOverflowError 错误检查,特别是部分低端机型

java.lang.StackOverflowError这个问题开发的人都知道是调用堆栈过深导致,在java中常出现在递归调用出不来的情况。在安卓里经常是UI  view嵌套层级过深导致。重点记录下嵌套层级过深的查错流程:当前页面找到最复杂的块,例如listView,table,viewPager等。细化到最底层的xml上,例如一个item,一个复杂的layout。(特别小

2016-02-27 17:47:41 4135

原创 简单说响应式编程,换种思维编程,让你的代码不仅仅是变漂亮

学习响应式编程过程中最难的部分是如何以响应式的方式来思考,更多的意味着要摒弃那些老旧的命令式和状态式的典型编程习惯,并且强迫自己的大脑以不同的范式来运作。我还没有在网络上找到任何一个教程是从这个层面来剖析的,我觉得这个世界非常值得拥有一个优秀的实践教程来教你如何以响应式编程的方式来思考,方便引导你开始学习响应式编程。为了展示响应式编程真正的魅力,我们假设你有一个"双击"事件流,为了让它

2015-12-16 21:48:48 1328

原创 【安卓开源集合】最全最有用的第三方开源库收集整理,快速开发必备,还能提升效率

扩展功能库SlidingMenu  : SlidingMenu 能非常容易的让开发者实现程序的抽屉效果,所谓的抽屉效果如下图所示,通常被用作呼出菜单。而且SlidingMenu能很方便的与ActionBarSherlock融合,在官方GitHub上有关于如何融合的说明。  GitHub   同时,想要达到相同功能也可以看另一个Drawer设计: Android-Undergarme

2015-12-08 11:58:39 2413 2

原创 Android asset raw 文件夹的区别深入解析

*res/raw和assets的相同点:1.两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制。*res/raw和assets的不同点:1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename;assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类。2.res/r

2015-11-26 20:45:23 717

原创 安卓网络框架,上传图片花图,上传状态411被服务器驳回

先看下一开始使用的网络框架核心代码:private Message doPost(final String url, final Map params, final Map inputStreams,final InterCallback callback) { long startTime = System.currentTimeMillis(); Message message

2015-10-25 15:48:08 1961

原创 Android aapt 命令 详细解析

aapt即 Android Asset Packaging Tool。该工具在SDK/tools目录下,如果你没有设置环境变量,那需要进入该目录下才能运行aapt命令,如果设置了环境变量则可以在任何目录下运行aapt命令了。1、列出压缩文件目录aapt l[ist] [-v] [-a] file.{zip,jar,apk}参数:-v:会以table的形式输出目录,t

2015-10-23 20:11:55 14166 1

原创 安卓webview的一些坑

WebView可以很好地帮助我们展示html页面,但是webview使用不当的话还是可能产生一定问题的,下面就以下几个方面说说我的优化技巧1、展示webview的activity可以另开一个进程,这样就能和我们app的主进程分开了,即使webview产生了oom崩溃等问题也不会影响到主程序,如何实现呢,其实很简单,在androidmanifest.xml的activity标签里加上an

2015-09-16 09:29:58 20409 1

原创 Linux权限详解,多用户多组各种权限配置原理

网上有太多关于Linux权限详解,这里不啰嗦那些。主要解释下这些权限是杂用的,否则知道了什么用户、组之类的权限也配不好。一、权限分类r:读取权限,数字代号为"4"。w:写入权限,数字代号为"2"。x:执行或切换权限,数字代号为"1"。-:不具任何权限,数字代号为"0"。linux内每一段为r+w+x的值,最大777,见下图二、权限在何时使用目录写权限:可

2015-01-12 19:37:12 7316

原创 SVN分支和标记用法

使用SVN+Eclipse做软件版本控制,介绍分支和标记用法 1,SVN目录结构Trunk : 主干目录,此目录下的文件为基准文件Branches : 用于开发的分支目录Tags : 用于发布的版本目录 下图是基于eclipse svn repositores查看的目录结构(图片1 : 目录结构)2,分支的版本

2014-12-23 14:13:57 22015 1

原创 Apache日志优化

apache运行时会记录其处理的所有请求的相关信息.同时,也会记录在处理过程中发生异常状况的相关信息.服务器可以用多种格式将与请求相关的活动信息记录在多个日志文件中,不过却只能记录一份错误信息.关于活动记录,它是在请求完成被处理后才会对日志内容进行写入.如一个大文件的上传,它是在文件上传完后才写入日志的.而错误信息是在错误发生时就写入.当然,错误的发生也是一瞬间的事.不会出现请求那

2014-11-19 17:05:51 2310

转载 Nginx配置性能优化

大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个常规安装的nginx对你的网站来说已经能很好地工作了。然而,如果你真的想挤压出Nginx的性能,你必须更深入一些。在本指南中,我将解释Nginx的那些设置可以微调,以优化处理大量客户端时的性能。需要注意一点,这不是一个全面的微调指南。这是一

2014-11-11 12:00:11 596

转载 Nginx中如何限制某个IP同一时间段的访问次数

如何设置能限制某个IP某一时间段的访问次数是一个让人头疼的问题,特别面对恶意的ddos攻击的时候。其中CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,也是一种常见的网站攻击方法,攻击者通过代理服务器或者肉鸡向向受害主机不停地发大量数据包, 造成对方服务器资源耗尽,一直到宕机崩溃。   cc攻击一般就是使用有限的ip数对服务器频繁发送数据来达到攻击的目的

2014-08-09 21:27:18 2239

原创 VS2012开发cocos游戏遇到问题汇总

1、编译成android时,需要修改jni/android.mk,每个cpp都修改一下太麻烦,可以让他自动识别。# 遍历目录及子目录的函数 define walk $(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e))) endef # 遍历Classes目录 ALLFILES

2014-08-05 14:19:11 1699

原创 Linux IO工具 iotop的替代品iopp

iotop无疑在linux IO检测上是个不错的工具,但苦于要求内核版本和Python版本,不少朋友放弃了,我也是。偶然间找到了iopp,用c写的,这个跟iotop是一个作用,nice!给大家分享下安装方法很简单,首先复制下面源代码保存为iopp.c文件#include #include #include #include #include #include #incl

2014-06-25 20:05:57 4251 1

原创 apache 优化配置 prefork模式

(一)prefork模式下(其他模式下不适用),apache需要优化的主要参数: ServerLimit 3000 StartServers 750 MinSpareServers 5 MaxSpareServers 100 MaxClients 3000 MaxRequestsPerChild 10000 首先来看看apache各个参数的意义(引号里引用的是官方文档的

2014-06-25 20:00:14 4549

原创 Android 混淆proguard的实现(图文)

1、  在Eclipse中的工程编译运行后,在目录bin下面有生成一些文件,其中classes.dex是未经过混淆生成的。而我们要混淆的话,就要重新生成一个混淆过的classes.dex。本文主要讲怎样手动生成混淆proguard。2、  生成一个混淆过的classes.dex:要先对目录bin下面的classes目录(在Eclipse中看不到,系统文件管理中可查看)的class文件打包成

2014-04-25 10:59:49 5492

原创 自己写 android 多渠道打包工具 可打包libs和.so文件

android应用上传时,需要区分开每个渠道。一般都会在配置文件中更改一个渠道id,如果有多个渠道,手动修改并生成apk的话会非常麻烦,而且增大出错概率。在这分享一个打包工具类。网上也有类似的,我是在它的基础上做的优化,特别是打包so文件,一句小小的命令废了好大劲。我们项目中使用的umeng做统计分析工具, umeng在分渠道打包的时候需要修改manifest.xml中的  value

2014-04-25 10:50:33 9703 14

转载 Android APK反编译图文详解

这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程。在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是一种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。一、反编译Apk得到Java源代码首先要下载两个工具:dex2jar和JD-GUI前者是将apk中的cla

2014-04-25 10:38:19 976

原创 cocos2dx 基本动作、动画详解

便于大家做动画嘞,直接上代码了bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } CCSprite * sp= CCSprite::cre

2014-04-25 10:32:28 8750

原创 中国国家气象局天气预报接口

中国国家气象局天气预报接口总共提供了三个:http://www.weather.com.cn/data/sk/101010100.htmlhttp://www.weather.com.cn/data/cityinfo/101010100.htmlhttp://m.weather.com.cn/data/101010100.html最详细的信息来自第三个接口。

2014-02-27 18:33:54 6642 2

转载 apache性能调优

性能测试简介即压力测试,就是根据一定数量的VU(Virtual Users)我称为并发用户操作核心交易后,系统所能达到的最大瓶劲,以便于发现系统的极限、有没有Outof memory这样的问题存在以及相关的系统设置、配置是否搭挡的合理的一种测试。一般商业的比较好的用LoaderRunner,如果没钱的就用Opensource的Jmeter来模拟这个VU的操作。压力测试,存在

2013-12-09 23:06:16 14082 3

原创 linux下IPTABLES配置详解

如果你的IPTABLES基础知识还不了解,建议先去看看.开始配置我们来配置一个filter表的防火墙.(1)查看本机关于IPTABLES的设置情况[root@tp ~]# iptables -L -nChain INPUT (policy ACCEPT)target       prot opt source                 destination     

2013-09-17 11:18:30 992

原创 apache日志 LogFormat参数说明

在apache的配置文件httpd.conf里默认有这么一句配置logformat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" common 这是APACHE的日志记录格式设置,那么这种格式里的各个参数都代表什么意思呢,下面看一下具体的参数说明:请求本身的情况将通过在格式字符串中放置各

2013-09-06 12:02:18 6918

原创 Android自定义图形,图形的拼接、叠加、相容

直接上Xfermode子类:AvoidXfermode  指定了一个颜色和容差,强制Paint避免在它上面绘图(或者只在它上面绘图)。PixelXorXfermode  当覆盖已有的颜色时,应用一个简单的像素XOR操作。PorterDuffXfermode  这是一个非常强大的转换模式,使用它,可以使用图像合成的16条Porter-Duff规则的任意一条来控制Paint如何与已有的Ca

2013-07-01 16:12:03 3109

原创 apache自带的ab压力测试工具用法详解

ab是apache自带的一个很好用的压力测试工具,当安装完apache的时候,就可以在bin下面找到ab 1 我们可以模拟100个并发用户,对一个页面发送1000个请求./ab -n1000 -c100 http://www.baidu.com 其中-n代表请求数,-c代表并发数 返回结果:##首先是apache的版本信息 This is ApacheBench

2013-05-23 13:54:36 29924 1

转载 利用jquery的imgAreaSelect插件实现图片裁剪示例

利用jquery的imgAreaSelect插件实现图片裁剪示例将用户上传的图片进行裁剪再保存是现在web2.0应用中常常处理的工作,现在借助jquery的imgareaselect插件再配合PHP的GD库就可以轻松的实现这个在以前来说非常棘手的功能。我们来看看它的实现步骤:1、包含进CSS文件(imgareaselect-default.css)和 jquery.imgareaselec

2013-04-21 15:13:33 3449 1

原创 详解Linux内存使用信息

命令:free -m(-m的意思是M字节来显示内容) total used free shared buffers cachedMem: 1002 769 232 0 62 421-/+ buffers/cache: 2

2013-02-21 10:49:41 1200

原创 细谈MySQL配置的优化

最近一直在研究mysql 的优化设置,网上有很多的文章教怎么配置MySQL服务器,但考虑到服务器硬件配置的不同,具体应用的差别,那些文章的做法只能作为初步设置参考,我们需要根据自己的情况进行配置优化,好的做法是MySQL服务器稳定运行了一段时间后运行,根据服务器的”状态”进行优化。mysql> show global status;可以列出MySQL服务器运行各种状态值,另外,查询

2013-02-20 17:13:24 1021

简易的图书管理系统——.net版,可任意修改、扩展

简单的图书管理系统,可以任意修改,也可以扩展得很庞大哦

2011-08-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除