自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(152)
  • 收藏
  • 关注

乐观锁不乐观,悲观锁不悲观

写博客的人可能越来越少了,先mark下吧,后期补。 

2017-08-29 17:12:19 168

Spring shell的使用

工作这么多年了,权且大胆的预测,现在绝大部分java项目都在用Spring,大家对Spring 的理解还一直是AOP和IOC和Spring MVC的知识吧,其实Spring早就做了重构,在IOC的基础(Spring Context)上做了很多有用的东西,Spring Shell就是这样一个东西。 Spring Shell可以让你的项目很轻松的支持命令行的功能,可能有些人还觉得比较抽象,这...

2016-06-24 18:04:15 627

MongoDB 入门指南(JAVA Driver 版 官网教程)

本文总结来自MongoDB 的java版本的Driver(驱动) api入门指南官网地址:https://docs.mongodb.org/getting-started/java/client/ MongoDB 一个开源的文档型数据库 ,提供高性能,高可用,自动切片的特性。 准备工作首先我们需要下载一个MongoDB,我嫌麻烦就下载了一个社区版本,编译好的解压就能用。...

2016-04-14 16:32:57 429

juc 下的集合之二 (ConcurrentHashMap)(JDK1.8版本)

为什么要再写一篇ConcurrentHashMap的文章,有下面几个原因:1. jdk1.8 和我上次写的1.6版本的在实现上差距很大,我也是今天看了下才发现,去年又一次去面试刚好问道这个地方了,我就胸有成竹的回答了有关同步,锁,效率的问题,今天一看基本全错了。2. 上次写的文章有点笼统,没有触及到问题的根本,只是在代码层面走了流程,这次我需要把没完成的问题一一解决。 所以此文...

2016-03-19 14:27:53 245

利用 Nginx 做Http 负载均衡

本文大部分内容来自如下链接的官方文档,如果有感兴趣的可以直接阅读。http://nginx.org/en/docs/http/load_balancing.html-------------------------------------------------------------------------------------在多个应用实例间进行负载均衡是优化资源利用率,增大吞...

2016-03-18 15:55:00 117

Nginx 入门手册 (Beginner’s Guide)

翻译来自官方文档,首先感谢nginx 的作者,然后感谢官方文档吧。以下是官网地址,英文还可以的直接去看原文吧。 http://nginx.org/en/docs/beginners_guide.html------------------------------------------------------------------------------------这篇手册给出了...

2016-01-16 17:37:32 128

原创 Spring Mybatis 配置Mysql主从库

之前有写过在linux上搭建多个mysql实例,然后又写了一篇多个mysql之间如何配置主从,现在终于到了如何使用的时候了,这篇文章就说明了,如何在程序中,而且是在通常的项目结构(基于Spring构建的项目中)中如何使用。 一、说说原理简单的不能再简单了,配置多个datasource ,不同的方法使用不同的datasource。比如说,来自主库的datasource1,来自从库的d...

2016-01-16 13:31:12 461

Mysql 主从

上一篇博文已经说明了,如何在一台linux机器上安装多个mysql实例,如果不清楚可以参照上一篇的博文来完成,这篇文章就介绍如何在两个实例配置主从。 这个文章涉及到的两个数据端口分别为3398, 3399 对应的安装目录分别为/usr/local/mysql3398, /usr/local/mysql3399 ,这里我让3399作为主库,3398作为从库。 1. 修改主库设置。...

2015-12-23 14:36:08 98

Linux 安装多个mysql

Linux 安装多个MYSQL。 老规矩说下环境,linux 版本:centos 6.5mysql 版本:mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz 1. 首先解压tar -zxvf mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz 2. 拷贝解压后的目录到/usr/local 下...

2015-12-22 19:48:52 152

zabbix 安装和基本使用

 zabbix 是一个分布式的监控系统。 此文是按照官网的下面网址,实现的。https://www.zabbix.com/documentation/2.0/manual/installation/install_from_packages 说下系统配置操作系统:阿里云的机器, centos release 6.5 (Final)如果不知道什么版本可以通过命令 ...

2015-12-21 17:05:56 125

Ant 利用jcraft实现自动化打包, 和启动服务

  之前我有写过ant的基本使用,以及一些常用配置,如果这些不懂,可以参考下本人的前些年写的文章   Ant的基本使用 以及Ant的常用配置     这篇文章主要讲如何利用jcraft来完成ant的远程拷贝文件以及执行远程脚本的功能来完成我们在项目中实现自动部署的一些事情。     首先介绍下JCraft,它是纯java实现的SSH2, 较高版本的ant就用到了这个库。我们...

