Article research started

master
Edward M. Kagan 4 years ago
parent a5ce73138f
commit 5d7f37f49a

@ -9,15 +9,28 @@
## Initila list of techs ## Initila list of techs
- [Apache Cayenne](https://github.com/apache/cayenne) [💳]: ## "non-free actually"
- [Ebean](https://github.com/ebean-orm/ebean) [✨]: ## "free and open-source"
- [jOOQ](https://github.com/jOOQ/jOOQ) [🧬]: ## "JPA (Java Persistence API)"
- [speedment](https://github.com/speedment/speedment) [🦠]: ## "JDO (Java Data Objects)"
[📝]: ## "DB-first"
[🧱]: ## "Object-first"
[🧰]: ## "Has tools package"
[🩹]: ## "Community driven tools"
<!-- [🚂]: ## "DDL" -->
- [Apache Cayenne](https://github.com/apache/cayenne) [📝] [🧰] [✨]
- [Apache OpenJPA](https://github.com/apache/openjpa) [🧬] [✨]
- [Ebean](https://github.com/ebean-orm/ebean) [🧱] [🧰] [✨]
- [jOOQ](https://github.com/jOOQ/jOOQ) [💳] [📝] [🧰]
- [speedment](https://github.com/speedment/speedment) [💳] [📝]
- [ORMLite Core](https://github.com/j256/ormlite-core) - [ORMLite Core](https://github.com/j256/ormlite-core)
- [EclipseLink](https://github.com/eclipse-ee4j/eclipselink) - [MyBatis](https://github.com/mybatis/mybatis-3) [📝]
- [MyBatis](https://github.com/mybatis/mybatis-3)
- [Querydsl](https://github.com/querydsl/querydsl) - [Querydsl](https://github.com/querydsl/querydsl)
- [Hibernate](https://github.com/hibernate/hibernate-orm) (as JPA representative - zero mark) - [Hibernate](https://github.com/hibernate/hibernate-orm) [🧬] [🩹] [✨]
- [EclipseLink](https://github.com/eclipse-ee4j/eclipselink) [🧬] [✨]
- [DataNucleus](https://github.com/datanucleus) [🧬] [🦠] [✨]
## Initial criteria ## Initial criteria
@ -85,11 +98,23 @@ Good to see if:
- **speedment** - cool-looking streaming API, but it's way of from common SQL-like syntax & failes to work with UUID columns corectly, also they wanna' our money, dude if we need something not straightly mapped. Out of competition. - **speedment** - cool-looking streaming API, but it's way of from common SQL-like syntax & failes to work with UUID columns corectly, also they wanna' our money, dude if we need something not straightly mapped. Out of competition.
- **jOOQ** - enterprise style peace of ..., but still in. - **jOOQ** - enterprise style peace of ..., but still in.
-
- [Apache Cayenne](https://github.com/apache/cayenne) ## Article cross analysis
- [Ebean](https://github.com/ebean-orm/ebean)
- [ORMLite Core](https://github.com/j256/ormlite-core) Sources:
- [EclipseLink](https://github.com/eclipse-ee4j/eclipselink)
- [Querydsl](https://github.com/querydsl/querydsl) - [Performance Evaluation of JPA Based ORM Techniques](https://www.researchgate.net/publication/313263645_PERFORMANCE_EVALUATION_OF_JPA_BASED_ORM_TECHNIQUES) - Hibernate and EclipseJPA are best of JPA realizations (2016)
- [Hibernate](https://github.com/hibernate/hibernate-orm) (as JPA representative - zero mark) - [Optimizing JPA Performance: An EclipseLink, Hibernate, and OpenJPA Comparison](https://dzone.com/articles/jpa-performance-optimization) - Hibernate looks better in comparison (2010)
- [JPA Performance Benchmark ](https://www.jpab.org/) - good starting point for testing JPA-based ORMs. Best parter for PostgreSQL denoted here is EclipseLink and Hibernate (2012)
- [Why JDO ?](http://db.apache.org/jdo/why_jdo.html) - feature comparison table for JDBC, EJB, JPA, JDO, etc.
Tools:
- [HibernateTools - Reverse Engineering and Code Generation](https://docs.jboss.org/tools/4.0.1.Final/en/hibernatetools/html/plugins.html#refeng_codegen) - how to generate classes for Hibernate from plain DB.
#### Honorable mentioning
- EJB 4.0 (now stands for Jakarta Enterprise Beans) is supported only in GlassFish 6 which is a part of Eclipse Foundation family. It's not included in research due to high binding to one particular implimentation with low chance of change in future.
- EOF (Enterprise Objects Framework) is a part of Apple now (originaly designed in NeXT). It supports java from back in a days, but now it's obsolete as of April 2005 (rise of Objective-C and Mac OS Tiger Intel-epoch)
- Oracle Kodo - JPA-based framework from Oracle, does not compete due to Oracle involvment and price tag.
- Oracle TopLink - part of Oracles' Fusion Middleware, was donated to Eclipse Foundation in 2007, and renamed to EclipseLink, so TopLink is obsolete now.

Loading…
Cancel
Save