|
|||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
java.lang.Objectorg.apache.velocity.runtime.resource.loader.ResourceLoader
org.apache.velocity.runtime.resource.loader.DataSourceResourceLoader
This is a simple template file loader that loads templates
from a DataSource instead of plain files.
It can be configured with a datasource name, a table name,
id column (name), content column (the template body) and a
datetime column (for last modification info).
Example configuration snippet for velocity.properties:
resource.loader = file, ds
ds.resource.loader.public.name = DataSource
ds.resource.loader.description = Velocity DataSource Resource Loader
ds.resource.loader.class = org.apache.velocity.runtime.resource.loader.DataSourceResourceLoader
ds.resource.loader.resource.datasource = java:comp/env/jdbc/Velocity
ds.resource.loader.resource.table = tb_velocity_template
ds.resource.loader.resource.keycolumn = id_template
ds.resource.loader.resource.templatecolumn = template_definition
ds.resource.loader.resource.timestampcolumn = template_timestamp
ds.resource.loader.cache = false
ds.resource.loader.modificationCheckInterval = 60
Example WEB-INF/web.xml:
and Tomcat 4 server.xml file:
[...]
[...]
[...]
[...]
Example sql script:
CREATE TABLE tb_velocity_template (
id_template varchar (40) NOT NULL ,
template_definition text (16) NOT NULL ,
template_timestamp datetime NOT NULL
)
| フィールドの概要 | |
private javax.naming.InitialContext |
ctx
|
private javax.sql.DataSource |
dataSource
|
private java.lang.String |
dataSourceName
|
private java.lang.String |
keyColumn
|
private java.lang.String |
tableName
|
private java.lang.String |
templateColumn
|
private java.lang.String |
timestampColumn
|
| クラス org.apache.velocity.runtime.resource.loader.ResourceLoader から継承したフィールド |
className, isCachingOn, modificationCheckInterval, rsvc |
| コンストラクタの概要 | |
DataSourceResourceLoader()
|
|
| メソッドの概要 | |
private void |
closeDbConnection(java.sql.Connection conn)
Closes connection to the datasource |
long |
getLastModified(Resource resource)
Get the last modified time of the InputStream source that was used to create the template. |
java.io.InputStream |
getResourceStream(java.lang.String name)
Get an InputStream so that the Runtime can build a template with it. |
void |
init(org.apache.commons.collections.ExtendedProperties configuration)
Initialize the template loader with a a resources class. |
boolean |
isSourceModified(Resource resource)
Given a template, check to see if the source of InputStream has been modified. |
private java.sql.Connection |
openDbConnection()
gets connection to the datasource specified through the configuration parameters. |
private java.sql.ResultSet |
readData(java.sql.Connection conn,
java.lang.String columnNames,
java.lang.String templateName)
Reads the data from the datasource. |
private long |
readLastModified(Resource resource,
java.lang.String i_operation)
Fetches the last modification time of the resource |
| クラス org.apache.velocity.runtime.resource.loader.ResourceLoader から継承したメソッド |
commonInit, getClassName, getModificationCheckInterval, isCachingOn, setCachingOn, setModificationCheckInterval |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
private java.lang.String dataSourceName
private java.lang.String tableName
private java.lang.String keyColumn
private java.lang.String templateColumn
private java.lang.String timestampColumn
private javax.naming.InitialContext ctx
private javax.sql.DataSource dataSource
| コンストラクタの詳細 |
public DataSourceResourceLoader()
| メソッドの詳細 |
public void init(org.apache.commons.collections.ExtendedProperties configuration)
ResourceLoader の記述:
ResourceLoader 内の initpublic boolean isSourceModified(Resource resource)
ResourceLoader の記述:
ResourceLoader 内の isSourceModifiedpublic long getLastModified(Resource resource)
ResourceLoader の記述:
ResourceLoader 内の getLastModified
public java.io.InputStream getResourceStream(java.lang.String name)
throws ResourceNotFoundException
ResourceLoader 内の getResourceStreamname - name of template
ResourceNotFoundException
private long readLastModified(Resource resource,
java.lang.String i_operation)
resource - Resource object we are finding timestamp ofi_operation - string for logging, indicating caller's intention
private java.sql.Connection openDbConnection()
throws java.lang.Exception
java.lang.Exceptionprivate void closeDbConnection(java.sql.Connection conn)
private java.sql.ResultSet readData(java.sql.Connection conn,
java.lang.String columnNames,
java.lang.String templateName)
throws java.sql.SQLException
conn - connection to datasourcecolumnNames - columns to fetch from datasourcetemplateName - name of template to fetch
java.sql.SQLException
|
|||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||