Class QueryLoader

java.lang.Object
org.apache.commons.dbutils.QueryLoader

public class QueryLoader extends 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 Details

    • QueryLoader

      protected QueryLoader()
      QueryLoader constructor.
  • Method Details

    • instance

      public static QueryLoader instance()
      Return an INSTANCE of this class.
      Returns:
      The Singleton INSTANCE.
    • load

      public Map<String,String> load(String path) throws 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. The properties file to load can be in either line-oriented or XML format. XML formatted properties files must use a .xml file extension.
      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:
      IOException - if a file access error occurs
      IllegalArgumentException - if the ClassLoader can't find a file at the given path.
      InvalidPropertiesFormatException - if the XML properties file is invalid
      See Also:
    • loadQueries

      protected Map<String,String> loadQueries(String path) throws IOException
      Loads a set of named queries into a Map object. This implementation reads a properties file at the given path. The properties file can be in either line-oriented or XML format. XML formatted properties files must use a .xml file extension.
      Parameters:
      path - The path that the ClassLoader will use to find the file.
      Returns:
      Map of query names to SQL values
      Throws:
      IOException - if a file access error occurs
      IllegalArgumentException - if the ClassLoader can't find a file at the given path.
      InvalidPropertiesFormatException - if the XML properties file is invalid
      Since:
      1.1
      See Also:
    • unload

      public void unload(String path)
      Removes the queries for the given path from the cache.
      Parameters:
      path - The path that the queries were loaded from.