首页 > 其他 > 详细

优化专题

时间:2018-03-08 20:11:41      阅读:235      评论:0      收藏:0      [点我收藏+]

代码优化

一、代码结构层次的优化(目的:更加方便代码的维护--可维护性,可读性)
1.代码注释(代码规范)
2.工具类的封装(方便代码的维护,使代码结构更加清晰不臃肿,保证团队代码质量一致性)
3.公共部分的提取
二、代码性能的优化(目的:使程序的性能最优化)
1.使用一些性能比较高的类(bufferInputStream)
2.缓存区块的大小(4k或8k)
3.公共部门的提起
4.通常要使用StringBuffer代替String加号拼接
5.单线程应尽量使用HashMap,ArrayList,因为HashTable,Vector使用了同步机制,降低了性能
6.在Finally块中关闭流,断开连接,释放资源

Sql优化

1.外键必须加索引
2.避免在where子句中对有索引的字段进行运算,这会导致索引失效,从而进行全表扫描
3.在where及order by 涉及的列上建立索引,要尽量避免全表扫描
4.在设计表时要避免表中字段出现null的情况,通常要为其设置默认值
5.避免在查找时放弃使用索引而进行全表扫描
6.select 语句中避免使用*,只查询需要返回的字段,这样可以减少oracle解析sql语句的时间
7.用not exists 替换not in 操作符,用exists替换in

Hibernate优化

在处理大数据量时,会有大量的数据缓冲保存在Session的一级缓存中,这缓存太大时会严重影响性能,所以在使用Hibernate处理大数据量时,可以使用Session.clear()或者Session.evict(object),在处理过程中,清楚全部的缓存或者清楚某个对象。
通过使用Hibernate的一级缓存,二级缓存,查询缓存等来提高性能。
Hibernate可以通过设置hibernate.jdbc.fetch_size,hibernate.jdbc.batch.size等属性,对Hibernate进行优化。Batch Size是设定对数据库进行批量删除,批量更新和批量插入的时候的批次大小,Batch Size越大和数据库交互的次数就越少,速度就越快,但也不要无限的大下去,通常选择一个合适的值,如100条。其次,我们在进行大批量的导入操作时,可以结合batchsize进行分批量提交,从而达到最优效果。

优化专题

原文:https://www.cnblogs.com/i177268/p/8530431.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!