what is connection pooling in
java? i have seen a program code which uses connection pooling:
it imports the hashthable and java.lang.object:
package com;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import java.util.Hashtable;
import java.lang.Object;
public class LoginManager
{
private Hashtable currentLogins;
private ConnectionPool connectionPool;
private static final
String SELECT_PASSWORD="SELECT password FROM idpassword WHERE userid=";
private static final String QUOTE="'";
private class LoginProfile extends UserCredentials
{
boolean isLoggedIn=false;
public LoginProfile(UserCredentials credentials)
{
setUser(credentials.getUser());
setPassword(credentials.getPassword());
isLoggedIn=false;
}
}
public LoginManager() throws Exception
{
connectionPool=new ConnectionPool();
connectionPool.intialize();
currentLogins=new Hashtable();
}
public boolean alreadyLoggedIn(UserCredentials credentials)
{
boolean loggedIn=false;
String user=credentials.getUser();
if(currentLogins.containsKey(user))
{
LoginProfile aProfile=(LoginProfile)currentLogins.get(user);
loggedIn=aProfile.isLoggedIn;
}
return loggedIn;
}
public boolean login(UserCredentials credentials) throws SQLException
{
if(alreadyLoggedIn(credentials))
{
return false;
}
LoginProfile profile=new LoginProfile(credentials);
Connection con=connnectionPool.getConnection();
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(SELECT_PASSWORD+QUOTE+credentials.getUser()+QUOTE);
while(rs.next())
{
if(rs.getString(1).equals(credentials.getPassword()))
{
profile.isLoggedIn=true;
currentLogins.put(credentials.getUser(),profile);
break;
}
}
return profile.isLoggedIn;
}
}
iam trying to implement the same in the intranet project for my department..
how do we use the connection pooling ..
jyotsana