É uma solução para realizar cacheamento de páginas ou trechos de páginas JSP através da utilização de um biblioteca de Tags e de um conjunto de classes para realizar o tratamento dinâmico do cache.
Permite ainda que a realização do cacheamento seja feito em memória ou em disco e pode ser utilizado para permitir que a aplicação se recupere de forma elegante de erros críticos. Por exemplo: se houver queda do banco de dados você pode enviar ao usuário o conteúdo disponível no cache permitindo a navegação e utilização do sistema.
Como realizar o cachamento de páginas JSP
- realizar a importação da taglib <%@ taglib uri=”http://www.opensymphony.com/oscache” prefix=”cache”%>
- delimitar o conteúdo a ser cacheado pelas tags <cache:cache> e
</cache:cache>
- Exemplo de Implementação:
<cache:cache key="idTrecho" duration="24k"> <x:transform doc="xmlDoc" xslt="xsltDoc"> <x:param name="parametro" value="xpto"/> </x:transform> <cache:addgroup group="meuGrupo"/> </cache:cache>
- Atributos da tag cache:cache
- key - utilizado para dar uma identificação única ao trecho cacheado.
- duration - indica a duração do cache. Segue o mesmo pattern do SimpleDateFormat.
- Atributos da tag cache:addgroup
- group - utilizado para identificar de qual grupo o trecho faz parte. Esta informação é muito importante para a o momento de invalidação, pois a mesma é feita por grupos.
Como realizar a invalidação do cache de páginas JSP
Para realizar a invalidação do cache deve-se utilizar a tag <cache:flush>. Veja exemplos de invalidação:
- Invalidação de todo conteúdo cacheado: <cache:flush scope=”application”/>
- Invalidação do conteúdo cacheado e de um grupo específico: <cache:flush scope=”application” group=”meuGrupo” />
- Atributos da tag cache:flush
- scope - scope onde o cacheamento foi realizado. Por default, quando algo é cacheado o escopo é definido como de aplicação.
- group - identifica o nome do grupo que terá o cache invalidado.
Referências