自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(133)
  • 资源 (8)
  • 收藏
  • 关注

转载 通过金矿模型介绍动态规划

通过金矿模型介绍动态规划背包测试数据            对于动态规划,每个刚接触的人都需要一段时间来理解,特别是第一次接触的时候总是想不通为什么这种方法可行,这篇文章就是为了帮助大家理解动态规划,并通过讲解基本的01背包问题来引导读者如何去思考动态规划。本文力求通俗易懂,无异性,不让读者感到迷惑,引导读者去思考,所以如果你在阅读中发现有不通顺的地方,让你产生错误理解的地方,让你

2015-12-18 14:05:06 694

转载 RESTful 架构风格概述

在移动互联网的大潮下,随着docker等技术的兴起,『微服务』的概念也越来越被大家接受并应用于实践,日益增多的web service逐渐统一于RESTful 架构风格,如果开发者对RESTful 架构风格不甚了解,则开发出的所谓RESTful API总会貌合神离,不够规范。本文是我对RESTful 架构风格的一些理解,和大家分享一下,如果有问题,欢迎讨论。1. RESTfu

2015-12-17 09:50:35 987

转载 对 Go 语言的综合评价

以前写过一些对 Go 语言的负面评价。现在看来,虽然那些评价大部分属实,然而却由于言辞激烈,没有点明具体问题,难以让某些人信服。在经过几个月实际使用 Go 来构造网站之后,我觉得现在是时候对它作一些更加“客观”的评价了。定位和优点Go 比起 C 和 C++ 确实有它的优点,这是很显然的事情。它比起 Java 也有少数优点,然而相对而言更多是不足之处。所以我对 Go 的偏好在比 Ja

2015-12-16 13:31:07 1386

转载 编程的智慧

编程是一种创造性的工作,是一门艺术。精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称一天瘦十斤的减肥药,它并不能代替你自己的勤奋。然而由于软件行业喜欢标新立异,喜欢把简单的事情搞复杂,我希望这些文字能给迷惑中的人们指出一些正确的方向,让他们少走一些弯路,基本做到一分耕耘一分收获。反复推敲代码既然“天才是百分之一的灵感,百分之九十九的汗水”,那我先来谈谈这

2015-12-15 15:40:24 745 1

原创 docker Unit docker.service is masked

ailed to start docker.service: Unit docker.service is maskedystemctl unmask docker.service systemctl unmask docker.socket systemctl start docker.service

2017-04-22 13:57:44 4891

转载 Maven类包冲突终极解决小技若干

转载自:http://stamen.iteye.com/blog/2030552 Maven对于新手来说,最痛苦的一件事莫过于包之间的冲突,由于Maven的依赖传递性,当你引入一个依赖类时,其身后的依赖类也一起如过江之鲫纷至沓来了。 举个栗子 A依赖于B及C,而B又依赖于X、Y,而C依赖于X、M,则A除引B及C的依赖包下,还会引入X,Y,M的依赖包(一般情况下了,Maven可通过等若干种方式控制传

2016-12-24 22:14:19 1069

转载 单例模式的几种写法

转载自:http://cantellow.iteye.com/blog/838473 第一种(懒汉,线程不安全):Java代码 收藏代码 public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance

2016-12-23 22:34:42 563

转载 持续集成:Jenkins安装--基于Ubuntu16.04

前提条件:Java安装Jenkins基于Java, 所以需要先安装java。 Linux下安装java只要配置java环境变量即可。 首先,解压java到相应目录,我一般习惯把安装的软件放到目录/usr/local下。tar -zxvf jdk-8u65-linux-x64.tar.gz /usr/local 1 1 编辑环境变量,在/etc/profile文件中添加环境变量,Linu

2016-12-12 23:40:56 526

原创 RabbitMQ Cluster操作

sudo ./rabbitmqctl -n rabbit@ubuntu stop_appRABBITMQ_NODE_PORT=5672 RABBITMQ_NODENAME=rabbit ./rabbitmq-server -detached RABBITMQ_NODE_PORT=5673 RABBITMQ_NODENAME=rabbit_1 ./rabbitmq-server -detached

2016-11-09 23:41:59 570

转载 mysql5.7.16安装