2015-11-18 14:33:13 156

Mybatis 事务源码分析

Mybatis是一个支持自定义SQL语句,存储过程,高级映射的数据持久化框架。 它封装了JDBC,在框架中隐藏了几乎所有的JDBC的API,这里说下从源码的角度Mybatis 3.x (笔者用的是3.2.8)是如何封装JDBC来实现事务处理的。 回忆下mybatis是怎么使用事务管理的,session.commit(),session.rollback(), JDBC呢,是con...

2015-10-19 11:32:55 81

事务处理之二(编程中的事务)

这篇文章主要介绍在我们开发过程中怎么处理事务,当然编程语言仅限java.文章内容会从不使用任何框架直接用jdbc怎么处理事务,到使用mybatis,hibernate逐一讲解。 一、JDBC事务。       JDBC事务是通过Connection对象来完成事务的,主要的逻辑如下//得到Connection对象后,设置不自动提交conn.setAutoCommit(fa...

2015-10-16 16:55:55 110

原创 事务处理之一(事务概述)

       这里谈的事务是编程中的一个术语,特别是发生在数据库中,指的是单个逻辑工作单元执行的一系列操作,同步发生数据更新时,防止数据的不一致。       事务有考试常考的四个特性:ACID,为了表示我想做一个有知识有文化有理论的程序员,我准备再拷贝下这些解释。      原子性 (Atomicity)事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行...

2015-10-16 15:04:41 158

REST 图片流

写了个Spring rest 风格的 图片加载。package cn.tang.demo.controller.image;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import javax.servlet.ServletOutputStream;i...

2015-09-18 21:57:30 601

HttpClient 使用

Apache 的HttpClient 提供很多工具让开发者使用,其中常用的一种是调用http的请求,下面代码就是模拟了http的post和get请求。package cn.tang.test.demo.httpclient;import java.io.IOException;import org.apache.commons.httpclient.DefaultHttpMe...

2015-09-06 20:23:49 73

找工作从做好面试开始六

ps. 此文旨在纪录本人面试的经历,如有对文中的人或者公司有所冒犯,请海涵,不能接受者请mail我,说明情况,我将删掉相关文章真的是学无止境,这次主要想总结下,近两次面试遇到的一些很细致的问题吧。 1. jvm 中垃圾回收有哪些种类,分别有什么区别?2. java线程有哪些状态,分别是什么,如何在运行环境中打出线程状态信息?3. java中的锁有哪些,他们是怎么实现的?4...

2015-07-28 22:59:40 130

找工作从做好面试开始五

ps. 此文旨在纪录本人面试的经历,如有对文中的人或者公司有所冒犯,请海涵,不能接受者请mail我,说明情况,我将删掉相关文章ps. 面试了几次之后发现大家问的都差不多,知识点都在以下几个方面1. 以hashmap为代表的集合数据结构2. 以memcache 和 redis为核心的缓存架构3. 偶尔让你说下多态的概念和理解4. 举出几个设计模式的情况5. servlet...

2015-07-24 10:25:30 121

找工作从做好面试开始四

 ps. 此文旨在纪录本人面试的经历,如有对文中的人或者公司有所冒犯,请海涵,不能接受者请mail我,说明情况,我将删掉相关文章 下午三点多到的这家公司,去的时候面试的人有些忙,于是就找个地方坐了下来,四处看看。创业初期的公司,条件稍微有些艰苦,不过还好,竞争力这么大,想做好不吃点苦怎么行,我这来回面试不是也在吃苦吗? 大概等了20分钟吧,面试开始了。“简单说下之前都做了些什...

2015-07-24 09:42:17 102

找工作从做好面试开始三

     ps.改了个文章题目:)之前是《羊年第三面》     ps. 此文旨在纪录本人面试的经历,如有对文中的人或者公司有所冒犯,请海涵,不能接受者请mail我,说明情况,我将删掉相关文章      上周五(七月十七日)下午去面试了一家公司,比较远,地铁公交呼呼倒,到那边的时候快下午两点了,中午有午休的习惯,这会了刚犯困就硬着头皮去面试了。说说面试的事情吧。       ...

2015-07-21 12:45:04 92

Yeoman 简介

写在前面 //TODO官网地址:http://yeoman.io/ 1. Yeoman是什么    Yeoman 是一个可以帮助你快速开始新项目,提供最佳实践提示和一些工具。    这些工具包含:    YO, 开启新项目,写构建配置,获取有关的构建任务和包管理    Build System, 用来构建,预览和测试你的项目    Package Manager,...

