@Deprecated public class SimpleDbPersistenceManager extends DatabasePersistenceManager implements DatabaseAware
SimpleDbPersistenceManager is a generic JDBC-based
 PersistenceManager for Jackrabbit that persists
 ItemState and NodeReferences objects using a
 simple custom binary serialization format (see Serializer) and a
 very basic non-normalized database schema (in essence tables with one 'key'
 and one 'data' column).
 It is configured through the following properties:
driver: the FQN name of the JDBC driver classurl: the database url of the form jdbc:subprotocol:subnameuser: the database userpassword: the user's passwordschema: type of schema to be used
 (e.g. mysql, mssql, etc.); schemaObjectPrefix: prefix to be prepended to schema objectsexternalBLOBs: if true (the default) BINARY
 values (BLOBs) are stored in the local file system;
 if false BLOBs are stored in the databasegetClass().getResourceAsStream(schema + ".ddl").
 Every line in the specified .ddl file is executed separately by calling
 java.sql.Statement.execute(String) where every occurrence of the
 the string "${schemaObjectPrefix}" has been replaced with the
 value of the property schemaObjectPrefix.
 The following is a fragment from a sample configuration using MySQL:
   <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager">
       <param name="driver" value="com.mysql.jdbc.Driver"/>
       <param name="url" value="jdbc:mysql:///test?autoReconnect=true"/>
       <param name="schema" value="mysql"/>
       <param name="schemaObjectPrefix" value="${wsp.name}_"/>
       <param name="externalBLOBs" value="false"/>
   </PersistenceManager>
 
 The following is a fragment from a sample configuration using Daffodil One$DB Embedded:
 
   <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager">
       <param name="driver" value="in.co.daffodil.db.jdbc.DaffodilDBDriver"/>
       <param name="url" value="jdbc:daffodilDB_embedded:${wsp.name};path=${wsp.home}/../../databases;create=true"/>
       <param name="user" value="daffodil"/>
       <param name="password" value="daffodil"/>
       <param name="schema" value="daffodil"/>
       <param name="schemaObjectPrefix" value="${wsp.name}_"/>
       <param name="externalBLOBs" value="false"/>
   </PersistenceManager>
 
 The following is a fragment from a sample configuration using DB2:
 
   <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager">
       <param name="driver" value="com.ibm.db2.jcc.DB2Driver"/>
       <param name="url" value="jdbc:db2:test"/>
       <param name="schema" value="db2"/>
       <param name="schemaObjectPrefix" value="${wsp.name}_"/>
       <param name="externalBLOBs" value="false"/>
   </PersistenceManager>
 
 The following is a fragment from a sample configuration using MSSQL:
 
   <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager">
       <param name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
       <param name="url" value="jdbc:microsoft:sqlserver://localhost:1433;;DatabaseName=test;SelectMethod=Cursor;"/>
       <param name="schema" value="mssql"/>
       <param name="user" value="sa"/>
       <param name="password" value=""/>
       <param name="schemaObjectPrefix" value="${wsp.name}_"/>
       <param name="externalBLOBs" value="false"/>
   </PersistenceManager>
 
 The following is a fragment from a sample configuration using Ingres:
 
   <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager">
       <param name="driver" value="com.ingres.jdbc.IngresDriver"/>
       <param name="url" value="jdbc:ingres://localhost:II7/test"/>
       <param name="schema" value="ingres"/>
       <param name="user" value="ingres"/>
       <param name="password" value="ingres"/>
       <param name="schemaObjectPrefix" value="${wsp.name}_"/>
       <param name="externalBLOBs" value="false"/>
   </PersistenceManager>
 
 The following is a fragment from a sample configuration using PostgreSQL:
 
   <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager">
       <param name="driver" value="org.postgresql.Driver"/>
       <param name="url" value="jdbc:postgresql://localhost/test"/>
       <param name="schema" value="postgresql"/>
       <param name="user" value="postgres"/>
       <param name="password" value="postgres"/>
       <param name="schemaObjectPrefix" value="${wsp.name}_"/>
       <param name="externalBLOBs" value="false"/>
   </PersistenceManager>
 
 JNDI can be used to get the connection. In this case, use the javax.naming.InitialContext as the driver,
 and the JNDI name as the URL. If the user and password are configured in the JNDI resource,
 they should not be configured here. Example JNDI settings:
 <param name="driver" value="javax.naming.InitialContext" /> <param name="url" value="java:comp/env/jdbc/Test" />See also