截止2016/10/16 最新版本mysql为5.7.16,之前写过一篇APMW搭建的文章(传送门:http://www.cnblogs.com/airoot/p/4131906.html)里面介绍的安装mysql方法部分已经不适合于新的版本。因此重新开帖。Mysql社区版下载地址:http://dev.mysql.com/downloads/mysql/因为我的系统版本是64,因此这里下载x64版

2016-11-01 10:13:04 594 1

原创 Jquery获得控件值

<html> <head> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <script src="http://code.jquery.com/jquery-1.8.0.min.js"></script> <script>

2016-10-25 13:29:39 405

转载 利用jquery操作Radio方法小结

在开发中经常会用到Radio来实现用户的选择效果,我在项目中积累了一些利用JQUERY来操作Radio的方法,在这里分享一下,供有需要的朋友借鉴。 1、改变radio的选择,触发一些效果 复制代码 代码如下:$(“input:radio[name=’dialCheckResult’]”).change(function (){ //拨通 alert(“123”); });2、让页面中所有的r

2016-10-24 16:09:37 858

原创 解析格式化txt文件为对象

package txt;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.HashMap;import java.util.

2016-10-14 09:13:12 642 1

原创 Intellij Idea actiBPM

[email protected] The charcter encoding of the plugin was wrong.At least the chines character cann’t print correct.Can I do something to slove this problem?Or,this plugin doesn’t support chinese charac

2016-09-26 16:14:00 7986

翻译 the java syncrhonisers

原文:https://www.javacodegeeks.com/2016/08/the-java-syncrhonisers.html 线程通信主要发生在共享字段河对象的时候。尽管这样做非常的有效,但这种通信方式,容易发生线程阻塞河内存一致性问题。Synchronization是一个防止这些问题的工具。 然而synchronization并不是完美的,它会带来隐患档当试图获得一个正在被其他线程

2016-09-13 18:00:08 499

转载 golang的select典型用法

转载自:http://yanyiwu.com/work/2014/11/08/golang-select-typical-usage.html golang 的 select 的功能和 select, poll, epoll 相似, 就是监听 IO 操作,当 IO 操作发生时,触发相应的动作。示例:ch1 := make (chan int, 1) ch2 := make (chan int,

2016-05-11 15:53:25 938

转载 vim设置tab

在.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格: set ts=4 (注:ts是tabstop的缩写,设TAB宽4个空格) set expandtab对于已保存的文件,可以使用下面的方法进行空格和TAB的替换: TAB替换为空格: :set ts=4 :set expandtab :%retab!空格替换为TAB: :set ts=4 :set noexpa

2016-05-11 15:43:02 542

原创 stackoverflow一个很好的golang closure example

package mainimport "fmt"func makeIterator(s []string) func() func() string { i := 0 return func() func() string { if i == len(s) { return nil } j := i

2016-05-10 18:21:02 852

原创 go closure

// Go supports anonymous functions, // which can form closures. // Anonymous functions are useful when you want to define // a function inline without having to name it.package mainimport “fmt”// Th

2016-05-10 18:03:39 614

转载 uninstall wine

1.在终端里输入: sudo apt-get remove wine 即可卸载wine 2.然后再输入: rm -r ~/.wine 3.卸载残留不用得软件包,输入: sudo apt-get autoremove 即可彻底删除wine。 但我们在用wine卸载一些windows程序后,可能在“应用程序”-“其它”菜单里还残留着它的图标,我们可以通过以下方式把它彻底清除掉: 1.首

2016-05-10 17:37:20 538

转载 Go语言,Docker和Kubernetes

转载自:http://www.yinwang.org/blog-cn/2016/03/27/docker 当我嘲笑Go语言的时候,有些人跟我说,你说Go语言是垃圾,可是你看像Docker和Kubernetes之类的云计算项目,为什么是Go语言写的呢?其实答案很简单:这些东西并不是非得用Go语言写才可以,用其他语言实现它们其实并没有什么问题,只不过它们碰巧是用Go语言写的而已。Docker和Kube

2016-05-10 17:06:33 2792 4

原创 dpkg卸载.deb包

dpkg l|grep %package% Find it and kill it.

2016-05-10 10:58:51 880

转载 Ubuntu 安装 .bundle 文件

本文出自 “遥望见烟火” 博客,请务必保留此出处http://wuyongzhiyi.blog.51cto.com/4461300/1059292 一、.bundle 文件比较特殊,只有在给它了执行权限后才能执行安装操作。所以安装的第一步就是给 .bundle 文件添加执行权限。介绍两种方法: 1、在 *.bundle 文件上右击鼠标,选择最后一项“属性” 选项,在弹出的“属性”窗口中选择“权限

2016-05-10 10:56:55 20656

原创 linux常用命令

1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序。 ps -A 显示所有程序。 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 ps -e 此参数的效果和指定”A”参数相同。 ps e 列出程序时,显示每个程序所使用的环境变量。 ps

2016-05-09 17:26:33 395

原创 git代码提交

代码提交 代码提交一般有五个步骤: 1.查看目前代码的修改状态 2.查看代码修改内容 3.暂存需要提交的文件 4.提交已暂存的文件 5.同步到服务器 1. 查看目前代码的修改状态 提交代码之前,首先应该检查目前所做的修改,运行Git status命令 a) 已暂存 (changes to be committed)new file //表示新建文件 modi

2016-04-27 20:38:39 357

原创 git

git其实是是一个不用网络的仓库(本地仓库),你也可以把数据push到github上(远程仓库)。 你现在的pull和push都是本地版本库和远程仓库之间的数据交互。 在你的本地仓库,其实是由两部分组成:工作区 (Working Directory) //看得见的版本库 (Repository) //看不见的 暂存区(Stage) 分支 (branch)版本库包含暂存区和分支

2016-04-27 20:37:46 413

原创 介绍 GDB 调试 Go

在过去的 4 年中,我花了我绝大部分的时间用来写,读以及调试 Python 或 JavaScript 代码。在学习 Go 的过程中,像穿着一双有小石子的鞋子在美丽的山中远行。很多事情给我留下了深刻的印象,但是使用 println 调试我的代码在过去走的太远了。在 Python 中,当代码在运行的时候,我们使用 pdb/ipdb 调试它,JavaScript 提供了类似的工具。在这些年中,这个模式已经

2016-04-26 15:56:11 509

原创 go语言的GDB调试入门初级

之前看go,教程顺了一遍下来,感觉不是很难,最近在做一件事情的时候发现自己当时实在是太天真了。废话不多说,直奔主题,由于学习中免不了要调试代码,所以就找了一下网上出来的IDE,发现两个,一个是go的一个是liteIde,感觉都不是很好用。前者进去之后完全不知所云,后者在我的测试代码中不知道怎么进行调试。也许是我无形比较挫,不管怎样,不想再折腾了,我也不能要求所有的IDE和XCode一样傻瓜不是。索性

2016-04-26 15:45:55 4976

原创 快速排序的思路

一趟快速排序的算法是: 1)设置两个变量i、j,排序开始的时候:i=0,j=N-1; 2)以第一个数组元素作为关键数据,赋值给key,即key=A[0]; 3)从j开始向前搜索,即由后开始向前搜索(j–),找到第一个小于key的值A[j],将A[j]和A[i]互换; 4)从i开始向后搜索,即由前开始向后搜索(i++),找到第一个大于key的A[i],将A[i]和A[j]互换; 5)重复第3

