6.3. PersistenceManagerFactory Construction
Prev | Chapter 6. JDOHelper | Next

## 6.3. PersistenceManagerFactory Construction

    public static PersistenceManagerFactory getPersistenceManagerFactory (Properties props);

You can use the `getPersistenceManagerFactory` method of the `JDOHelper` to obtain `PersistenceManagerFactory` objects in a vendor-neutral fashion. This method takes a single argument, a `java.util.Properties` instance. The `Properties` instance is used to configure the `PersistenceManagerFactory` before it is returned from the method. Vendors may construct a new `PersistenceManagerFactory` with each invocation of this method, or may pool `PersistenceManagerFactory` instances and return a pooled instance that matches the supplied properties. The available configuration options and their associated property names are discussed in the next chapter detailing the `PersistenceManagerFactory` interface.

Example 6.1. Obtaining a PersistenceManagerFactory

    // this is usually just done once in your application somewhere, and then
    // you cache the factory for easy retrieval by application components; often
    // the properties are read from a properties file
    Properties props = new Properties ();

    // this property key tells the jdohelper what pmfactory class to instantiate
    props.setProperty ("javax.jdo.PersistenceManagerFactoryClass",
        "kodo.jdbc.runtime.JDBCPersistenceManagerFactory");

    // these properties define the default settings for persistence managers
    // produced by this factory; these settings are covered in the next chapter
    props.setProperty ("javax.jdo.option.Optimistic", "true");
    props.setProperty ("javax.jdo.option.RetainValues", "true");
    props.setProperty ("javax.jdo.option.ConnectionUserName", "solarmetric");
    props.setProperty ("javax.jdo.option.ConnectionPassword", "kodo");
    props.setProperty ("javax.jdo.option.ConnectionURL", "jdbc:hsql:database");
    props.setProperty ("javax.jdo.option.ConnectionDriverName",
        "org.hsqldb.jdbcDriver");

    PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory (props);

Prev | Up | Next
6.2. Lifecycle Operations | Home | Chapter 7. PersistenceManagerFactory