DerbyPersistenceManager, OraclePersistenceManager.| Modifier and Type | Field and Description | 
|---|---|
| protected String | driverDeprecated.  | 
| protected String | passwordDeprecated.  | 
| protected String | urlDeprecated.  | 
| protected String | userDeprecated.  | 
autoReconnect, blobDeleteSQL, blobFS, blobInsertSQL, blobSelectExistSQL, blobSelectSQL, blobStore, blobUpdateSQL, con, externalBLOBs, INITIAL_BUFFER_SIZE, initialized, nodeReferenceDeleteSQL, nodeReferenceInsertSQL, nodeReferenceSelectExistSQL, nodeReferenceSelectSQL, nodeReferenceUpdateSQL, nodeStateDeleteSQL, nodeStateInsertSQL, nodeStateSelectExistSQL, nodeStateSelectSQL, nodeStateUpdateSQL, propertyStateDeleteSQL, propertyStateInsertSQL, propertyStateSelectExistSQL, propertyStateSelectSQL, propertyStateUpdateSQL, schema, SCHEMA_OBJECT_PREFIX_VARIABLE, schemaObjectPrefix, SLEEP_BEFORE_RECONNECT| Constructor and Description | 
|---|
| SimpleDbPersistenceManager()Deprecated.  | 
| Modifier and Type | Method and Description | 
|---|---|
| protected Connection | getConnection()Deprecated.  Returns a JDBC connection acquired using the JDBC  DriverManager. | 
| String | getDriver()Deprecated.  | 
| String | getPassword()Deprecated.  | 
| String | getUrl()Deprecated.  | 
| String | getUser()Deprecated.  | 
| void | setConnectionFactory(ConnectionFactory connnectionFactory)Deprecated.  | 
| void | setDriver(String driver)Deprecated.  | 
| void | setPassword(String password)Deprecated.  | 
| void | setUrl(String url)Deprecated.  | 
| void | setUser(String user)Deprecated.  | 
buildSQLStatements, checkSchema, close, closeConnection, closeResultSet, closeStatement, createSchemaSql, destroy, destroy, destroy, executeStmt, exists, exists, existsReferencesTo, getSchema, getSchemaDDL, getSchemaObjectPrefix, init, initConnection, initPreparedStatements, isExternalBLOBs, isSchemaCheckEnabled, load, load, loadReferencesTo, logException, prepareSchemaObjectPrefix, reestablishConnection, resetStatement, setExternalBLOBs, setExternalBLOBs, setSchema, setSchemaCheckEnabled, setSchemaObjectPrefix, store, store, store, storecheckConsistency, createNew, createNewprotected String driver
protected String url
protected String user
protected String password
public void setConnectionFactory(ConnectionFactory connnectionFactory)
setConnectionFactory in interface DatabaseAwarepublic String getUrl()
public void setUrl(String url)
public String getUser()
public void setUser(String user)
public String getPassword()
public void setPassword(String password)
public String getDriver()
public void setDriver(String driver)
protected Connection getConnection() throws RepositoryException, SQLException
DriverManager.getConnection in class DatabasePersistenceManagerSQLExceptionRepositoryException - if the driver could not be loadedSQLException - if the connection could not be establishedDatabasePersistenceManager.getConnection()Copyright © 2004–2022 The Apache Software Foundation. All rights reserved.