如何在Java Swing GUI应用项目中应用JDBC数据库连接池的程序实现示例
- 格式:pdf
- 大小:172.56 KB
- 文档页数:8
jdbc数据库连接步骤JDBC数据库连接步骤JDBC(Java数据库连接)是一种用于在Java应用程序中连接和操作数据库的API。
通过JDBC,Java应用程序可以与不同类型的关系型数据库进行连接,如MySQL,Oracle等。
本文将详细介绍JDBC数据库连接的步骤,帮助读者了解如何使用JDBC在Java应用程序中连接数据库。
一、导入必要的库文件在使用JDBC之前,我们首先需要导入一些必要的库文件。
JDBC的库文件通常以JAR文件的形式提供。
我们可以将这些库文件添加到Java应用程序的类路径中,或者使用构建工具(如Maven)在项目中添加依赖。
二、加载数据库驱动程序在使用JDBC连接数据库之前,我们需要加载适当的数据库驱动程序。
不同的数据库厂商通常提供特定的JDBC驱动程序,我们需要根据我们使用的数据库类型选择合适的驱动程序。
加载驱动程序的方式有两种:1. 使用Class.forName()方法加载驱动程序类。
例如,如果我们使用MySQL数据库,则可以使用以下代码加载驱动程序:javaClass.forName("com.mysql.jdbc.Driver");2. 在程序中直接创建数据库驱动程序的实例。
例如,如果我们使用Oracle 数据库,则可以使用以下代码加载驱动程序:javaoracle.jdbc.driver.OracleDriver driver = neworacle.jdbc.driver.OracleDriver();三、建立数据库连接一旦加载了数据库驱动程序,我们就可以建立与数据库的连接。
在建立数据库连接之前,我们需要提供一些连接所需的信息,例如数据库的URL,用户名和密码等。
使用JDBC建立数据库连接的语法如下:javaConnection connection = DriverManager.getConnection(url,username, password);其中,url是数据库的URL,可以包含主机名、端口号、数据库的名称等信息。
如何在Java中进行数据库的连接池和连接管理连接池是在Java中进行数据库连接管理的一种重要机制。
它通过预先创建、维护和复用数据库连接,来提高数据库连接的效率和资源利用率。
本文将介绍在Java中如何实现数据库连接池和连接管理。
1.数据库连接池的原理数据库连接池是一种创建和维护数据库连接的技术,它将数据库连接存储在一个连接池中,并对外提供获取、释放连接的接口。
当应用程序需要连接数据库时,可以从连接池中获取一个可用的连接,在完成数据库操作后,再将连接归还给连接池。
这样可以避免频繁地创建和销毁连接,提高了应用程序的性能。
2.实现数据库连接池在Java中,可以使用第三方库或自行实现数据库连接池。
以下是一个简单的连接池实现示例:```javapublic class ConnectionPool {private static final int INITIAL_SIZE = 5; //初始连接池大小private static final int MAX_SIZE = 10; //最大连接池大小private static final String URL ="jdbc:mysql://localhost:3306/mydb"; //数据库连接URL private static final String USERNAME = "root"; //数据库用户名private static final String PASSWORD = "password"; //数据库密码private List<Connection> connections; //连接池public ConnectionPool() {connections = new ArrayList<>();try {for (int i = 0; i < INITIAL_SIZE; i++) {Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);connections.add(conn);}} catch (SQLException e) {e.printStackTrace();}}public synchronized Connection getConnection() {while (connections.isEmpty()) {try {wait(); //当连接池为空时,等待} catch (InterruptedException e) {e.printStackTrace();}}Connection conn = connections.remove(0); //获取连接池中的第一个连接return conn;}public synchronized void releaseConnection(Connection conn) {connections.add(conn); //归还连接到连接池notify(); //唤醒等待的线程}public synchronized void closeAllConnections() {for (Connection conn : connections) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}connections.clear();}}```3.连接管理在使用连接池时,需要合理地管理连接的获取和释放,以免造成连接泄露。
JDBC实验二使用JDBC实现数据库连接JDBC(Java数据库连接)是Java语言访问数据库的标准接口,通过JDBC可以方便地连接和操作各种关系型数据库。
在本实验中,我将使用JDBC实现数据库连接的步骤和方法。
接下来,我们需要设置Java项目的classpath,将驱动程序添加到项目中。
classpath是指Java虚拟机用来查找类文件的路径。
我们可以通过命令行或者IDE的设置来配置classpath。
在本实验中,我们将通过IDE来设置classpath。
设置classpath的步骤如下(以Eclipse IDE为例):1. 打开Eclipse,并打开你的Java项目。
2. 右击项目文件,选择"Build Path"(构建路径) -> "Configure Build Path"(配置构建路径)。
3. 在弹出的窗口中,选择"Libraries"(库)选项卡。
5. 点击"Apply and Close"(应用并关闭)按钮。
现在,我们已经准备好在Java代码中使用JDBC来连接数据库了。
下面是连接数据库的代码示例:import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class DatabaseConnectionpublic static void main(String[] args)//数据库连接信息String url = "jdbc:mysql://localhost:3306/test";String username = "root";//连接数据库try//加载数据库驱动程序Connection connection = DriverManager.getConnection(url, username, password);//连接成功,可以进行相关操作connection.close(;} catch (ClassNotFoundException e)e.printStackTrace(;} catch (SQLException e)e.printStackTrace(;}}以上代码示例中,我们通过调用`Class.forName(`方法来加载MySQL 数据库的驱动程序。
Java swing 连接数据库的步骤1.在工程中导入3个jar包,详见(导入Jar包的过程.doc2.在类中导入包aimport java.sql.*;bimport com.microsoft.jdbc.sqlserver.*;3.声明连接对象,执行语句对象,结果集对象aConnection conn=null;bStatement stmt=null;cResultSet rs=null;4.定义连接字符串afinal String CLASSFORNAME ="com.microsoft.jdbc.sqlserver.SQLServerDriver";bfinal String DBURL ="jdbc:microsoft:sqlserver://127.0.0.1:1433;DataBaseName=pubs";cfinal String USER="sa";dfinal String PASS="";5.创建连接对象try {Class.forName(CLASSFORNAME;conn=DriverManager.getConnection(DBURL,USER,PASS;} catch (SQLException e {System.out.println(e.getMessage(;} catch (ClassNotFoundException ex {JOptionPane.showMessageDialog(this,"练苦失败";return;}6.创建执行语句对象stmttry {String sql = "insert into users values('name1','pass1'";//上一行代码可以写成下一行的方式,试分析它的作用是什么? //String sql = "insert into users values('" +name+ "','"+pass+"'"; stmt = conn.createStatement(;stmt.executeUpdate (sql;} catch (SQLException ex1 {}7.完毕。
Java中数据库连接和连接池的最佳实践引言:在Java开发中,数据库连接和连接池是非常重要的概念。
数据库连接是应用程序与数据库之间的通道,用于执行SQL语句和获取数据。
而连接池则是为了提高数据库连接的效率和性能,避免频繁地创建和关闭连接。
本文将介绍Java中数据库连接和连接池的最佳实践,包括连接的建立和关闭、连接池的配置和使用等方面。
一、数据库连接的建立和关闭1. 使用JDBC连接数据库在Java中,我们可以使用JDBC(Java Database Connectivity)来连接数据库。
JDBC提供了一套API,用于与不同的数据库进行交互。
连接数据库的过程通常包括以下几个步骤:(1)加载数据库驱动程序:使用Class.forName()方法加载数据库驱动程序,例如Class.forName("com.mysql.jdbc.Driver")加载MySQL的驱动程序。
(2)建立数据库连接:使用DriverManager.getConnection()方法建立与数据库的连接,需要提供数据库的URL、用户名和密码等信息。
(3)执行SQL语句:使用Connection对象的createStatement()方法创建Statement对象,然后使用Statement对象的executeQuery()方法执行SQL语句。
(4)获取结果集:使用ResultSet对象获取执行SQL语句的结果集。
(5)关闭连接:使用Connection对象的close()方法关闭数据库连接。
2. 连接的关闭在使用完数据库连接后,我们需要及时关闭连接,释放资源。
关闭连接的目的是为了避免数据库连接的泄露和占用过多的系统资源。
通常情况下,我们可以在finally块中关闭连接,以确保无论是否发生异常,连接都能被正确关闭。
二、连接池的配置和使用1. 为什么需要连接池在传统的数据库连接方式中,每次请求都需要创建一个新的数据库连接,执行完操作后再关闭连接。
如何在Java中进行数据库的连接池和连接管理?在Java中进行数据库的连接池和连接管理是非常重要的,它可以帮助我们高效地管理数据库连接并提高系统的性能。
本文将介绍在Java中进行数据库连接池和连接管理的方法,包括连接池的概念、连接池的实现、连接的获取和释放、连接的测试和超时处理等。
一、连接池的概念连接池是一种管理数据库连接的机制,它通过预先创建一定数量的数据库连接,并将这些连接保存在池中,待需要时从池中获取连接,使用完毕后再释放连接到池中,以供其他请求使用。
这样可以避免频繁地创建和销毁数据库连接,从而提高系统的性能。
二、连接池的实现Java中有多种数据库连接池的实现,常见的有C3P0、DBCP和Druid等。
这些连接池实现都提供了相关的API和配置文件,以便我们方便地使用和配置连接池。
1. C3P0连接池C3P0连接池是一个开源的Java连接池实现,它提供了丰富的配置选项和高度可定制的特性。
我们可以通过以下步骤来使用C3P0连接池:(1)导入C3P0的相关依赖包,如c3p0-0.9.5.5.jar。
(2)在数据库连接的配置文件中配置相应的连接池参数,如最小连接数、最大连接数、预创建连接数等。
(3)通过C3P0的DataSource来获取数据库连接,如:```javaComboPooledDataSource dataSource = new ComboPooledDataSource();Connection connection = dataSource.getConnection();```2. DBCP连接池DBCP连接池是Apache软件基金会开发的一个连接池实现,它具有良好的性能和稳定性。
我们可以通过以下步骤来使用DBCP连接池:(1)导入DBCP的相关依赖包,如commons-dbcp2-2.9.0.jar。
(2)在数据库连接的配置文件中配置相应的连接池参数,如最小空闲连接数、最大活动连接数、连接超时时间等。
JDBC数据库连接的使用教程JDBC(Java数据库连接)是Java应用程序与数据库之间进行通信的一种标准方式。
JDBC提供了一组API,使得开发人员可以使用Java代码来访问数据库。
本文将介绍JDBC的基本使用方法,包括连接数据库、执行SQL语句以及处理结果集等。
1. 连接数据库在使用JDBC连接数据库之前,需要先下载并安装相应的数据库驱动程序。
数据库驱动程序是一个Java库,其提供了与特定数据库通信所需的功能。
首先,需要在Java代码中导入数据库驱动程序:```import java.sql.*;```然后,使用以下代码连接数据库:```String url = "jdbc:mysql://localhost:3306/mydatabase";String user = "username";String password = "password";Connection conn = null;try {conn = DriverManager.getConnection(url, user, password);// 连接成功} catch (SQLException e) {// 连接失败}```其中,url是数据库的连接地址,它包括数据库协议、主机名和端口号以及数据库名称。
user和password是连接数据库的用户名和密码。
Connection对象表示与数据库之间的连接,它可以用于执行SQL语句并处理结果。
2. 执行SQL语句一旦连接成功,就可以使用Connection对象执行SQL语句。
以下是一个简单的示例,它执行了一个SELECT语句并打印出结果集:```Statement stmt = null;ResultSet rs = null;try {stmt = conn.createStatement();rs = stmt.executeQuery("SELECT * FROM mytable");while (rs.next()) {int id = rs.getInt("id");String name = rs.getString("name");System.out.println("id: " + id + ", name: " + name);}} catch (SQLException e) {// 处理异常} finally {// 关闭资源try { rs.close(); } catch (Exception e) { /* ignored */ }try { stmt.close(); } catch (Exception e) { /* ignored */ }}```首先,使用Connection对象创建一个Statement对象,它可以用于执行SQL语句。
Java中使用JDBC连接数据库例程与注意事项这里以JDBC连接Oracle 10g为例。
Java 连接数据库,可以通过JDBC的方式。
首先需要下载JDBC的jar包。
详细情况下文这里以JDBC连接Oracle 10g为例Java 连接数据库,可以通过JDBC的方式。
首先需要下载JDBC的jar包。
实例代码如下:1.2.import java.sql.Connection;3.import java.sql.PreparedStatement;4.import java.sql.ResultSet;5.import java.util.ArrayList;6.import java.util.List;7.8.import javax.sql.PooledConnection;9.10.import oracle.jdbc.pool.OracleConnectionPoolDataSource;11.12.public class JDBCTest {13.private String url = null;14.15./*16. *17. */18.public JDBCTest(String sHostName, String sPortNumber, String sSid){19. url = "jdbc:oracle:thin:@" + sHostName + ":" + sPortNumber + ":" + sSid;20.// if JDK1.6 you also can use as21.// url = "jdbc:oracle:thin:@" + sHostName + ":" + sPortNumber+ "/" + sSid;22. }23.24.public List<String> getList(String sUsrName, String sPassword, String sql) {25. List<String> resultList = new ArrayList<String>();26.try {27. OracleConnectionPoolDataSource ocpds = new OracleConnectionPoolDataSource();28. String url1 = System.getProperty("JDBC_URL");29.if (url1 != null)30. url = url1;31. ocpds.setURL(url);32. ocpds.setUser(sUsrName);33. ocpds.setPassword(sPassword);34. PooledConnection pc = ocpds.getPooledConnection();35. Connection conn = pc.getConnection();36. PreparedStatement pstmt = conn.prepareStatement(sql);37. ResultSet rset = pstmt.executeQuery();38.while (rset.next()) {39. resultList.add(rset.getString(1));40. }41. rset.close();42. pstmt.close();43. conn.close();44. pc.close();45. } catch (Exception e) {46.47. }48.return resultList;49. }50.51./**52. * @param args53. */54.public static void main(String[] args) {55.// use you real info56. String sUsrName = "";57. String sPassword = "";58. String sql = "";59.60. JDBCTest jdbctest = new JDBCTest("localhost", "1521", "orcl");61. List<String> list = jdbctest.getList(sUsrName, sPassword, sql);62. System.out.println(list.size());63. }64.65.}需要特别注意的是:url = "jdbc:oracle:thin:@" + sHostName + ":" + sPortNumber + "/" + sSid;在JDK1.6 中,可以使用如上的url . 也就是port 和sid之间可以用“/”分割。
JAVA使用JDBC连接数据库的几种方式JDBC(Java Database Connectivity)是Java编程语言用于连接数据库的一种标准API。
它提供了一种访问和操作不同类型数据库的方法。
在JDBC中,有几种不同的方式可以连接数据库。
下面是常见的几种方式以及它们的详细介绍。
1.使用JDBC驱动程序连接数据库2. DriverManager类连接数据库DriverManager是一个Java类,用于管理JDBC驱动程序。
它提供了一种简单的方法来注册和获取特定驱动程序的连接。
使用DriverManager 连接数据库时,首先需要加载驱动程序,并使用驱动程序的URL、用户名和密码创建连接。
然后可以使用这个连接执行SQL查询和更新操作。
3. DataSource接口连接数据库DataSource是一个接口,用于从数据库连接池获取连接。
连接池是一组预先创建的数据库连接,可以重复使用,从而提高应用程序的性能。
通过使用DataSource接口,可以通过配置连接池的方式来连接和管理数据库连接。
这种方式通常适用于大型应用程序或需要高并发连接的场景。
4. 使用JNDI(Java Naming and Directory Interface)连接数据库JNDI是Java提供的一种用于在Java应用程序中查找和访问命名服务的API。
通过使用JNDI,可以在应用程序中配置数据库连接信息,并使用统一的方式访问数据库。
这种方式通常适用于企业级应用程序,其中数据库连接信息可以统一管理。
5.使用第三方库连接数据库除了使用JDBC标准API连接数据库,还可以使用一些第三方库来简化数据库访问。
例如,Hibernate是一个流行的Java持久化框架,它提供了一种简单的方式来与数据库进行交互。
使用Hibernate,可以通过简单的配置来连接和管理数据库。
总结:上述是几种使用JDBC连接数据库的方式。
每种方式都有自己的优势和适用场景。
java中JDBC连接数据库代码和步骤详解及实例代码java 中JDBC连接数据库代码和步骤详解JDBC连接数据库•创建⼀个以JDBC连接数据库的程序,包含7个步骤:1、加载JDBC驱动程序:在连接数据库之前,⾸先要加载想要连接的数据库的驱动到JVM(Java虚拟机),这通过ng.Class类的静态⽅法forName(String className)实现。
例如:try{//加载MySql的驱动类Class.forName("com.mysql.jdbc.Driver") ;}catch(ClassNotFoundException e){System.out.println("找不到驱动程序类,加载驱动失败!");e.printStackTrace() ;}成功加载后,会将Driver类的实例注册到DriverManager类中。
2、提供JDBC连接的URL•连接URL定义了连接数据库时的协议、⼦协议、数据源标识。
•书写形式:协议:⼦协议:数据源标识协议:在JDBC中总是以jdbc开始⼦协议:是桥连接的驱动程序或是数据库管理系统名称。
数据源标识:标记找到数据库来源的地址与连接端⼝。
例如:(MySql的连接URL)jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk ;useUnicode=true:表⽰使⽤Unicode字符集。
如果characterEncoding设置为gb2312或GBK,本参数必须设置为true 。
characterEncoding=gbk:字符编码⽅式。
3、创建数据库的连接•要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,该对象就代表⼀个数据库的连接。
•使⽤DriverManager的getConnectin(String url , String username , String password )⽅法传⼊指定的欲连接的数据库的路径、数据库的⽤户名和密码来获得。
JDBC连接数据库步骤及代码JDBC(Java Database Connectivity)是Java语言访问数据库的标准规范,提供了一种统一的方式来连接和操作不同的数据库。
在Java程序中,使用JDBC连接数据库的步骤主要有以下几个:1.导入JDBC相关的类库首先,在Java程序中导入JDBC相关的类库。
这些类库通常是以.jar 文件的形式提供的,可以通过在项目中添加这些.jar文件来导入相应的类库。
2.加载数据库驱动在使用JDBC连接数据库之前,需要加载相应的数据库驱动。
每种数据库都有自己的驱动类,需要根据数据库的类型选择相应的驱动类。
加载数据库驱动通常使用Class.forName(方法来实现。
示例代码:``````这里以MySQL数据库为例,加载MySQL的驱动类。
3.建立数据库连接建立数据库连接需要使用Java中提供的java.sql包中的接口和类。
在建立数据库连接时,需要指定数据库的URL、用户名和密码等信息。
数据库的URL通常由数据库类型、主机名、端口号、数据库名等信息组成。
示例代码:```String url = "jdbc:mysql://localhost:3306/testdb";String username = "root";String password = "password";Connection conn = DriverManager.getConnection(url, username, password);```以上代码建立了一个MySQL数据库的连接,连接的URL是"jdbc:mysql://localhost:3306/testdb",用户名是"root",密码是"password"。
4.创建执行SQL语句的对象在建立了数据库连接之后,需要创建一个执行SQL语句的对象。
JAVA使用JDBC连接数据库的几种方式JDBC是Java数据库连接的缩写,它是Java程序和数据库之间进行通信的一种标准方式。
在Java中,有几种方式可以使用JDBC连接数据库:1.JDBC-ODBC桥连接:这是一种连接数据库的最基本方式,JDBC通过ODBC驱动程序连接到数据库。
首先需要确保系统上已经安装了ODBC驱动程序,然后在Java程序中使用JDBC-ODBC桥进行连接。
但是,JDBC-ODBC桥只在Windows系统上可用,并且已经在最新版本的JDK中被弃用。
2.针对特定数据库的JDBC驱动程序连接:3.使用第三方数据库连接池连接:4.使用JNDI连接:JNDI(Java命名和目录接口)是Java API的扩展,用于查找和访问命名和目录服务。
使用JNDI连接数据库,首先需要在应用服务器上配置数据源,然后在Java程序中使用JNDI来查找和获取数据源。
这种方式适用于在企业环境中使用应用服务器连接数据库。
5.使用ORM框架连接:ORM(对象关系映射)框架是一个将对象模型和关系数据库之间进行映射的工具。
使用ORM框架连接数据库,首先需要配置框架的参数和实体类与数据库表之间的映射关系,然后在Java程序中使用框架提供的API进行数据库操作。
常见的Java ORM框架有Hibernate、MyBatis等。
总结:以上是几种常见的使用JDBC连接数据库的方式。
选择何种方式连接数据库取决于具体需求和环境。
如果只是简单的数据库连接操作,可以使用基本的JDBC-ODBC桥或特定数据库的JDBC驱动程序连接。
如果需要提高性能和可伸缩性,可以考虑使用数据库连接池连接。
在企业环境中,可以使用JNDI连接或ORM框架连接。
无论选择哪种方式,都需要注意配置正确的连接参数和处理连接、事务等异常情况。
Java数据库连接池的原理与应用Java数据库连接池是管理在应用程序和数据库之间的连接的一种技术,它提供了一组API来管理数据库连接。
数据库连接池可以显著提高Web应用程序的性能、可伸缩性和稳定性。
连接池是一个保存连接对象,只需初始化一次并重复使用的对象集合。
与每个连接请求创建和关闭连接的一般方式不同,此模式在应用程序中启动时创建池,并在应用程序关闭时销毁池。
而连接池管理的连接对象是活动的数据库连接,它们可以像普通的数据库连接对象一样进行用于执行事务、查询等一系列数据库操作。
连接池在创建对象之前检查池中是否有可用对象,如果有,则返回可用的连接对象,否则创建一个新的连接对象并将其添加到池中。
连接池还允许开发人员最大程度地使用可用的资源,因为它们不用每次请求都创建一个新的连接对象。
Java应用程序中连接到数据库的最基本方法是执行JDBC连接。
JDBC在连接到数据库时,用户必须手动访问数据库接口并执行所有的连接和关闭连接。
这种方式会导致异步问题,因此开发人员可以使用连接池来管理连接。
使用连接池可以有效地提取一些经常性的数据库连接开销,例如TCP协议的应用程序和SQL查询引擎的协议之间的握手和身份验证。
该结构允许开发人员保证整个系统所使用的连接个数是可控的,而不必干扰应用程序的性能。
在Java中,人们可以使用ognl实现连接池的功能,而数据库连接池也是连接池的一种。
Java数据库连接池允许开发人员动态处理对象,因此他们能够更改连接池的大小、闲置连接的最大数目与等等。
总体而言,Java的数据库连接池可以显著提高应用程序运行的结果,提供数据连接的稳定性。
这一技术在Web应用程序中得到了广泛的应用,其原因是它所提供的连接对象的可重用性和作为整个系统资源的合理利用性可以大大提高应用程序的性能并降低成本。
Java中的数据库连接池的使用方法在Java开发中,数据库连接是非常常见的操作。
然而,频繁地创建和关闭数据库连接会给系统性能带来一定的影响。
为了解决这个问题,我们可以使用数据库连接池来管理连接。
本文将介绍Java中数据库连接池的使用方法。
1. 什么是数据库连接池?数据库连接池是一种用于管理数据库连接的技术。
它通过提前创建一定数量的数据库连接,并将这些连接保存在连接池中,当需要连接数据库时,直接从连接池中获取连接,使用完毕后将连接返回给连接池,而不是每次都重新创建和关闭连接。
这样可以减少连接的创建和销毁,提高系统性能。
2. 数据库连接池的优点使用数据库连接池有以下几个优点:2.1 提高系统性能:连接池可以减少连接的创建和关闭,减少系统资源的消耗,提高系统的性能。
2.2 提高系统稳定性:连接池可以对连接进行有效的管理,避免因为连接未关闭而导致的内存泄漏等问题,提高系统的稳定性。
2.3 提供连接的复用:连接池可以将连接保存在连接池中,供多个线程复用,减少了连接的创建和销毁的开销。
3. 数据库连接池的使用方法在Java中,我们可以使用一些开源的数据库连接池库来实现数据库连接池的功能,比如常用的Apache Commons DBCP、C3P0、HikariCP等。
下面以Apache Commons DBCP为例,介绍数据库连接池的使用方法。
3.1 引入依赖首先,我们需要在项目的依赖中引入Apache Commons DBCP库。
可以在项目的构建工具(如Maven、Gradle)中添加以下依赖:```<dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency>```3.2 配置连接池接下来,我们需要在项目的配置文件中配置连接池的相关参数。
Java的JDBC数据库连接池实现方法2009-07-17 13:32 BBT_soft 百度空间我要评论(1)字号:T| T虽然J2EE程序员一般都有现成的应用服务器所带的JDBC数据库连接池,不过对于开发一般的Java Application、 Applet或者JSP、velocity时,我们可用的JDBC数据库连接池并不多,并且一般性能都不好。
AD:Java程序员都很羡慕Windows ADO ,只需要new Connection 就可以直接从数据库连接池中返回Connection。
并且 ADO Connection 是线程安全的,多个线程可以共用一个Connection,所以ASP程序一般都把getConnection 放在 Global.asa 文件中,在 IIS 启动时建立数据库连接。
ADO 的Connection 和Result 都有很好的缓冲,并且很容易使用。
其实我们可以自己写一个JDBC数据库连接池。
写JDBC connection pool 的注意事项有:1. 有一个简单的函数从连接池中得到一个 Connection。
2. close 函数必须将connection 放回数据库连接池。
3. 当数据库连接池中没有空闲的connection,数据库连接池必须能够自动增加connection 个数。
4. 当数据库连接池中的connection 个数在某一个特别的时间变得很大,但是以后很长时间只用其中一小部分,应该可以自动将多余的connection 关闭掉。
5. 如果可能,应该提供debug 信息报告没有关闭的new Connection 。
如果要new Connection 就可以直接从数据库连接池中返回Connection,可以这样写( Mediator pattern ) (以下代码中使用了中文全角空格):1.public class EasyConnection implements java.sql.Connection{2.private Connection m_delegate = null;3.public EasyConnection(){4.m_delegate = getConnectionFromPool();5.}6.public void close(){7.putConnectionBackToPool(m_delegate);8.}9.public PreparedStatement prepareStatement(String sql) throws SQLException{10.m_delegate.prepareStatement(sql);11.}12.//...... other method13.}看来并不难。