zoukankan      html  css  js  c++  java
  • JAVA记录-java代码优化策略

    java代码优化策略

    1、生成对象时,合理分配空间和大小:new ArrayList(100);

    2、优化for循环:

    Vector vect = new Vector(1000);

    For(int i=0; i<vect.size(); i++){}

    改写成:

    int size = vect.size();

    For(int i=0; i<size; i++){}

    如果size=1000,就可以减少1000次size()的系统调用开销,避免了循环体重复调用。

    3、new一个实例对象,new在什么位置(尽量在使用时创建该对象)

    4、异常处理技巧

    5、尽量使用局部变量和静态变量

    6、尽量不使用多线程同步

    7、尽可能的使用Java自身提供的API

    8、尽量减少I/O操作(控制台、日志)

    9、尽量使用缓存流(尽可能使用带有Buffer的类代替没有Buffer的类,BufferedReader、BufferWriter、BufferedInputStream)

    10、Sql优化、存储过程、视图、连接池(C3P0、DBCP)

    11、数据库数据分级存储:

    将经常访问的数据和访问频度低的数据,分别存放到不同的分区,甚至存放到不同的数据库服务器,以便合理分配硬盘I/O及系统I/O。

    12、缓存策略:

    如果有些数据要经常从数据库中读取,同时,这些数据又不经常变化,这些数据就可以在系统中缓存起来,使用时直接读取缓存,而不用频繁的访问数据库读取数据。

    缓存工作可以在系统初始化时一次性读取数据,特别是一些只读的数据,当数据更新时更新数据库内容,同时更新缓存值。

    Java常用的缓存技术产品有:Redis、MemoryCache、OSCache等。

    13、html静态化

    14、不用保存太多的信息在HttpSession中

    15、在使用大数据对象时,建议在对象使用完毕后,手动设置成null(避免内存一出)。

    尽可能地使用基本类型而不是用对象类型。例如:使用int,而不使用Integer。

  • 相关阅读:
    中国剩余定理
    exgcd(扩展欧几里得)求同余式
    hdu 4557 :非诚勿扰(vector + 二分)
    ZOJ 1094:Matrix Chain Multiplication(栈)
    ZOJ1004: Anagrams by Stack(dfs + 栈模拟)
    洛谷 P1038 :神经网络(BFS && 拓扑排序)
    51Nod 1459:迷宫游戏(Dijkstra)
    51 Nod 1640: 天气晴朗的魔法(Krustra 并查集)
    打印文件中的内容
    print directory(打印目录)
  • 原文地址:https://www.cnblogs.com/xinfang520/p/7699358.html
Copyright © 2011-2022 走看看