Giter VIP home page Giter VIP logo

caching-solutions's Introduction

Caching-solutions

Open Source Love

Build Status Coverage Status Dependency Status contributions welcome

A project that shows caching solution approaches with code generation Lombok and AutoValue

Table of contents:

Checks

Jacoco/cobertura code coverage, pmd, checkstyle, enforcer, findbugs

Structure

  • org.caching.autovalue contains example with builder, equals, hashcode, getters, setters example without much flexibility
  • org.caching.lombok contains examples with Lombok features. In IDE plugins for Lombok are needed. Main features: getters, setters, equals, hashcode, builder, lazy getter, sneakyThrows, synchronized, logger code generation.
  • Ehcache2TransactionDaoTest test for direct usage of ehcache version 2 with spring
  • JbossCacheTransactionDaoTest test with Jboss cache usage
  • JCacheEhCache2TransactionDaoTest jcache standard protocol with Ehcache 2 version as an implementation Use getClass().getClassLoader().getResourceAsStream("filename") instead of full path to file (like: scr/main/resources/filename) which is not a case in jar file
  • JCacheEhCache3TransactionDaoTest jcache standard protocol with Ehcache 3 version as an implementation with spring (no spring configuration for direct usage of ehcache 3 yet).
  • JCacheHazelcastTransactionDaoTest jcache standard protocol with Hazelcast as an implementation
  • SpringCacheTransactionDaoTest test for spring simple cache usage Tests show saving to cache / without cache and reading the values. With Cache look ups are quicker. Evict does nothing, cause small data. Clearing cache shows that cache is not hit in this case.
  • GuavaCacheTest test Guava abilities to cache

Building project

mvn clean package

Coverage

Excluded some auto generated classes from cobertura and coveralls coverage for lombok and autovalue cause they do not support it well

Pom.xml

Libraries:

  • hazelcast
  • ehcache 2
  • ehcache 3
  • jboss cache
  • jcache
  • guava
  • spring
  • lombok
  • autovalue
  • log4j logging (possibility to configure) via slf4j

Ideas

caching-solutions's People

Contributors

iurii-dziuban avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.