Rainnnbow

快乐的秘密不在于“成就卓越”,而在于“不断成长”。做一个乐于学习的,追求优雅的,与时俱进的理想程序员...

Mac锁屏的几种方式

刚换了工作,公司里给配了MacBook,第一次使用,很多常见操作都不知道快捷键,今天来记录下锁屏的几种方式:电脑为MacBook Pro,OS为MacOS Sierra 10.12.3 1. ctrl + shift + 右上角开关机键 2. option + command + 右上角开关机键...

2017-05-09 10:05:44

阅读数 23241

评论数 0

SQL注入浅析

1.什么是SQL注入?“SQL注入”是一种利用未过滤/未审核的用户输入进行SQL攻击的行为,意思就是让应用运行本不应该运行的SQL代码。如果应用毫无防备地创建了SQL字符串并且运行了它们,就会造成一些出人意料的结果。例子:网站登陆时的SQL查询代码为:strSQL = "SELECT *...

2017-05-09 09:17:50

阅读数 511

评论数 0

IntelliJ IDEA For Mac 快捷键

Mac键盘符号和修饰键说明⌘ Command⇧ Shift⌥ Option⌃ Control↩︎ Return/Enter⌫ Delete⌦ 向前删除键(Fn+Delete)↑ 上箭头↓ 下箭头← 左箭头→ 右箭头⇞ Page Up(Fn+↑)⇟ Page Down(Fn+↓)Home Fn + ...

2017-05-08 16:32:26

阅读数 492

评论数 1

理解HTTP幂等性

理解HTTP幂等性基于HTTP协议的Web API是时下最为流行的一种分布式服务提供方式。无论是在大型互联网应用还是企业级架构中,我们都见到了越来越多的SOA或RESTful的Web API。为什么Web API如此流行呢?我认为很大程度上应归功于简单有效的HTTP协议。HTTP协议是一种分布式的...

2017-03-23 12:14:31

阅读数 312

评论数 0

Sybase数据库实现等效的mysql中group_concat功能

在MySQL中,如果想实现将分组之后的多个数据合并到一列,可以使用group_concat函数,如下图所示: 但是,在Sybase中没有这样的函数(别问我为什么使用Sybase,因为公司用的Sybaseo(╯□╰)o)。因为我的Sybase是ASE的,使用变量累计的方法实现了该功能。憋说话,...

2016-12-05 18:29:55

阅读数 1047

评论数 0

在查询语句中使用 NOLOCK 和 READPAST

对于非银行等严格要求事务的行业,搜索记录中出现或者不出现某条记录,都是在可容忍范围内,所以碰到死锁,应该首先考虑,我们业务逻辑是否能容忍出现或者不出现某些记录,而不是寻求对双方都加锁条件下如何解锁的问题。NOLOCK 和 READPAST 都是处理查询、插入、删除等操作时候,如何应对锁住的数据记录...

2016-11-21 18:00:47

阅读数 379

评论数 0

Bash shell中的位置参数$#,$*,$@,$0,$1,$2...及特殊参数$?,$-等的含义

http://hi.baidu.com/lolorosa/blog/item/5775a608bd670d33b0351da7.html$# 是传给脚本的参数个数$@ 是传给脚本的所有参数的列表$0 是脚本本身的名字$1是传递给该shell脚本的第一个参数$2是传递给该shell脚本的第二个参数在...

2016-11-04 09:55:06

阅读数 697

评论数 0

Sybase identity 字段

1、identityOracle, DB2, pgSQL中都有sequence的概念,这个概念比Identity先进很多,在Sybase中没有Sequence对象,与之相对应的是Identity2、identity 的创建identity跟sequence对象完成的功能类似,但是有一定的约束,每个...

2016-10-24 13:54:25

阅读数 388

评论数 0

Java中使用long类型实现精确的四则运算

引子Effective Java 2nd Edition 第48条建议:如果需要精确的答案,请避免使用float和doble。float和double类型主要是为了科学计算和工程计算而设计的。他们执行二进制制浮点运算(binary floating-point arithmetic),这是为了在广...

2016-08-22 16:42:46

阅读数 6882

评论数 0

JVM的Server与Client运行模式区别与切换

JVM有两种运行模式Server与Client。两种模式的区别在于,Client模式启动速度较快,Server模式启动较慢;但是启动进入稳定期长期运行之后Server模式的程序运行速度比Client要快很多。这是因为Server模式启动的JVM采用的是重量级的虚拟机,对程序采用了更多的优化;而Cl...

