自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (4)
  • 收藏
  • 关注

转载 git使用tag恢复到以前的版本

前提是在每次上线后,拉取了相应的tag。这样才可以在需要时,回退到相应的tag。1、首先,查看tag列表。命令:git tag可以用下面的命令查看标签详情:git show v1.02、git show命令可以看到打tag时提交的id,我们通过这个commit id回退代码:git reset --hard 7441b8如果这个时候你立马投入与bug的战斗,修改

2017-03-02 17:53:54 24089 7

转载 深入剖析Java中的装箱和拆箱

自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。以下是本文的目录大纲:一.什么是装箱?什么是拆箱?二.装箱和拆箱是如何实现的三.面试中相关的问题一、什么是装箱?什么是拆箱?在前面的文章中提到,Java为每种基本数据类型都提供了对应的包装器类型,至于为什么会为每种基本数据类型提供包装器类型在此不进行

2017-02-13 19:44:07 308

原创 BigDecimal详解

1.引言      借用《Effactive Java》这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦。2.BigDe

2017-02-06 18:41:04 524

转载 Java 8之Optional

java.lang.NullPointerException,只要敢自称Java程序员,那对这个异常就再熟悉不过了。为了防止抛出这个异常,我们经常会写出这样的代码:Person person = people.find("John Smith");if (person != null) { person.doSomething();}遗憾的是,在绝大多数Java代码里,我们常常

2016-11-09 14:34:11 348

转载 Dubbo阅读笔记——高级功能

事件处理线程说明如果事件处理的逻辑能迅速完成,并且不会发起新的IO请求,比如只是在内存中记个标识,则直接在IO线程上处理更快,因为减少了线程池调度。但如果事件处理逻辑较慢,或者需要发起新的IO请求,比如需要查询数据库,则必须派发到线程池,否则IO线程阻塞,将导致不能接收其它请求。如果用IO线程处理事件,又在事件处理过程中发起新的IO请求,比如在连接事件中发起登录请求,会报“可能

2016-04-15 19:13:09 594

原创 Java Volatile 关键字

Volatile修饰的成员变量在每次被线程访问时,都强迫从主内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到主内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。     Java语言规范中指出:为了获得最佳速度,允许线程保存共享成员变量的私有拷贝,而且只当线程进入或者离开同步代码块时才与共享成员变量的原始值对比。     这样当多个线程

2016-04-14 16:59:37 2337

转载 Java transient关键字

转自http://horst.sun.blog.163.com/blog/static/348849612007614494492/     翻译自http://www.devx.com/tips/Tip/13726。  Java的serialization提供了一种持久化对象实例的机制。当持久化对象时,可能有一个特殊的对象数据成员,我们不想   用serializatio

2016-04-14 16:36:26 279

原创 脚本备份

echo WORKSPACE=$WORKSPACEecho JENKINS_HOME=$JENKINS_HOMEecho JOB_NAME=$JOB_NAMEIP=10.255.223.120PROGRAM_NAME=tomcat_hapiWAR_PATH=target/media-hapiSTART_SH=/usr/local/tomcat_hapi/bin/startu

2016-03-03 15:04:57 305

转载 get,put,post,delete含义与区别

POST /uri 创建DELETE /uri/xxx 删除 PUT /uri/xxx 更新或创建GET /uri/xxx 查看GET操作是安全的。所谓安全是指不管进行多少次操作,资源的状态都不会改变。比如我用GET浏览文章,不管浏览多少次,那篇文章还在那,没有变化。当然,你可能说每浏览一次文章,文章的浏览数就加一,这不也改变了资源的状态么?这并不矛盾,因

2016-02-19 10:41:18 382

转载 Java集合

有序否允许元素重复否Collection否是List是是SetAbstractSet否否HashSetTreeSet是(用二叉树排序)MapAbstractMa

2016-02-18 15:08:09 293

转载 Go语言并发与并行学习笔记(二)

Go语言的并发和并行不知道你有没有注意到一个现象,还是这段代码,如果我跑在两个goroutines里面的话:var quit chan int = make(chan int)func loop() { for i := 0; i 10; i++ { fmt.Printf("%d ", i) } quit 0}func mai

