Giter Site home page Giter Site logo

metio / yosql Goto Github PK

View Code? Open in Web Editor NEW
6.0 2.0 1.0 4.32 MB

zero dependency database access for java

Home Page: https://yosql.projects.metio.wtf/

License: Creative Commons Zero v1.0 Universal

Java 98.04% Makefile 0.10% CSS 0.79% HTML 1.07%
java sql javapoet code-generator persistence dagger2 jmh zero-dependency jdbc build-tool gradle-plugin maven-plugin ant-task cli

yosql's Introduction

YoSQL Chat

Take a look at the project website to read the documentation.

License

To the extent possible under law, the author(s) have dedicated all copyright
and related and neighboring rights to this software to the public domain
worldwide. This software is distributed without any warranty.

You should have received a copy of the CC0 Public Domain Dedication along with
this software. If not, see https://creativecommons.org/publicdomain/zero/1.0/.

yosql's People

Contributors

dependabot[bot] avatar gradle-update-robot avatar sebhoss avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

bellmit

yosql's Issues

Configure directory layout

Instead of creating folders w/ SQL files in them, users might want to define a single SQL file that contains multiple statements to declare which repositories should be generated.

Add jooq based API

Instead of using the raw JDBC API, we could use jooq to execute the SQL statements.

Convert Parameters

Converting parameters before handing them over to the JDBC API should be supported out of convenience for users. Instead of converting the parameters before calling the repository, the repository could do the conversion itself

Add foldable comment code blocks

In order to make the generated code easier to read, code blocks could be defined in comments. IntelliJ users could collapse these blocks - Eclipse does not support it (yet)

Allow to load SQL statements at runtime

Instead of inlining them into the generated code, we could load them from file at runtime. This might make it easier for dynamic environments like OSGi to change to statement after deployment without releasing a new version of the generated repositories.

repositorySqlStatements currently only support "inline"

Generate interfaces for repositories

Interfaces might be useful for testing & mocking. Besides the interface name & location, the implementation package for the repository should be configurable.

Support unnamed parameters

Unnamed parameters (?) should be supported as well. Yesql exposes an extra varargs argument to the generated repositories which are getting applied in order

migrate to dagger2

Can't use Plexus API in Gradle plugins, nor in CLI. Dagger2 offers nice speed and can be used everywhere

Support generics

Generics should work for both input parameters and return types

Add CLI

A CLI would be useful for bazel based builds

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.