A lightweight and performant Java ORM alternative.

Related tags

Database LightORM
Overview

LightORM

LightORM

A lightweight and performant Java ORM alternative.

Java version GitHub stars Github Issues MIT License

LightORM has annotation processors so that all the integration code with the database is generated at the time of compilation, thus ensuring that you will not have any performance problems.

Getting Started

Setup dependencies

  • Maven
<dependencies>
    <dependency>
        <groupId>com.jpereirax.lightorm</groupId>
        <artifactId>core</artifactId>
        <version>0.1.2-BETA</version>
    </dependency>
</dependencies>

<!-- MavenCompiler Plugin -->

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <annotationProcessorPaths>
                    <annotationProcessorPath>
                        <groupId>com.jpereirax.lightorm</groupId>
                        <artifactId>processor</artifactId>
                        <version>0.1.2-BETA</version>
                    </annotationProcessorPath>
                </annotationProcessorPaths>
            </configuration>
        </plugin>
    </plugins>
</build>
  • Gradle
dependencies {
    implementation 'com.jpereirax.lightorm:core:0.1.2-BETA'
    annotationProcessor 'com.jpereirax.lightorm:processor:0.1.2-BETA'
}

Samples

Connection Configuration

public class DBConfiguration {
    
    public void setupConnection() {
        DataSourceConfiguration configuration = DataSourceConfiguration.builder()
                .connectionType(ConnectionType.H2)
                .database("your_database")
                .maxPoolSize(1)
                .build();

        new DataSource(configuration).openConnection();
    }
}

Return Object

public class User {
    
    private String name;
    private Integer level;
    private String rank;
    
    // Needed to map the query result to the object.
    public User(String name, Integer level, String rank) {
        this.name = name;
        this.level = level;
        this.rank = rank;
    }
    
    // Other methods...
}

DataProvider

@DataProvider
public interface UserDataProvider {
    
    @Query("SELECT NAME, LEVEL, RANK FROM USER WHERE UUID = ?")
    User findByUUID(String uuid);
}



LightORM

You might also like...

jdbi is designed to provide convenient tabular data access in Java; including templated SQL, parameterized and strongly typed queries, and Streams integration

The Jdbi library provides convenient, idiomatic access to relational databases in Java. Jdbi is built on top of JDBC. If your database has a JDBC driv

Dec 27, 2022

esProc SPL is a scripting language for data processing, with well-designed rich library functions and powerful syntax, which can be executed in a Java program through JDBC interface and computing independently.

esProc SPL is a scripting language for data processing, with well-designed rich library functions and powerful syntax, which can be executed in a Java program through JDBC interface and computing independently.

esProc esProc is the unique name for esProc SPL package. esProc SPL is an open-source programming language for data processing, which can perform comp

Dec 27, 2022

A RatingBar library for android, you can customize size, spacing, color and image easily, and support right to left.

A RatingBar library for android, you can customize size, spacing, color and image easily, and support right to left.

AndRatingBar A RatingBar library for android, you can customize size, spacing, color and image easily, and support right to left. 安卓RatingBar终极方案,继承自原

Aug 14, 2021

A blazingly small and sane redis java client

A blazingly small and sane redis java client

Jedis Jedis is a blazingly small and sane Redis java client. Jedis was conceived to be EASY to use. Jedis is fully compatible with redis 2.8.x, 3.x.x

Dec 31, 2022

A blazingly small and sane redis java client

A blazingly small and sane redis java client

Jedis Jedis is a blazingly small and sane Redis java client. Jedis was conceived to be EASY to use. Jedis is fully compatible with redis 2.8.x, 3.x.x

Jan 8, 2023

Event capture and querying framework for Java

Eventsourcing for Java Enabling plurality and evolution of domain models Instead of mutating data in a database, Eventsourcing stores all changes (eve

Nov 5, 2022

Java implementation of Condensation - a zero-trust distributed database that ensures data ownership and data security

Java implementation of Condensation - a zero-trust distributed database that ensures data ownership and data security

Java implementation of Condensation About Condensation enables to build modern applications while ensuring data ownership and security. It's a one sto

Oct 19, 2022
Comments
  • AutoMigrate

    AutoMigrate

    Create annotations for AutoMigrate feature.

    Type Annotation:

    Table(name = "Customer", schema = "Marketplace")

    Field Annotations:

    PrimaryKey Column NotNull

    enhancement 
    opened by JPereirax 0
Releases(0.1.2-BETA)
Owner
Jailson Pereira
A self-taught developer, passionate about bytecode and DevOps.
Jailson Pereira
A zero ceremony ORM for Java

Release notes Welcome Persism is a wood simple, auto discovery, auto configuration, and convention over configuration ORM (Object Relational Mapping)

Dan Howard 121 Dec 17, 2022
Core ORMLite functionality that provides a lite Java ORM in conjunction with ormlite-jdbc or ormlite-android

ORMLite Core This package provides the core functionality for the JDBC and Android packages. Users that are connecting to SQL databases via JDBC shoul

Gray 547 Dec 25, 2022
A simple-to-use storage ORM supporting several databases for Java.

Storage Handler This is a library based off of my old storage handler within my queue revamp. It's for easy storage handling for multiple platforms. N

NV6 7 Jun 22, 2022
sql2o is a small library, which makes it easy to convert the result of your sql-statements into objects. No resultset hacking required. Kind of like an orm, but without the sql-generation capabilities. Supports named parameters.

sql2o Sql2o is a small java library, with the purpose of making database interaction easy. When fetching data from the database, the ResultSet will au

Lars Aaberg 1.1k Dec 28, 2022
ESA Cabin is a lightweight class isolation container for Java applications.

Cabin Cabin是一款Java类隔离框架,用于隔离各个模块之间、模块和业务之间使用的第三方依赖库。使用Cabin后,模块SDK将只是用自己指定 版本的三方依赖,不会被业务引入的依赖所影响,保证业务正常运行,提高业务的开发效率,减少中间件同学此类重复的支持工作。 概述 ESA Cabin用于解决

ESA Stack 22 Dec 1, 2022
ObjectBox is a superfast lightweight database for objects

ObjectBox Java (Kotlin, Android) ObjectBox is a superfast object-oriented database with strong relation support. ObjectBox is embedded into your Andro

ObjectBox 4.1k Dec 30, 2022
MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.

MapDB: database engine MapDB combines embedded database engine and Java collections. It is free under Apache 2 license. MapDB is flexible and can be u

Jan Kotek 4.6k Dec 30, 2022
MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.

MapDB: database engine MapDB combines embedded database engine and Java collections. It is free under Apache 2 license. MapDB is flexible and can be u

Jan Kotek 4.6k Jan 1, 2023