`
文章列表
今天看了一篇有点小众,但是绝对高级shell应用的文章,牛逼到掉渣。 记录一下链接吧:   你可能不知道的Shell
Java的GC log中,往往有很多名称啊、数字啊,第一次看到时候,总会有点晕头转向的感觉。 今天又Google了一圈,找到两篇比较靠谱的网页记录一下: HotSpot在PrintHeapAtGC输出的内容的格式 Java Garbage Collection Log messages 引用一下stackoverflow上的那个例子 8109.128: [GC [PSYoungGen: 109884K->14201K(139904K)] 691015K->595332K(1119040K), 0.0454530 secs] 8112.111: [G ...
今天同事遇到一个问题,大概描述如下: 浏览器已经接收指令,之前在一级域名下存储了相关的信息。这里为了简化问题,假设我们有两个应用A和B,域名分别为:a.b.com和c.a.b.com。(显然B是A的一个子域)。 上面的描述就是: ...
学习范型的第一课就被警告说,范型信息再编译之后是拿不到的,因为已经被擦除掉了。如果不深入研究,这个观点很容易给人以这样的错觉:只要代码里面用了范型的地方,编译之后,是没法拿到这部分信息的!   关于这点的错误之处,可以参考撒伽的这篇文章。 按他的解释是说: 位于声明一侧的,源码里写了什么到运行时就能看到什么; 位于使用一侧的,源码里写什么到运行时都没了。 这里,最根本的原因,还是因为jdk1.5之后,将范型类、方法、属性的信息,都固化到了编译之后的class文件中(具体的例子可以参考上面提高文章中反编译class文件之后拿到的信息),java本身也就有能力通过反射的API来获取这部分信息 ...
关于Java的内部类的可见性问题,平时并未太注意。不过使用时,其实还是应该明确一点:就是关于内部类和他的外部类的可见性问题:private这种修饰符并不能阻止外部类直接访问到内部类中的private属性;反之亦然。 这里直接看代码会更清楚一些:   public class VisibilityTest { private String outerName; public String showInnerName(InnerClass innerClass){ // Notice : innerName in InnerClass is &qu ...
Common Sense 学习Java语言的一开始,就被任何一本教科书告知,Java语言是不支持多重继承的。但是可以利用接口完成多重实现。于是这个“事实”就作为一条常识,神一样的存在了。 Why can not? 当被问及这条神律为啥在Java语言中存在时,很多人就说不清楚了。老外的这篇文章说了大家比较公认的一个问题:“钻石问题”。这里,具体的细节请参考上面原文,下面把原文中的一个关键性说明图例摘抄过来: 看到这个图片,大家应该了解了。 这里,从类的继承体系的最上层A开始,所有子类都有一个foo()方法。当D类没有override他的父类(们)的foo()方法时,如果在程序的运行期 ...
今天面试时,突然被面试官问到怎样用shell命令搞定某个文件夹下java代码行数的统计。 想了一下,基本思路就是找到这个文件夹下面的所有java文件,然后每个文件统计一下代码,外层套个for循环,叠加一下结果,就拿到想要的 ...
以下讨论全部针对Mysql数据库:)   通常业务上至少需要两种类型的不重复插入记录的需求:   如果某些关键字段已经在Mysql中存在了,不要重复插入,而是改为更新某些字段。 如果某些关键字段已经在Mysql中存在了,不要 ...
1、关于$ $是个在shell中有多种使用方式的东东。不经常使用时,也是很容易忘记的一个特殊标识符,记录一下比较常用的几种用法:   $# : 获得脚本传入参数的个数。 $? :  获得上面函数或脚本执行之后的返回值(或者叫退出码)。(默认成功执行之后返回0) $$ :  获得当前所在脚本的进程ID号。(通常会被作为生成唯一标识的一种手段) $! : 获得最后一个后台进程PID。(通常这个可以用来结合后台任务& 来完成一定时间内运行任务的需求:cmd & (sleep 10; kill -9 $! 2>/dev/null)) $() : 相当于``,也用作 ...
Hessian反序列化问题 众所周知,Hessian框架提供的序列化方式,在性能上要优于Java自己的序列化方式。他将对象序列化,生成的字节数组的数量要相对于Java自带的序列化方式要更简洁。 目前公司的一个项目中,有RPC调用的需要,这里我们使用了公司自己的开源RPC框架Dubbo作为远程调用框架,进行业务方法的调用和对象的序列化。这里,我们没有对Dubbo做出特殊配置,Dubbo在Remoting层组件默认的序列化方式就是采用的Hessian协议处理。但是在真正部署测试时,走到需要远程调用的方式时,报出了一下异常(只截取了最核心的异常堆栈):   Caused by: com.ali ...
今天有个需求:需要查找在某个工程下面的所有js文件和vm文件中是否包含某个特定的关键字$a。   自己最直观的想法,使用find实现。   find . -name "*.js" -or -name "*.vm" | xargs grep "\b$a\b" 这里很容易在-or参数后面忘记再写一次-name参数,我开始就是忘记了,导致语法就有问题,linux不认!   后来请教一位同事时,人家给出了直接grep的解法,相当不错,记录一下: grep "\b$a\b" --include=\*.{js,v ...
由于种种原因,项目的结构被调整成了ant+maven共同管控的样子(真的好挫) 于是,一个最基本的问题来了,之前写的UT没法跑了。 首先爆出来的是slf4j的问题:   SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details. Exception in thread "main" java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/l ...
Java多线程问题常用的几种场景(不是全部)通常需要包括如下几个方面:   共享资源的互斥访问(比如:资源初始化过程)。 有限资源的访问控制(比如:数据库连接池会限制只有有限个线程可以同时保持链接)。 多线程 ...
1、HTTPS本身并非协议,而是标准的HTTP协议架在SSL/TLS协议之上的一种结构。(一种不太合适的说法可以认为是两种协议的叠加)。HTTP是工作在OSI7层模型的最上层,就是第7层:Application Layer。而SSL/TLS是工作在第4层:Transport Layer。 ...

Json & JsonP

如题,在网上查找JsonP的资料的时候,发现了下面这两篇文章是相当靠谱的: http://www.ibm.com/developerworks/cn/web/wa-aj-jsonp1/ http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html   详细的信息直接看上面的两篇文章再好不过了 ...
Global site tag (gtag.js) - Google Analytics