Kora

导航

随笔分类 -  Java

22个Java经典实例 带完美注释
摘要:1. 获取环境变量 Java代码 1. System.getenv("ATH"); 2. System.getenv("JAVA_HOME"); 2. 获取系统属性 Java代码 1. System.getProperty("pencil color"); // 得到属性值 2. java -Dpencil color=green 3. System.getProperty("java.specification.version"); // 得到Java版本号 4. Properties p = System.getProperties(); // 得到所有属性值 阅读全文

posted @ 2012-08-19 22:41 Kora 阅读(1077) 评论(0) 推荐(0)

JVM的垃圾回收机制详解和调优
摘要:1.JVM的gc概述   gc即垃圾收集机制是指jvm用于释放那些不再使用的对象所占用的内存。java语言并不要求jvm有gc,也没有规定gc如何工作。不过常用的jvm都有gc,而且大多数gc都使用类似的算法管理内存和执行收集操作。   在充分理解了垃圾收集算法和执行过程后,才能有效的优化它的性能。有些垃圾收集专用于特殊的应用程序。比如,实时应用程序主要是为了避免垃圾收集中断,而大多数OLTP应用程序则注重整体效率。理解了应用程序的工作负荷和jvm支持的垃圾收集算法,便可以进行优化配置垃圾收集器。   垃圾收集的目的在于清除不再使用的对象。gc通过确定对象是否被活动对象引用来确定是否收集该对象。gc首先要判断该对象是否是时候可以收集。两种常用的方法是引用计数和对象引用遍历。 阅读全文

posted @ 2012-08-19 22:13 Kora 阅读(111) 评论(0) 推荐(0)

心得总结:Java性能优化技巧集锦
摘要:“通用篇”讨论的问题适合于大多数Java应用。   1.1 不用new关键词创建类的实例   用new关键词创建类的实例时,构造函数链中的所有构造函数都会被自动调用。但如果一个对象实现了Cloneable接口,我们可以调用它的clone()方法。clone()方法不会调用任何类构造函数。   在使用设计模式(Design Pattern)的场合,如果用Factory模式创建对象,则改用clone()方法创建新的对象实例非常简单。例如,下面是Factory模式的一个典型实现: public static Credit getNewCredit() { return new Credit(); }   改进后的代码使用clone()方法,如下所示: private static Credit BaseCredit = new Credit(); public static Credit getNewCredit() { return (Credit) BaseCredit.clone(); }   上面的思路对于数组处理同样很有用。 阅读全文

posted @ 2012-08-19 22:11 Kora 阅读(100) 评论(0) 推荐(0)

自我参考:Java学习的30个目标
摘要:本文将告诉你学习Java需要达到的30个目标,希望能够对你的学习有所帮助。对比一下自己,你已经掌握了这30条中的多少条了呢?   1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。   2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking, multithreading,reflection,event,handling,NIO,localization,以及其他)。 阅读全文

posted @ 2012-08-19 21:33 Kora 阅读(164) 评论(0) 推荐(0)

如何提升大型网站并发访问性能?
摘要:一个小型的网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单。随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件、编程语言、数据库、WebServer、防火墙等各个领域都有了很高的要求,已经不是原来简单的html静态网站所能比拟的。   大型网站,比如门户网站,在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节:使用高性能的服务器、高性能的数据库、高效率的编程语言、还有高性能的Web容器。这几个解决思路在一定程度上意味着更大的投入。 阅读全文

posted @ 2012-08-07 22:43 Kora 阅读(450) 评论(0) 推荐(0)

JAVA内存泄露、溢出的检查方法、工具介绍
摘要:问题发现: 在我们运行的一个项目上线运营后发现运行两天左右就会报内存溢出,只有重启tomcat才能恢复服务,异常信息如下: java.lang.OutOfMemoryError: GC overhead limit exceeded java.lang.OutOfMemoryError: Java heap space 阅读全文

posted @ 2012-08-07 22:35 Kora 阅读(19747) 评论(0) 推荐(0)

Java提高性能的方法
摘要:Java提高性能的方法(转)1.尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:第一,控制资源的使用,通过线程同步来控制资源的并发访问第二,控制实例的产生,以达到节约资源的目的第三,控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信2.尽量避免随意使用静态变量要知道,当某个对象被定义为stataic变量所引用,那么gc通常是不会回收这个对象所占有的内存,如publicclassA{ staticB b = newB(); }此时静态变量b的生命周期与A类同步,如果A 阅读全文

posted @ 2012-08-07 22:29 Kora 阅读(646) 评论(0) 推荐(0)

eclipse 最全快捷键 分享快乐与便捷
摘要:Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt+↑ 复制当前行到上一行(复制增加) Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了) Alt+↑ 当前行和上面一行交互位置(同上) Alt+← 前一个编辑的页面 Alt+→ 下一个编辑的页面(当然是针对上面那条来说了) Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性 Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后) Shift+Ctrl+En 阅读全文

posted @ 2012-05-04 14:07 Kora 阅读(232) 评论(0) 推荐(0)