2016-08-17 10:45:30

阅读数 3483

评论数 0

JUnit单元测试教程(翻译自Java Code Geeks)

本教程翻译自Java Code Geeks,原文网址:https://www.javacodegeeks.com/2014/11/junit-tutorial-unit-testing.html#suite_tests。翻译的过程中,有少部分内容是译者添加的解释说明和对原文章中错误地方的修正。水平...

2016-08-16 09:28:58

阅读数 3549

评论数 2

Minor GC、Major GC和Full GC之间的区别

在 Plumbr 从事 GC 暂停检测相关功能的工作时,我被迫用自己的方式,通过大量文章、书籍和演讲来介绍我所做的工作。在整个过程中,经常对 Minor、Major、和 Full GC 事件的使用感到困惑。这也是我写这篇博客的原因,我希望能清楚地解释这其中的一些疑惑。 文章要求读者熟悉 JV...

2016-08-11 10:36:23

阅读数 831

评论数 0

Java对象的访问定位

java对象在访问的时候,我们需要通过java虚拟机栈的reference类型的数据去操作具体的对象。由于reference类型在java虚拟机规范中只规定了一个对象的引用,并没有定义这个这个引用应该通过那种方式去定位、访问java堆中的具体对象实例,所以一般的访问方式也是取决与java虚拟机的类...

2016-08-08 13:01:16

阅读数 860

评论数 0

Java对象的内存布局以及对象所需内存大小计算详解

1. 内存布局在HotSpot虚拟机中,对象的内存布局可以分为三部分:对象头(Header)、 实例数据(Instance Data)和对齐填充(Padding)。1) 对象头(Header):对象头又可以分为两部分: 第一部分用来存储对象自身的运行时基本数据信息。如哈希码、GC分代年龄、锁状态...

2016-08-08 12:45:06

阅读数 1054

评论数 0

Java对象的创建 —— new之后JVM都做了什么?

Java对象创建过程1. 类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载、解析和初始化过。如果没有则进行相应的类加载过程。(我之后会写一篇关于类加载顺序和过程的博客,并在此补充连接地址)2. 分配内...

2016-08-08 10:26:52

阅读数 3120

评论数 0

我为什么放弃使用MyBatis3的Mapper注解

最近在使用MyBatis3做项目。在使用注解实现Mapper的时候遇到了比较奇葩的问题:在实现数据的batch insert的时候总是报错。好不容易可以正常插入了,但是又不能返回自增的主键id到实体bean中了。而这些问题在XML配置中都不存在。一方面可能是我能力有限,没有找到合适的解决方案;另一...

2016-08-02 09:55:40

阅读数 4775

评论数 1

Eclipse调试(2)——各种类型断点设置

本文是 Eclipse调试(1)——基础篇 的提高篇。分两个部分: 1) Debug视图下的3个小窗口视图:变量视图、断点视图和表达式视图 2) 设置各种类型的断点变量视图、断点视图和表达式视图1. variable:变量视图显示debug过程中程序中出现的所有的变量以及其值。我们也可以通过该...

2016-07-26 13:39:08

阅读数 1931

评论数 0

Eclipse调试(1)——基础篇

作为使用Eclipse的程序员都会使用它的Debug。但是有不少人只会用F6、F8,其他功能知之甚少。今天我就来总结一下我在使用eclipse的debug时的一些个人经验。水平有限,不足之处还请赐教。测试代码学东西能够学以致用才是关键。所以我使用示例代码的形式讲解每一个点。在下面的代码中,我打了两...

2016-07-25 16:26:06

阅读数 681

评论数 2

STATE(状态)模式

引子场景在我们软件开发的过程中,有许多对象是有状态的。而对象的行为会随着状态的改变而发生改变。例如开发一个电梯类,电梯有开门、关门、停止、运行等行为,同时电梯也会有开门状态、关门状态、停止状态、运行状态等不同的状态。电梯处于不同的状态时,对不同的行为会做出不同的动作。如当电梯处于开门状态时,电梯可...

2016-07-14 22:02:55

阅读数 2310

评论数 0

ArrayList中的modCount与ConcurrentModificationException

在看ArrayList源码时,看到了一个字段modCount。在add、remove、clear等方法中都有modCount++的操作。不明白什么意思。点进去看了看该字段的解释,总算明白了。modCount是在AbstractList抽象类中定义的。该字段的解释如下所示。 /** ...

2016-05-13 11:25:43

阅读数 3926

评论数 1

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