Class MemoryCacheLevel

java.lang.Object
com.ibatis.sqlmap.engine.cache.memory.MemoryCacheLevel

public final class MemoryCacheLevel extends Object
An enumeration for the values for the memory cache levels.
  • Field Details

    • WEAK

      public static final MemoryCacheLevel WEAK
      Constant for weak caching This cache model is probably the best choice in most cases. It will increase performance for popular results, but it will absolutely release the memory to be used in allocating other objects, assuming that the results are not currently in use.
    • SOFT

      public static final MemoryCacheLevel SOFT
      Constant for soft caching. This cache model will reduce the likelihood of running out of memory in case the results are not currently in use and the memory is needed for other objects. However, this is not the most aggressive cache-model in that regard. Hence, memory still might be allocated and unavailable for more important objects.
    • STRONG

      public static final MemoryCacheLevel STRONG
      Constant for strong caching. This cache model will guarantee that the results stay in memory until the cache is explicitly flushed. This is ideal for results that are:
      1. very small
      2. absolutely static
      3. used very often
      The advantage is that performance will be very good for this particular query. The disadvantage is that if the memory used by these results is needed, then it will not be released to make room for other objects (possibly more important objects).
  • Method Details

    • getReferenceType

      public String getReferenceType()
      Getter for the reference type.
      Returns:
      the type of reference type used
    • getByReferenceType

      public static MemoryCacheLevel getByReferenceType(String refType)
      Gets a MemoryCacheLevel by name.
      Parameters:
      refType - the name of the reference type
      Returns:
      the MemoryCacheLevel that the name indicates