2016-04-14 15:30:50 572

原创 调试代码的一些感悟

1,遇到分支要引起注意,加上断点。这一点很明白,但一直也没能引起重视; 2,在调试代码时不要对他人的代码太自信。即使是在运行的多时的,进过无数次”测试”并只有极少数时候出 错的系统里; 3,自己现在还处于需要大量学习的阶段,需要大量的阅读优秀代码; 4,自己太轻浮了,不够认真。

2016-04-01 10:55:50 476

原创 happens-before规则

jmm把happens-before要求禁止的重排序分为下面两类: 1,会改变程序执行结果的重排序。 2,不会改变程序执行结果的重排序。 jmm对这两种不同性质的重排序,采取了两种不同的策略,如下: 1,对于改变程序执行结果的重排序,jmm要求编译器和处理器必须禁止这种重排序。 2,对于不会改变程序执行结果的重排序,jmm对编译器和处理器不做要求(jmm允许这种重排序)。jmm知识遵循一个

2016-03-23 11:09:37 631 1

原创 final域的内存语义

对于final域,编译器和处理器要遵守两个重排序规则。 1,在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序。 2,初次读入一个包含final域的对象的引用,与随后初次读这个final域,这两个操作之间不能重排序。

2016-03-22 14:11:59 1055

原创 锁释放和锁获取的内存语义

