org.apache.commons.dbutils
Class QueryLoader

java.lang.Object
  extended byorg.apache.commons.dbutils.QueryLoader

public class QueryLoader
extends java.lang.Object

QueryLoader is a registry for sets of queries so that multiple copies of the same queries aren't loaded into memory. This implementation loads properties files filled with query name to SQL mappings. This class is thread safe.


Constructor Summary
protected QueryLoader()
          QueryLoader constructor.
 
Method Summary
static QueryLoader instance()
          Return an instance of this class.
 java.util.Map load(java.lang.String path)
          Loads a Map of query names to SQL values.
protected  java.util.Map loadQueries(java.lang.String path)
          Loads a set of named queries into a Map object.
 void unload(java.lang.String path)
          Removes the queries for the given path from the cache.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QueryLoader

protected QueryLoader()
QueryLoader constructor.

Method Detail

instance

public static QueryLoader instance()
Return an instance of this class.

Returns:
The Singleton instance.

load

public java.util.Map load(java.lang.String path)
                   throws java.io.IOException
Loads a Map of query names to SQL values. The Maps are cached so a subsequent request to load queries from the same path will return the cached Map.

Parameters:
path - The path that the ClassLoader will use to find the file. This is not a file system path. If you had a jarred Queries.properties file in the com.yourcorp.app.jdbc package you would pass "/com/yourcorp/app/jdbc/Queries.properties" to this method.
Returns:
Map of query names to SQL values
Throws:
java.io.IOException - if a file access error occurs
java.lang.IllegalArgumentException - if the ClassLoader can't find a file at the given path.

loadQueries

protected java.util.Map loadQueries(java.lang.String path)
                             throws java.io.IOException
Loads a set of named queries into a Map object. This implementation reads a properties file at the given path.

Parameters:
path - The path that the ClassLoader will use to find the file.
Returns:
Map of query names to SQL values
Throws:
java.io.IOException - if a file access error occurs
java.lang.IllegalArgumentException - if the ClassLoader can't find a file at the given path.
Since:
DbUtils 1.1

unload

public void unload(java.lang.String path)
Removes the queries for the given path from the cache.

Parameters:
path - The path that the queries were loaded from.


Copyright © 2002-2006 The Apache Software Foundation. All Rights Reserved.