From 81e363730eeebea994ce9beabba6d691795c115a Mon Sep 17 00:00:00 2001 From: "Edward M. Kagan" Date: Mon, 8 Nov 2021 16:13:22 +0300 Subject: [PATCH] Initial textual assumptions --- readme.md | 32 ++++++++++++++++++++++++++++++++ sources.md | 1 + 2 files changed, 33 insertions(+) create mode 100644 readme.md create mode 100644 sources.md diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..a7c4900 --- /dev/null +++ b/readme.md @@ -0,0 +1,32 @@ +# Java ORM test + +## Initial assumptions + +- JPA is f\*\*\*ing slow, due too many layers of abstraction +- NO xml and other shit-styled non-code-like sources must be needed +- no additional tools to work (only boxed with technology set or none is applicable) + + +## Initila list of techs + +- [Apache Cayenne](https://github.com/apache/cayenne) +- [Ebean](https://github.com/ebean-orm/ebean) +- [MyBatis](https://github.com/mybatis/mybatis-3) +- [jOOQ](https://github.com/jOOQ/jOOQ) +- [speedment](https://github.com/speedment/speedment) +- [Hibernate](https://github.com/hibernate/hibernate-orm) (as JPA representative - zero mark) + +## Initial criteria + +Must: + +- encrypted columns +- no raw SQL for simple CRUD operations +- support for PostgreSQL + +Good to see if: + +- support for MariaDB +- support extended PostgreSQL features (including json and array) +- "N+1" problem automatic solutions (as much as possible) +- ability to generate raw SQL (to be executed elsewhere) diff --git a/sources.md b/sources.md new file mode 100644 index 0000000..b5ce8d4 --- /dev/null +++ b/sources.md @@ -0,0 +1 @@ +1. [Java persistence frameworks comparison](https://github.com/bwajtr/java-persistence-frameworks-comparison) (from 2017)