Home
Kripton provides for Android platform a simple and uniform way to manage the persistence of Java classes through the use of annotations and interfaces in different flavours:
- as SQLite ORM, implementing DAO pattern
- as data format converter like JSON, XML, (Java) properties, CBOR, YAML, SMILE
- as typed Shared Preference
- as an add-on for Retrofit library to create REST service client.
For Android platform, all kind of persistence mechanism is supported. For generic Java platform, only data format converter and the Retrofit add-on is available.
Kripton uses the power of annotation processors that allows creating java classes persistence code simply with annotations. There are many other libraries that do this, but Kripton allows to persists java object in different ways with a uniform and coherent set of annotation and mechanism.
Kripton was built to be SIMPLE and FAST. How it is SIMPLE will be shown in this documentation. How it is FAST is showed in Benchmarks, which show that KRIPTON is one (maybe the first) JSON persistence binder for ANDROID!
Performance is gained thanks to annotation processing and Jackson library.
There are two platforms: the Android environment and generic Java environment. For each platform, there is a version of the library.
For generic Java platform use:
<!-- https://mvnrepository.com/artifact/com.abubusoft/kripton -->
<dependency>
<groupId>com.abubusoft</groupId>
<artifactId>kripton</artifactId>
<version>4.0.0</version>
</dependency>
For Android platform (in gradle style):
annotationProcessor 'com.abubusoft:kripton-processor:4.0.0'
implementation 'com.abubusoft:kripton-android-library:4.0.0'
- Introduction
- Goals & Features
- Kotlin
- Immutable or Mutable Pojo
- Annotation Processor Args
- Credits
- Articles
- Benchmarks
- Setup
- Tutorial
- Usage
- Dependencies and inspirations
- Stackoverflow
- Documentation
- SQL logging
- Data source options
- Indices
- SQL Type adapter
- Global SQL Type adapter
- Constraints
- Live data: welcome Architectural components!!
- Paged Live data
- Dynamic parts
- Transactional and batch operations
- Async Transactional and batch operations
- Global transaction
- Support for immutable POJO
- Generate Content provider
- Generate Database schema generation
- Database migration
- BindSqlColumn
- BindContentProvider
- BindContentProviderEntry
- BindContentProviderPath
- BindDao
- BindDaoMany2Many
- BindDataSource
- BindDataSourceOptions
- BindDataSourceUpdateTask
- BindIndex
- BindSqlRelation
- BindSqlAdapter
- BindSqlChildSelect
- BindSqlDelete
- BindSqlDynamicOrderBy
- BindSqlDynamicWhere
- BindSqlDynamicWhereParams
- BindSqlInsert
- BindSqlPageSize
- BindSqlParam
- BindSqlSelect
- BindSqlUpdate
- BindSqlType
- BindSqlTransaction