2015-06-30 14:58:05 182

面试之我想

        最近参加了一次面试,很久没有被面试了,这么突然而来的一个面试自然会在心里提前做一点思考,不像刚毕业那会了,会根据职位内容做一些技术方面的功课,里面的技术熟悉的会查下原理,背背一些感念,然后再把一个侧面的内容深入学习下,就算不会的技术也要看看,了解下是干什么的能够解决什么问题,这样一来广度有了,深度也有涉及,面试自然成功率就高了一些,当然这也不是什么秘密了,仔细想想的话大都能想到这...

2015-04-29 08:46:28 84

Mac 下常用快捷键

官网上有篇关于快捷键的整理,我拷贝下来然后简单翻译下,链接地址如下https://support.apple.com/en-us/HT201236  一、从认识按键符号开始Mac中或者其它网页上常可以看到如下图标,对于新手来说,图标对应的键不是很清楚,特此列出来。Command ⌘Shift ⇧Option ⌥Control ⌃Caps Loc...

2015-04-10 16:49:20 206

原创 Mac 下Eclipse的一些快捷键(转)

Mac下Eclipse快捷键整理 一、Command类 Command+1快速修复Command+d删除当前行Command+Option+↓复制当前行到下一行Command+Option+↑复制当前行到上一行Command+←移动光标至当前行...

2015-04-09 14:10:17 327

原创 VirtualBox 网络配置

自从用过virtualbox之后就把电脑中的vmware软件都给卸载了。virtualbox 用一个短小精悍来形容,而且是免费的,产品一直在更新中。 今天想说的是创建虚拟机后网络配置的问题,其实用其它的虚拟化软件也会涉及到这些问题,只是今天碰巧手头上有virtualbox就一边介绍,一边实践吧。 如果我们在virtualbox上右键一台虚拟机,点开网络会有如图下面几项设置。 ...

2015-03-30 14:57:29 184

Hadoop 单节点的部署(来自翻译官方文档和自我实践)

英文参考文档链接如下:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html 这篇文章描述了单节点的伪分布式hadoop部署。下面是我根据官方文档进行自我部署测试 。 一、写在前面的话       hadoop包括的东西很多,而且文档上的东西也不...

2015-03-26 11:50:07 107

ubuntu ssh rejected you password

当我用xshell 连接我新创建的虚拟机的时候出现“the ssh server rejected your password"错误。刚装的ssh,密码也肯定是没有问题的,我记得以前我没有出现过这个问题。 上网查了下,什么的都有,看防火墙的,检查网络的,还有更加绝的,重装ssh-server,好笑的是我全部尝试遍了,以后再也不能笑病急乱投医的了,他们是真的没有办法了,才这样的。在我全...

2015-03-25 14:20:07 409

Axure 使用体会

前言:技术没有好坏之分,没有高低贵贱之分,能够解决你目前遇到的问题就是好的。 是的,我最近就有些这样的体会。除了在第一个公司整个项目的前端后台都是我一个人负责之外,后面的公司大多数时间在处理后端的东西,多线程调优,架构调整,模块归类忙的不亦乐乎,虽然这样还是免不了出现UI方面要去处理的情况。什么CSS,js,html,jquery,angularjs项目需要你的时候就要顶上,没办法,...

2015-03-11 14:20:43 112

Hadoop 学习之一(前言)

好几次想集中精力去系统的学习下hadoop,各种原因每次都是表面看了几天,然后搭建了简单的例子就放弃了,到现在连例子和linux虚拟机镜像都让我安装系统给弄丢了,正好,大不了从头再来! 在外企环境下上班有至少两点好处:一、常看英文,导致看官方文档速度有所上升。二、时间比较充足,可以学习自己感兴趣的东西。 所以跟着官网学习hadoop,官网地址http://hadoop...

2015-02-28 09:41:45 125

Lucene 自定义索引文件的存取

前面介绍了Lucene的关于索引文件存取的API和一些接口,通过这些接口我们知道了,其实索引文件的读取也是通过流的方式来处理的。有了这个认识就可以通过接口做我们自己的实现。 先简单说下为什么要学习Lucene吧,目前我们项目组在做公司自己的分布式缓存的项目,使用缓存是很好,大大加快了常用数据的访问速度,这对增加系统IO是很有帮助的,缓存大都基于HASH 和TREE的索引结构,这两种结构基...

2015-02-04 16:05:04 351

