页面每次加载时,都要从7、8个字典表中取数据,将取出的字典数据在select下拉列表中显示,如何去实现,能提高加载速度。我现在的实现,速度比较慢。写了一个公用的javabean,传递过去取那个表的表名,返回一个二维数组,数组中存着字典的信息。可是这样发现一个问题,取一个表要连接一次数据库,在连接的过程中速度比较慢!大家给个建议,谢谢了

解决方案 »

  1.   

    一次都取出来,放session里不行么?要不放cookie里
      

  2.   

    ajax是比较好的方法,这样可以避免一次性取很多数据。另外,数据库连接应该使用连接池。
    如果这些字典的内容不是经常变化的,甚至可以考虑在web应用程序中一开始就读取这些数据,以某种方式存放,后面就不要查询数据库了。
      

  3.   

    对于重复使用率很高的静态(很少更新)数据表,可以在服务器启动时候载入内存(application对象中)。
      

  4.   

    将取出的字典数据在select下拉列表中显示这种Lookup形式的Table,可以利用一次生成N次使用的原则来进行,即在后台直接就生成XML文件或者只进行一次读取,然后存进map里,以后的取,不要再访问数据库了,从map里取。当然,你也可以用Cache的方式来进行。
      

  5.   

    大家说的Cache、application、map、cookie这几个对象,相对来说那个对系统的要求比较低,速度比较快些?由于本人对java不是很熟,大家能否给些例子来参考一下,非常感谢了
      

  6.   

    jsp中没用过Cache,不直到如果使用,大家能否给些例子来参考一下,非常感谢了