Java性能优化【技巧】集锦.pptx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java 性能优化技巧集锦 =================================== 提纲: =================================== 一、通用篇 1.1 不用new 关键词创建类的实例 1.2 使用非阻塞I/O 1.3 慎用异常 1.4 不要重复初始化变量 1.5 尽量指定类的 final 修饰符 1.6 尽量使用局部变量 乘法和除法 尽量重用对象。 二、J2EE 篇 2.1 使用缓冲标记 2.2 始终通过会话Bean 访问实体Bean 2.3 选择合适的引用机制 2.4 在部署描述器中设置只读属性 2.5 缓冲对EJB Home 的访问 2.6 为EJB 实现本地接口 2.7 生成主键 2.8 及时清除不再需要的会话 2.9 在JSP 页面中关闭无用的会话 2.10 Servlet 与内存使用 2.11 HTTP Keep-Alive; 2.12 JDBC 与Unicode 2.13 JDBC 与I/O 2.14 内存数据库 三、GUI 篇 3.1 用JAR 压缩类文件 3.2 提示Applet 装入进程 3.3 在画出图形之前预先装入它 3.4 覆盖update 方法 3.5 延迟重画操作 3.6 使用双缓冲区 3.7 使用BufferedImage 3.8 使用 VolatileImage 3.9 使用Window Blitting 四、JavaScript 性能优化 使用局部变量避免使用全局变 避免使用with 遍历nodelist 的方式 别用那么多个var,一个加逗号就搞定了 innerHTML 是最好的选择 ie 的removeChild 不好用 为多个同级元素绑定事件时,不用为每个都绑定,为他们的父级绑定就行了 尽量用原生的方法,因为原生的都是用c/c++编译而成的他们执行的要比用 js 写 的方法快多了 appendChild 用的多时一定要用docuemntfragment if else 用的=3 个了,那用 switch 吧,好阅读,性能好 if=3,别用 if 了,用 3 元表达式吧 12. if==1,if 改 元素位置,while()offsetParent 正则的查找没有indexOf 快 设置某个元素的 style 时用cssText 简单些 new 时,没有参数时函数名后边的括号可以去了;五、其他 =================================== 正文: =================================== 一、通用篇 “通用篇”讨论的问题适合于大多数Java 应用。 不用 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();} 上面的思路对于数组处理同样很有用。 使用非阻塞 I/O 版本较低的JDK 不支持非阻塞I/O API。为避免I/O 阻塞,一些应用采用了创建大量线程的 办法(在较好的情况下,会使用一个缓冲池)。这种技术可以在许多必须支持并发 I/O 流 的应用中见到,如Web 服务器、报价和拍卖应用等。然而,创建Java 线程需要相当可观 的开销。 JDK 1.4 引入了非阻塞的I/O 库(java.nio)。如果应用要求使用版本较早的 JDK,在这里有 一个支持非阻塞I/O 的软件包。 请参见 Sun 中国网站的《调整Java 的I/O 性能》。 输入和输出包括很多方面,但涉及最多的是对硬盘,网络或数据库的读写操作。对于读写 操作,又分为有缓存和没有缓存的;对于数据库的操作,又可以有多种类型的JDBC 驱动 器可以

文档评论(0)

万寿无疆 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档