- 博客(175)
- 资源 (5)
- 收藏
- 关注
原创 <3> go 枚举
在go语言中,没有直接支持枚举的关键字,也就造成go没有直接枚举的功能。但是go提供另一种方法来实现枚举,那就是const+iota// 实现枚举例子type State int// iota 初始化后会自动递增const ( Running State = iota // value --> 0 Stopped // value --> 1 Re
2015-11-19 18:14:21
1775
原创 vim recording功能介绍
使用vim时无意间触碰到q键,左下角出现“recording”这个标识,觉得好奇,遂在网上查了一下,然后这是vim的一个强大功能。他可以录制一个宏(Macro),在开始记录后,会记录你所有的键盘输入,包括在insert模式下的输入、正常模式下使用的各种命令等。具体使用:第一步:在正常模式下(非insert模式、非visual模式)按下q键盘第二步:选择a-z或0-9中任意一个作为缓冲器的名字,准备开
2015-11-19 15:40:48
1007
原创 <2> go -反射-函数map化
代码编程中,用方法调用匹配名字的函数,非常有效利用go的反射机制可以实现import ( "errors" "fmt" "reflect")func foor() { fmt.Println("Start->foor()")}func say(number int) { fmt.Printf("This text is %d", number)}fun
2015-11-18 23:04:01
2052
原创 git alias 自定义命令
1.将git add -A 和 git commit -m “����“结合成一行命令git config --global alias.ac '!git add . && git commit'2.再结合一个git pushgit config --global alias.ac '!git add . && git commit -m "哈哈" && git push'写到这里我tm也尿了。
2015-11-18 21:03:24
3850
原创 <1> go 继承
1 方法的继承在go中没有继承的关键字,但是我们可以通过interface这个类型做出继承的效果,看如下代码,Car就继承了Start和Stop这两个方法import ( "fmt")type Engine interface { Start() Stop()}type Car struct { Engine}func (this *Car) Start() {
2015-11-16 16:17:58
995
原创 并发-基础
解决什么问题1.为了让代码运行得更快,单纯依靠更快的硬件已无法满足要求,我们需要利用多核,充分发掘应用程序并发的潜力。 2.并发优势:解决问题的速度往往比单核串行程序快得多。 3.缺点:数据一致性。共享数据缺乏原子操作,带来数据不同步的问题。概念并发:同一个时刻,应对多件事情的能力。 并行:同一个时刻,处理多件事情的能力。 例子:班级制作一批红花。老师收到任务后,让5位同学挺身而出,接受了这
2015-11-16 14:04:48
559
转载 配置 VIM 的 Go 语言开发环境
本文是针对像我这样的 VIM 小白而写的,所使用的 VIM-GO 插件虽然步骤简单但不够详细,特写此文以做记录和分享。欢迎各位大神纠正补充!特别说明 本博文不是 Go 语言环境搭建教程,只是 VIM 插件部分的配置教程。如果需要了解如何下载及安装 Go 语言,请移步 配置 Go 语言开发环境 的前半部分。VIM 插件地址:github.com/fatih/vim-go为了方便墙内用户,本博文所有要下
2015-10-22 23:44:13
673
原创 Mac上,执行定时脚本:launchctl
1.编写脚本 task_1.sh,并确保有权限能执行这个脚本echo 'nihao'#执行其他脚本python xxx.py2.编写定时任务文件cn.zhong.task.plist<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.appl
2015-10-15 16:41:34
6056
转载 MySQL存储过程详解 mysql 存储过程
mysql存储过程详解 1. 存储过程简介我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。 一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制
2015-10-08 13:31:36
334
原创 redis mac版服务优化
To have launchd start redis at login: ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents Then to load redis now: launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist Or,
2015-09-29 10:42:15
723
原创 git生成ssh key及本地解决多个ssh key的问题
有的时候,不仅github使用ssh key,工作项目或者其他云平台可能也需要使用ssh key来认证,如果每次都覆盖了原来的id_rsa文件,那么之前的认证就会失效。这个问题我们可以通过在~/.ssh目录下增加config文件来解决。下面以配置搜狐云平台的ssh key为例。第一步依然是配置git用户名和邮箱git config user.name "用户名"git config user.
2015-09-14 12:59:59
3606
转载 多线程Junit单元测试用例 - GroboUtils
本文出自One Coder博客,转载请务必注明出处: http://www.coderli.com/archives/multi-thread-junit-grobountils/ 写过Junit单元测试的同学应该会有感觉,Junit本身是不支持普通的多线程测试的,这是因为Junit的底层实现上,是用System.exit退出用例执行的。JVM都终止了,在测试线程启动的其他线程自然也无法执行。Ju
2015-09-11 13:24:05
822
原创 JAX-WS(二)- client
新建一个java project工程进入工程目录cd xxx/workspace/jaxws-client利用wsimport命令wsimport -keep -d bin -s src http://localhost:8080/jaxws-server/userService?wsdl 会自动生成客户端代码 4. 测试
2015-09-07 17:38:16
664
原创 jax-ws (1) cllient
JAX-WS的官方网站,大家可以在这里下载JAR包:https://jax-ws.java.net/构建maven项目jaxws-server 项目结构如下: pom.xml:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2015-09-07 14:29:18
591
原创 git 拉取分支
一、远程仓库有master和dev分支 1. 克隆代码 到本地 git clone https://github.com/master-dev.git 2. 查看所有分支 git branch –all 默认有了dev和master分支,所以会看到如下三个分支 master[本地主分支] origin/master[远程主分支] origin/dev[远程开发分支] 新克隆下来的代码默
2015-09-06 12:28:14
13021
原创 scala (6)柯里化
这类似于Java里的build模式。一般的函数定义:def add(x :Int, y :Int) = { x + y}add(1,2)还有一种普通的函数定义:def add(x :Int) = (y :Int) => x+yadd(1)(2)而 柯里化后的函数定义:def add(x :Int)(y :Int) = x + yadd(1)(2)
2015-09-05 12:39:22
456
原创 scala (5) 填鸭模式
填鸭子模式,也就是规范了传入的参数为类时,此类需要有制定的方法。# 这里传入closeAble类,类需要有close方法def withClose(closeAble: { def close(): Unit }, op: { } => Unit) { closeAble.close() }# 包含close方法class Connection { de
2015-09-04 18:06:40
501
原创 scala (4) class类
在scala中,有class/object/trait class就是一个简简单单的类 object是单例类 trait相当于接口实现类,一个类可以实现多个实现类# 定义一个Persion类class Persion(val firstName: String, val lastName: String) { # 成员属性 private var _age = 0 #
2015-09-04 16:47:03
358
原创 scala (3)传参
scala传参有两种方式 第一种:变量:类型val logEnable = falsedef log(msg: String) = if (logEnable) println(msg)val MSG = "programing is running"# 程序会在1 / 0这个报空指针# java.lang.ArithmeticException: / by zerolog(MSG
2015-09-04 16:40:07
577
原创 scala(2)借贷模式
根据scala函数能作为参数进行传递的方法,我们很容易作出一些很不错的封装。第一个例子def withInt(x: Int, f :Int => Int): Unit = { println(f(x))}def add(x: Int) = { x+2 }withInt(10, add)第二个例子import scala.reflect.io.Fileimport java.util.Sca
2015-09-04 16:32:36
870
原创 scala(1)函数
在scala中,倡导函数式编程,所以在scala世界里,函数可以当作变量来使用(这真的很棒!这是对Java的一大补充啊!)# 函数赋值给变量,这对古老的class的get/set方式是个创新val squareVal = (a: Int) => a * a# 递归,将函数赋给变量def addOne(f: Int => Int, arg: Int) = f(arg) + 1println("
2015-09-04 15:42:19
302
原创 scala 基础
1.常量,变量 在scala中,使用var定义变量,val定义常量var str: String = "abc"var str = "acbd"val str: java.lang.String = "Hello again, world!"val str_1: String = "abc"val str_2 = "abcd"2.简单函数定义返回值空的函数def pFunc1(x: Int)
2015-09-04 15:23:09
333
转载 Docker 文档
安装照着官方文档 http://docs.docker.com/installation/ubuntulinux/ 做吧.一般就是:更新内核: sudoapt−getupdate sudo apt-get update sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring
2015-08-31 11:52:52
469
原创 Docker 初识-搭建tomcat
前提已经安装了docker环境新建目录纺放置镜像文件Dockerfilemkdir dockercd dockervim Dockerfile#添加如下内容到DockerfileFROM tomcat:7-jre7 #可以选择其他源docker search tomcat找到MAINTAINER "NingZhong Zeng<zengningzhong@souche.com>"##执
2015-08-31 11:50:08
511
原创 Sublime 轻量且强大的跨平台编辑器
1.常用的一些插件 1ConvertToUTF8 支持 GBK, BIG5, EUC-KR, EUC-JP, Shift_JIS 等编码的插件Bracket Highlighter 用于匹配括号,引号和html标签。对于很长的代码很有用。安装好之后,不需要设置插件会自动生效DocBlockr DocBlockr可以自动生成PHPDoc风格的注释。它支持的语言有Javascript, PHP,
2015-08-20 13:16:31
1248
原创 ActiveMQ(2) 安装
1.下载 这是官网的下载地址:http://activemq.apache.org/activemq-5120-release.html 选择对应的操作系统Downloading。 2.安装 linux用户下载,解压后的目录: 然后执行bin/activemq start 即刻启动 mac用户也可以下载后解压启动,也可以使用brew来管理。#默认安装到/usr/local/Cel
2015-08-15 15:50:03
781
原创 ActivityMQ (1) 简介
1.ActiveMQ地址 ActiveMQ官方网站:http://activemq.apache.org/ 2.ActivityMQ简介 Apache的ActiveMQ ™是最流行和最强大的开源消息传递和集成模式的服务器。速度快,支持多种跨语言客户端和协议,配有易于使用的企业集成模式,并同时完全支持JMS 1.1和J2EE 1.4许多先进的功能。 3.特征 支持多种跨语言客户端
2015-08-15 14:53:42
7973
转载 消息中间件原理及JMS简介之二
原文地址:http://www.blogjava.net/orangelizq/archive/2008/01/27/178030.html 原文作者:orangelizq 2.3 消息中间件的传递模式 消息中间件一般有两种传递模型:点对点模型(PTP)和发布-订阅模型(Pub/Sub)[2]。 1. 点对点模型(PTP) 点对点模型用于消息生产者和消息消费者之间点到点的通
2015-08-15 14:44:56
657
转载 消息中间件原理及JMS简介之一
原文地址:http://www.blogjava.net/orangelizq/archive/2008/01/27/178026.html原文作者:orangelizq摘要: 现今,越来越多的企业面临着各种各样的数据集成和系统整合,CORBA、DCOM、RMI等RPC中间件技术也应运而生,但由于采用RPC同步处理技术,在性能、健壮性、 可扩展性上都存在着诸多缺点。而基于消息的异步
2015-08-15 14:39:11
941
1
原创 JavaMelody JavaWeb下的性能监控组件
官网地址:https://github.com/javamelody/javamelody/wiki 1.介绍 JavaMelody的目的是监测在QA和生产环境的Java或Java EE应用程序。它不是一个工具来模拟来自用户的请求,它是用来测量和计算上根据由用户的应用程序的使用的应用程序的实际操作的统计信息的监控组件。 执行次数,平均执行时间和HTTP请求,SQL请求,JSF动作,Struts
2015-08-15 14:36:28
2406
转载 mac os x 设置 jenkins开机启动遇到的问题
mac os x 设置 jenkins开机启动遇到的问题设置命令取消开机启动sudo launchctl unload -w /Library/LaunchDaemons/org.jenkins-ci.plist 设置开机启动sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist 我的问题描述第一次安装jenkins之
2015-08-13 13:50:34
10805
原创 case 应用
使用例子:# 伪代码case word in pattern1) Statement(s) to be executed if pattern1 matches ;; pattern2) Statement(s) to be executed if pattern2 matches ;; pattern3) Statement(s) t
2015-08-10 11:40:35
693
原创 (1)关键指标-吞吐率
一台web服务器的并发能力的强弱,关键在于这台服务器单位时间内能处理的请求数,即吞吐率,单位“reqs/s“。所以在实际生产中,我们更加关心的是一个web服务器他能承受的最大的吞吐率,,所以我们普遍采用压力测试的方法,通过模拟足够数目的并发用户,分别持续发送一定的http请求,并统计测试持续的时间,计算出基于这种压力下的平均吞吐率。定义: 并发用户:在某个时刻同时向服务器发送请求的
2015-08-10 11:38:37
2013
原创 git project 新建
Git global setupgit config --global user.name "xxx"git config --global user.email "xxx@xxx.com"Create a new repositorymkdir web_1cd web_1git inittouch README.mdgit add README.mdgit commit -m "fir
2015-08-07 15:32:54
1947
转载 expect实现scp ssh自动输入密码登录
expect是一种自动交互语言,能实现在shell脚本中为scp和ssh等自动输入密码自动登录。 下面给出scp和ssh的使用示例: 1、scp expect -c " spawn scp root@1.2.3.4:/root/1.log /root expect { \"*assword\" {set timeout 300; send \"password\r\";}
2015-08-05 10:29:27
4316
原创 maven + gitlab工程发布操作
先声明手动部署很low!1.废话不多说,首先ssh登录远程机子。ssh sxxx@111.111.11.1password:2.找到工程目录,获取最新代码cd /xx/projectgit pull执行mvn构建工程,执行完毕后将生成war包。路径project/target/ROOT.warmvn clean installBuild successful!则才能继续执行下边的部署操作哦!3.
2015-08-04 11:24:58
3248
转载 find 命令概览
Linux下find命令在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文
2015-08-03 14:12:21
414
转载 scp - SSH远程文件/目录传输命令
相信各位VPSer在使用VPS时会经常在不同VPS间互相备份数据或者转移数据,大部分情况下VPS上都已经安装了Nginx或者类似的web server,直接将要传输的文件放到web server的目录,然后在目标机器上执行:wget http://www.vpser.net/testfile.zip 就行了。当VPS上没有安装web server和ftp server的时候或感觉上面的方法比较麻烦,
2015-08-03 14:02:36
517
转载 每天一个linux命令(28):tar命令
通过SSH访问服务器,难免会要用到压缩,解压缩,打包,解包等,这时候tar命令就是是必不可少的一个功能强大的工具。linux中最流行的tar是麻雀虽小,五脏俱全,功能强大。 tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用t
2015-08-03 13:46:19
341
转载 zsh – 給你的Mac不同體驗的Terminal!
zsh – 給你的Mac不同體驗的Terminal! zsh - 給你的Mac不同體驗的Terminal! 看到@sofish同學寫了一篇關於把Mac下的bash換成zsh的文章,那麼我也來說說我用zsh的體驗以及一些小經驗。 大部分人都偏愛使用bash,或許說偏愛有點不恰當,因為很多系統比如絕大部分的Linux發行版或者Mac OS系統都是自帶的bash,而一般人也就當做terminal來使
2015-07-31 12:14:01
473
反编译android apk
2014-04-30
java验证码 kaptcha
2014-10-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