django-java

A java ODM (Object Document Mapping) framework for mongodb.

License

License

GroupId

GroupId

io.github.guchdes
ArtifactId

ArtifactId

django-core
Last Version

Last Version

3.3.3
Release Date

Release Date

Type

Type

jar
Description

Description

django-java
A java ODM (Object Document Mapping) framework for mongodb.
Project URL

Project URL

https://github.com/guchdes/grpc-spring-boot-starter
Source Code Management

Source Code Management

https://github.com/guchdes/django-java.git

Download django-core

How to add to project

<!-- https://jarcasting.com/artifacts/io.github.guchdes/django-core/ -->
<dependency>
    <groupId>io.github.guchdes</groupId>
    <artifactId>django-core</artifactId>
    <version>3.3.3</version>
</dependency>
// https://jarcasting.com/artifacts/io.github.guchdes/django-core/
implementation 'io.github.guchdes:django-core:3.3.3'
// https://jarcasting.com/artifacts/io.github.guchdes/django-core/
implementation ("io.github.guchdes:django-core:3.3.3")
'io.github.guchdes:django-core:jar:3.3.3'
<dependency org="io.github.guchdes" name="django-core" rev="3.3.3">
  <artifact name="django-core" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.github.guchdes', module='django-core', version='3.3.3')
)
libraryDependencies += "io.github.guchdes" % "django-core" % "3.3.3"
[io.github.guchdes/django-core "3.3.3"]

Dependencies

compile (8)

Group / Artifact Type Version
com.github.javen205 : IJPay-All jar 2.6.2
io.github.guchdes : django-bson jar 3.3.3
org.mongodb : mongo-java-driver jar 3.12.0
org.mongodb : mongodb-driver-core jar 3.12.0
org.springframework.boot : spring-boot Optional jar
org.springframework.boot : spring-boot-autoconfigure Optional jar
net.sf.ehcache : ehcache Optional jar 1.3.0
com.github.ben-manes.caffeine : caffeine Optional jar 2.8.0

Project Modules

There are no modules declared in this project.

django-java

django-java是一个Java语言的mongodb对象文档映射(ODM)框架,目标是提供更简单的数据层操作、简化文档设计,提高开发效率。适用于文档结构繁杂且更新文档需求较多的场景,比如游戏服务器或者信息管理后台等。

核心特性

django-java的核心特性是支持部分更新,根据对文档的修改,自动生成更新语句,实现真正意义上的对象文档映射。 在大部分场景下,你不需要手动来构造出filterupdate等mongodb语句。

关于为什么要使用部分更新,请查看Wiki的介绍

Features

  • 支持结合spring boot,配置简单,快速上手。

  • 一个Java根文档类对应一个mongodb的collection

  • 每个根文档类都有一个key,key相当于collection的唯一索引,根据key做CRUD操作简单方便,另外也支持用Bson来描述复杂的Filter条件。

  • 支持部分更新,自动生成更新语句。文档对象上记录了对它的修改,保存文档入库时只更新修改了的部分,而不是完全更新整个文档。支持部分更新有助于使用最合理的文档结构。

  • 文档类使用专用的类型系统,为文档的定义和使用加了一些限制,但同时也使文档类定义更规范。

  • 支持文档缓存层,可以根据key缓存文档。

  • 提供常用数据库操作的API,包括单文档CRUD, 批量CRUD、并发控制(CAS、单字段自增等)、在事务中执行一组操作等

  • 可以获取mongodb原生驱动的接口MongoCollectionMongoDatabase,用来完成此框架不支持的功能。框架内的部分接口也接受的Bson参数,你可以用mongodb原生驱动的Filters写过滤条件,用Projections写字段选择等。

Wiki Home

Download

Gradle:

dependencies {
  implementation 'io.github.guchdes:django:3.4.0'
}

Maven:

<dependency>
  <groupId>io.github.guchdes</groupId>
  <artifactId>django</artifactId>
  <version>3.4.0</version>
</dependency>

NOTE

此版本兼容版本号3.+的mongodb驱动


Documentation

  • User guide: This guide contains examples on how to use django-java in your code.
  • Change log: Changes in the recent versions

Versions

Version
3.3.3