Java 系统相关参数获取

今天看lucene看到来源代码中有对操作系统和虚拟机方面的属性的工具类,特贴上以备后需。package org.apache.lucene.util;import java.lang.reflect.Field;import java.util.StringTokenizer;/** * Some useful constants. **/public...

2015-01-29 15:39:19 74

Lucene

Lucene 是apache软件基金会的一个开源项目,它是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,以及文本分析引擎,它可以很方便的让开发人员在自己的项目中实现全文检索的功能。 很久前都听说过lucene,也简单的了解过,但是项目没有需要就一直没有仔细研究下,现在刚好有这个需求,本来应该研究Solr的,但是Solr是基于Lucene的扩展,不了解Lucene就直接开始看S...

2015-01-29 13:55:03 64

回顾下上个项目UI遇到的问题

上个项目出去已经有2个月了,项目的UI我不参与Coding,只是出现问题的时候我去给救救火。现在回顾下遇到的比较奇葩的问题吧。 我们的UI要支持IE8以上,Firefox, chrome具体什么版本我也忘记了,反正至少是要支持HTML5的版本吧。 1. IE11下页面不改变跟踪之后发现连请求都没有发,怎么可能。我们发请求的是Ajax所以想到是可不可以从ajax入手,因为...

2015-01-08 16:54:00 103

原创 Python Language Rules

Google 正在使用的Python 语言规则,翻译自下面链接http://google-styleguide.googlecode.com/svn/trunk/pyguide.html#Python_Language_Rules 1. Lint使用在你的代码上运行pylint,lint是一个帮助开发人员找bug和风格问题的工具。 2. Import因为有些modu...

2015-01-08 15:44:45 113

原创 Python Code Style

本文翻译自Google文档http://google-styleguide.googlecode.com/svn/trunk/pyguide.html#Python_Style_Rules 说明本文风格是Google内部的Python代码风格。 1. 分号如果一句代码有多行,不要在每行后面使用分号 ,并且不要通过分号把多句代码放一行 2. 行长度80...

2015-01-07 18:14:02 271

原创 Java 代码风格建议(翻译Google的)

本建议来自googlehttp://google-styleguide.googlecode.com/svn/trunk/javaguide.html国内可能无法访问这个链接,写这篇文章的时候是在美国上的这个网络,下面的文章基本上翻译得到。 一、介绍1.1 术语说明在下面文档中,除非特殊说明1. class的意思包括,普通的类,接口,枚举以及注解2. comme...

2015-01-07 16:48:44 141

来自谷歌的代码风格建议

不同代码有不同的风格,这个事很正常的事情,如果相同的代码弄很多种不同的风格可能并不是一件好事情。项目人员之间的沟通,项目人员变换之后成本,都会因为代码风格而产生变化, 代码是电脑执行的没有,但是是由人来写的,也由人来看,和修改的,所以就算你的代码写的i再好,如果人都看不懂,电脑可能也不会愿意看(最后一句是我猜的)。 让人家能看懂你的代码,而且看的舒服的话,代码逻辑性很重要,同时代码...

2014-09-26 03:01:28 160

java 读文件Path注意下面情况

虽然是很基础的东西,但是仍然愿意花时间写出来,我之前在实际项目中就遇到过这样的问题。用之前我写过的一个例子来说明这个事情。http://tangmingjie2009.iteye.com/blog/510459 假如你开发的程序有需要读一个自定义文件的功能,事实上这个情况很常见。你写来了如下类似代码。String fileName = "config.properties";...

2014-08-21 13:50:29 107

PAAS

PAAS 是Platform-as-a-Service的缩写,意思是平台即服务。PaaS是SaaS模式的一种应用,是云环境下的部署平台。 基本部署方式下面三种(1)基于商业软件的部署方式:Application - Framework/Libs - Websphere/Weblogic + RDBMS(2)基于开源软件的部署方式:Application - Framework...

2014-07-25 14:58:27 185

本地服务还是云服务(SaaS)

    SaaS(Software as a Service,软件即服务)作为云计算的核心概念之一,它是一种通过互联网提供软件的模式,厂商将自己的应用软件部署到服务器上,客户可以根据自己的需要来购买或者租用软件服务,通过服务类型,数量,时间长短等不同维度来完成付费和使用。在使用过程中,客户减少了购买软件,构建和维护基础设施和应用程序的消费,对小型企业来说是一种不错的选择。    假如说一个...

2014-07-25 14:39:34 258

空空如也

空空如也

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

TA关注的人

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