2016-02-18 14:54:45 437

转载 Go语言并发与并行学习笔记(一)

如果不是我对真正并行的线程的追求,就不会认识到Go有多么的迷人。Go语言从语言层面上就支持了并发,这与其他语言大不一样,不像以前我们要用Thread库 来新建线程,还要用线程安全的队列库来共享数据。以下是我入门的学习笔记。首先,并行!=并发, 两者是不同的,可以参考:http://concur.rspace.googlecode.com/hg/talk/concur.htm

2016-02-18 14:42:44 626

原创 beego之orm多条数据插入

有些数据库,比如MySQL支持一次性插入多条数据的语法,当然也有些数据库不支持。这里演示了两种方法,一种适用于支持多条数据插入语法的数据库,另外一个适用于不支持多条数据插入语法的数据库,两者都能实现一次性插入多条数据的功能。这里用到的两个方法:InsertMulti和PrepareInsert的原型如下:func (o *querySet) PrepareInsert() (Inserte

2016-02-03 14:38:10 11317 2

原创 beego和bee的安装、自动生成API框架

beggo是一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架。一、主要有以下几个特性:1、简单化RESTful 支持、MVC 模型,可以使用 bee 工具快速地开发应用,包括监控代码修改进行热编译、自动化测试代码以及自动化打包部署。2、智能化支持智能路由、智能监控,可以监控 QPS、内存消耗、CPU 使用,以及 goroutine 的运行状况,让您的线上应用尽

2016-02-03 13:35:51 6317 4

原创 GO面向对象:method的继承和重写

一、method的继承前面在描述struct的时候,提出了匿名字段(隐式字段)的概念,一个struct包含了一个匿名字段,那么它将继承这个匿名字段的多有字段。同样的,如果匿名字段实现了某些method,那么该struct也能调用该method。package mainimport ( "fmt")type Animal struct { eat string spark

2016-01-29 18:12:32 4034

原创 GO面向对象:method

method的语法如下:func (r ReceiverType) methodName(parameters) (results)go中的method是附属在一个给定的类型上的,他的语法和函数的声明语法几乎一样,只是在方法名之前增加了一个receiver,也就是method所依附的主体(可以面向对象中的对象理解)例如下面的例子:type Box struct { width,

2016-01-29 17:39:12 667

原创 go语言struct

一、struct结构的定义:type person struct { name string age int}这样就定义了一个person结构,name是字符串型的姓名;age是int型的年龄。二、声明一个struct的变量:var p person三、赋值:方法有三种,分别如下:1、直接赋值p.name = "xiaoming"p.age = 122、按

2016-01-29 14:40:36 709

原创 git基本命令

%%初始化一个Git仓库git init%%添加文件到Git仓库git add git commit%%查看工作区的状态git status%%查看修改内容git diff%%查看历史记录git loggit log --pretty=oneline%%回退到上一个版本git reset --hard HEAD^(在Git

2015-04-08 16:13:45 427

原创 zookeeper配置中心的实现

http://www.cnblogs.com/snake-hand/archive/2013/06/09/3129882.html

2015-04-01 20:25:54 367

原创 技术积累

最近研究的技术文章

2015-03-28 16:30:55 427

MyEclipse8下struts2简单例子,有说明。适于初学struts2者

MyEclipse8下struts2简单例子,有说明。适于初学struts2者

2010-09-10

输入法词库 txt格式 很全的

输入法词库 txt格式 格式已排好,文件读写就可得到对应的次 想要自己做输入法的必须要看看啦!

2010-03-26

ASP.NET写的简易网上聊天室(适于初学者)

ASP.NET写的简易网上聊天室(适于初学者)。功能包括用户登录,显示昵称,几个人在聊天室同时聊天。

2009-03-17

用.NET写的简易留言板(连接ACCESS,适于初学者)

用.NET写的简易留言板(连接ACCESS,适于初学者)。功能包括用户登录、用户注册、用户留言、找回遗忘密码。采用GridView控件连接数据库。

2009-03-16

空空如也

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

TA关注的人

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