您的位置:首页 >> 编程开发 >> Java >> 数据库 >> 正文
数据库 RSS
 

进一步提高JDBC应用程序的性能(三)

http://www.rdxx.com 02年03月31日 12:12 Blog 我要投稿

关键词: JDBC , 应用程序 , 性能 , 应用 , 程序 , JDB
 

作者: 赵杨 笔名:bootcool  

[bootcool@263.net,bootcool@163.net] 

美丽而温暖的昆明其实很适合做冷静的思考

                               进一步提高JDBC应用程序的性能()

: 优化数据库连接

在优化Java编写的程序时,对象重用是一个经常使用的方法。其中关键的一点,就是要尽量的重用一个已有的对象,而不是反复的创建一个新的对象。这样不仅能减少对内存的消耗,也降低了程序因为不断创建新对象而导致内存溢出的情况。由于建立一个数据库连接或者撤销一个连接都是代价昂贵的操作,所以重用一个Connection就是理所当然的了。我们有两种方式重用一个Connection

 

方法

方法说明

使用环境

1

为每个用户建立一个单独的连接,并反复使用该连接创建语句,执行相关的数据库操作。

每个用户必须经过验证才能使用该连接。

2

建立连接池

多用户

(表 5

我们使用完一个连接后一定要将其关闭,否则可能会因为连接资源耗尽,而导致程序性能降低,甚至使程序崩溃。

   关闭联接有以下四种方式:

(1):不关闭连接

    (2) // ……

Connection con = DriverManager.getConnection(url,user,password);

con = null;

       // ……

    (3): // ……

Connection con = DriverManager.getConnection(url,user,password);

con.close();//显示的关闭连接

      // ……

    (4)// ……

Connection con = DriverManager.getConnection(url,user,password);

con.close();//显示的关闭连接

con = null;

       // ……

 

下面我们给出一些测试数据,通过比较我们不难得出关闭连接的正确方式:

  首先我们给出测试程序,我们创建100个线程,每个线程都各自获得1个数据库连接。这里的每个线程就好比一个希望连接数据库的用户。

 

TestJdbc.java

import java.sql.Connection;
import java.sql.DriverManager;

public class TestJdbc {

    public TestJdbc() {           

    }

    public void connect(){

      try{
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
     }

     catch(Exception ex){
        ex.printStackTrace();
    }

       //创建100个线程

      for(int i=0;i<100;i++){
        MakeConnection makeConnect = new MakeConnection();
        makeConnect.setName(""+i+"");
        makeConnect.start();
      }
    }

   
   public static void main(String args[]){    
     TestJdbc test = new TestJdbc();
     test.connect();       

9 7 3 1 2 3 4 8 :


 
 
标签: JDBC , 应用程序 , 性能 , 应用 , 程序 , JDB 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站