Trace:
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
jvx:client:gui:controlling_metadata_cache [2018/02/01 10:53] admin |
jvx:client:gui:controlling_metadata_cache [2020/06/08 13:44] (current) cduncan |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ~~Title: Controlling Meta Data Caching~~ | + | ~~Title: Controlling Metadata Caching~~ |
- | A database application always requires meta data where single columns are defined and described. This includes information about which column is the primary key, the column´s data type, and potentially the length and if zero values can be accepted. All of this information is called meta data. | + | A database application always requires metadata where single columns are defined and described. This includes information about which column is the primary key, the column´s data type, and potentially the length and if zero values can be accepted. All of this information is called metadata. |
- | JVx automatically assumes meta data from the database. This way domain models do not have to be created, although nothing would stop us from doing so. | + | JVx automatically assumes metadata from the database. This way domain models do not have to be created, although nothing would stop us from doing so. |
- | The user interface also needs meta data to work properly, since, for example, no letters can be entered in a numerical column. The meta data therefore has to be transmitted from the server to the client (of course for each server object). | + | The user interface also needs metadata to work properly, since, for example, no letters can be entered in a numerical column. The metadata, therefore, has to be transmitted from the server to the client (of course, for each server object). |
- | The necessary request, and also the data transmission of course, take some time. During productive operation we would rather avoid this loss of performance. | + | The necessary request -- and also the data transmission, of course -- take some time. During productive operation, we would rather avoid this loss of performance. |
- | For this reason JVx has an automatic meta data cache. | + | For this reason, JVx has an automatic metadata cache. |
This cache supports various modes: | This cache supports various modes: | ||
- | * **Global** \\ The cache works statically, per VM instance, depending on how the cache is built up (dynamically or pre-set). Ideally, only one request for the meta data of all server objects of the entire application is required. | + | * **Global** \\ The cache works statically, per VM instance, depending on how the cache is built up (dynamically or preset). Ideally, only one request for the metadata of all server objects of the entire application is required. |
- | * **DataSource** \\ The cache is tied to a datasource; the meta data for all server objects is transmitted via a single request. Therefore one request for meta data is required per data source. | + | * **Datasource** \\ The cache is tied to a datasource; the metadata for all server objects is transmitted via a single request. Therefore, one request for metadata is required per datasource. |
- | * **Off** \\ Deactivates the meta data cache; one meta data request is required per server object. | + | * **Off** \\ Deactivates the metadata cache; one metadata request is required per server object. |
The cache is configured using the following method: | The cache is configured using the following method: | ||
Line 25: | Line 25: | ||
<file java> | <file java> | ||
- | //put meta data to the global cache | + | //put metadata to the global cache |
RemoteDataSource.putGlobalMetaData(String, MetaData); | RemoteDataSource.putGlobalMetaData(String, MetaData); | ||
- | //get meta data from the global cache | + | //get metadata from the global cache |
RemoteDataSource.getGlobalMetaData(String); | RemoteDataSource.getGlobalMetaData(String); | ||
</file> | </file> | ||
Line 35: | Line 35: | ||
<file java> | <file java> | ||
- | //put datasource meta data | + | //put datasource metadata |
dataSource.putMetaData(String, MetaData); | dataSource.putMetaData(String, MetaData); | ||
- | //get datasource meta data | + | //get datasource metadata |
dataSource.getMetaData(String); | dataSource.getMetaData(String); | ||
</file> | </file> | ||
Line 44: | Line 44: | ||
**<fs 20px>Note</fs>** | **<fs 20px>Note</fs>** | ||
- | The meta data cache is dynamically built up at the server and updated continuously. To enable the cache buildup, the user interface has to access the server objects after the start of the application server. | + | The metadata cache is dynamically built up at the server and updated continuously. To enable the cache buildup, the user interface has to access the server objects after the start of the application server. |