https://github.com/jfaster/mango
Distributed ORM Framework for Java
https://github.com/jfaster/mango
java mango orm-framework sharding
Last synced: about 1 month ago
JSON representation
Distributed ORM Framework for Java
- Host: GitHub
- URL: https://github.com/jfaster/mango
- Owner: jfaster
- License: apache-2.0
- Created: 2013-11-23T07:00:12.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2022-10-18T02:06:26.000Z (almost 3 years ago)
- Last Synced: 2025-07-18T14:08:58.234Z (3 months ago)
- Topics: java, mango, orm-framework, sharding
- Language: Java
- Homepage: http://mango.jfaster.org/
- Size: 2.66 MB
- Stars: 920
- Watchers: 154
- Forks: 360
- Open Issues: 28
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
- awesome-java - Mango
README
Mango: Distributed ORM Framework for Java
=========================================[](https://travis-ci.org/jfaster/mango)
[](https://coveralls.io/github/jfaster/mango?branch=master)
[](http://www.apache.org/licenses/LICENSE-2.0.html)Fast, simple, reliable. Mango is a high-performance Distributed ORM Framework.
Mango makes it easier to use a relational database with object-oriented applications.
Performance and Simplicity are the biggest advantage of the Mango data mapper over object relational mapping tools.
In our payment system, we use mango to build a distributed payment order system
that can handle 120000+ payment order per second.Documentation is at http://mango.jfaster.org/
Requires JDK 1.8 or higher.
Latest release
--------------The most recent release is Mango 2.0.1, released Jul 14, 2020.
To add a dependency on Mango using Maven, use the following:
```xml
org.jfaster
mango
2.0.1```
To add a dependency using Gradle:
```
dependencies {
compile 'org.jfaster:mango:2.0.1'
}
```JMH Benchmarks
--------------Microbenchmarks were created to isolate and measure the overhead of ORM framework using the [JMH microbenchmark framework](http://openjdk.java.net/projects/code-tools/jmh/) developed by the Oracle JVM performance team. You can checkout the [Mango benchmark project for details](https://github.com/jfaster/mango-benchmark) and review/run the benchmarks yourself.

* Jdbc means using only native jdbc API, do not use any ORM frameworks.
* One *Query Cycle* is defined as single ``select id, name, age from user where id = ?``.
* One *Update Cycle* is defined as single ``update user set age = ? where id = ?``.
1 Versions: mango 1.3.5, spring-jdbc 4.0.5, mybatis 3.4.0, hsqldb 2.3.1, Java 1.7.0_25
2 Java options: -server -XX:+AggressiveOpts -XX:+UseFastAccessorMethods -Xms1096m -Xmx1096m