---
title: "Java - ConnectionPool för databaser"
type: "forum-thread"
url: "https://www.webforum.nu/amne/programmering/110287-java-connectionpool-för-databaser"
topic: "Programmering"
topic_url: "https://www.webforum.nu/amne/programmering"
author: "Viktor"
published: "2004-08-28T22:26:25.000Z"
updated: "2005-02-06T11:47:37.000Z"
replies: 1
views: 4803
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/programmering/110287-java-connectionpool-för-databaser"
---

# Java - ConnectionPool för databaser

## #1 — Viktor, 2004-08-28T22:26Z

Här är en connection pool för databas anslutningar som jag har gjort i Java, jag har använt den på min hemsida i över 1 år nu utan några som hellst problem.

Koden som följer här nedan är ett exempel program som visar hur man använder min PoolManger, alla Java filer finns med i den bifogade zip filen.

```
/**
 * Simple test program for the Database PoolManager
 */
import java.sql.Connection;
import java.sql.SQLException;

import com.vgsoftware.dbpool.PoolManager;
import com.vgsoftware.dbpool.IConnectionPool;

public class DBPoolTest
{
	public static void main(String[] args)
	{
		try
		{
			//creates a new poolmanager object.
			IConnectionPool pm=new PoolManager("jdbc:mysql://192.168.0.12/test", //sökväg till databasen
				"com.mysql.jdbc.Driver", //drivrutin
				"super_user", //användarnamn
				"super_password", //lösenord
				5, //anslutningar vid start
				8, //max antal anslutningar
				300); //antal sekunder mellan varje städning, vid en städning tas glömda/stängda anslutningar bort och nya skapas

			//get a connection from the poolmanager
			Connection conn=pm.getConnection();

			//use connection

			//release connection back to the poolmanager
			pm.releaseConnection(conn);
			
			//get another connection
			Connection conn2=pm.getConnection();
			
			//use connection for somthing else
			
			//release connection back to the poolmanager
			pm.releaseConnection(conn2);

			//shutdown the poolmanager, closes all connections.
			pm.shutdown();
		}
		catch(SQLException sql)
		{
			sql.printStackTrace(System.err);
		}
		catch(ClassNotFoundException cnfe)
		{
			cnfe.printStackTrace(System.err);
		}
	}
}
```

[Kod](http://member.webforum.nu/4001/dbpool.zip)

EDIT: Ändrade lite i koden eftersom jag hade glömt att använda mitt interface :) 

/Viktor

Permalänk: https://www.webforum.nu/p/110287

## #2 — jme, 2005-02-06T11:47Z

Hittade en bugg i Viktors kod som gör att den sover endast i x antal ms och inte i x antal sekunder, som det ska vara.

Har mailat Viktor om detta. :)

Finns på raderna  57 resp. 64 i klassen DBConnectionPool.

cleaner=new Cleaner(cleanInterval,this); \<- sätt this. framför cleanInterval

Permalänk: https://www.webforum.nu/p/1547981

---

Tråden på webben: https://www.webforum.nu/amne/programmering/110287-java-connectionpool-för-databaser