锁释放与volatile写有相同的语义 锁获得与volatile读有相同的语义 1,线程A释放一个锁,实质上是线程A向接下来要获取这个锁的某个线程发出了(线程A对共享变量所做修改的)消息。 2,线程B获取一个锁,实质上是线程B接收了之前某个线程发出的(在释放这个锁之前对共享变量所做修改的)消息。 3,线程A释放锁,随后线程B获取这个锁,这个过程实质上是线程A通过主内存想线程B发送消息。

2016-03-21 17:34:45 450

原创 volatile变量特性

1,可见性。对一个volatile变量的读,总是能看到(任意线程)对这个volatile变量最后的写入。 2,原子性。对任意单个volatile变量的读/写具有原子性,但类似于volatile++这种复合操作不具有原子性。

2016-03-21 13:50:09 768

转载 一些java代码编程规范

1. 命名驼峰命名class命名尽量表达含义,尽量使用常用单词非static的方法和变量,使用驼峰命名static的方法,使用驼峰命名static的变量,尽量使用大写,以下划线区分单词 2. 代码格式化统一代码格式化,导入格式文件每次写一部分代码后按ctrl+shift+f格式化代码,ctrl+shift+o重新组织impor

2016-03-02 13:44:33 506

转载 解决Sublime Text 3中文显示乱码(tab中文方块)问题

一、文本出现中文乱码问题1、打开Sublime Text 3,按Ctrl+~打开控制行,复制粘贴以下python代码,然后回车运行。2. 复制并粘贴如下代码:Python代码  import urllib.request,os,sys; exec("if sys.version_info ); pr='Preferences.sublime-settin

2016-03-02 10:43:16 1929

转载 解决Sublime Text 2中文显示乱码问题

欲解决问题,关键在于让Sublime Text 2支持GB2312和GBK。步骤如下:    1.安装Sublime Package Control。       在Sublime Text 2上用Ctrl+~打开控制台并在里面输入以下代码,Sublime Text 2就会自动安装Package Control。[html] view plain?

2016-03-01 22:47:50 369

转载 MVC,MVP 和 MVVM 的图示

作者: 阮一峰日期: 2015年2月 1日复杂的软件必须有清晰合理的架构,否则无法开发和维护。MVC(Model-View-Controller)是最常见的软件架构之一,业界有着广泛应用。它本身很容易理解,但是要讲清楚,它与衍生的 MVP 和 MVVM 架构的区别就不容易了。昨天晚上,我读了《Scaling Isomorphic Javascript C

2016-03-01 10:24:28 594

转载 Tomcat的Session管理(二) - Session后台处理

Tomcat会开启一个后台线程每隔一段时间检查Session的有效性,这个线程是在Tomcat启动的时候当StardardEngine启动时随之启动的。可以参看StardardEngine的基类ContainerBase的#threadStart()方法:Java代码  protected void threadStart() {      if (thread != 

2016-02-04 11:26:17 530

转载 Tomcat的Session管理(一) - Session的生成

Session对象的创建一般是源于这样的一条语句:Session session = request.getSession(false);或者Session session = request.getSession();如果不在乎服务器压力可能多那么一点点的话。在Tomcat的实现中,这个request是org.apache.catalina.connector.Request类的包装

2016-02-04 11:24:20 456

Intellij IDEA教程

Intellij IDEA教程

2015-12-22

背包测试数据

背包测试数据

2015-12-18

Cocos2d-X 3.4版-游戏继续,游戏重新开始,回到主界面的实现《赵云要格斗》

Cocos2d-X 3.4版-游戏继续,游戏重新开始,回到主界面的实现《赵云要格斗》

2015-02-05

Cocos2d-X 3.3版-怪物的AI《赵云要格斗》

Cocos2d-X 3.3版-怪物的AI《赵云要格斗》

2015-02-04

lua游戏开发基础

lua游戏开发基础

2014-12-05

Object C设计模式

ios开发设计模式,进阶读物,不太适合初学者,但看看也无妨

2014-07-25

php基础教入门必备

php基础教,入门必备.讲解详细,非常经典,可以了结php的大概

2012-02-29

Discuz_6.0.0_SC_GBK.rar

Discuz_6.0.0_SC_GBK.rar

2012-02-29

空空如也

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

TA关注的人

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