Tangram

Json drive data

License

License

MIT
GroupId

GroupId

com.github.mengxianun
ArtifactId

ArtifactId

tangram-all
Last Version

Last Version

1.8.13
Release Date

Release Date

Type

Type

jar
Description

Description

Tangram
Json drive data
Project URL

Project URL

https://github.com/aigodata/tangram
Source Code Management

Source Code Management

https://github.com/aigodata/tangram

Download tangram-all

How to add to project

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

Dependencies

runtime (8)

Group / Artifact Type Version
com.google.guava : guava jar 28.0-jre
com.google.inject : guice jar 4.2.0
com.google.code.gson : gson jar 2.8.5
org.skyscreamer : jsonassert jar 1.5.0
org.slf4j : slf4j-api jar 1.7.25
com.github.mengxianun : tangram-core jar 1.8.13
com.github.mengxianun : tangram-jdbc jar 1.8.13
com.github.mengxianun : tangram-elasticsearch jar 1.8.13

test (1)

Group / Artifact Type Version
org.junit.jupiter : junit-jupiter-api jar 5.2.0

Project Modules

There are no modules declared in this project.

Tangram: Json-SQL Api For Datastores

Tangram is a data access framework, providing a SQL-like json interface for operation of different types of datastores.

select

{
  "select": "table",
  "fields": ["column1", "column2", ...],
  "join": ["join_table", ...],
  "where": ["column1=value1", "column2=value2", ...],
  "group": ["column1", "column2", ...],
  "order": ["column1", "column2", ...]
}

insert

{
  "insert": "table",
  "values": {
    "column1": value1,
    "column2": value2,
    ...
  }
}

update

{
  "update": "table",
  "values": {
    "column1": value1,
    "column2": value2,
    ...
  },
  "where": ["column1=value1", "column2=value2", ...]
}

delete

{
  "delete": "table",
  "where": ["column1=value1", "column2=value2", ...]
}

Getting started

Add the library to your project.

Maven

<dependency>
  <groupId>com.github.mengxianun</groupId>
  <artifactId>tangram-jdbc</artifactId>
  <version>x.y.z</version>
</dependency>

Gradle

dependencies {
  implementation 'com.github.mengxianun:tangram-jdbc:x.y.z'
}

Config File

Create a configuration file in the classpath directory and configure the data source. The default configuration file name is air.json

{
    "datasources": {
        "myds": {
            "url": "jdbc:mysql://localhost:3306/tangram",
            "username": "tangram",
            "password": "123456",
            ...
        }
    }
}

Usage

Translator translator = new DefaultTranslator();
String json = "{\"select\":\"sys_user\",\"fields\":\"*\",\"where\":\"id=1\"}";
DataResultSet dataResultSet = translator.translate(json);
Object data = dataResultSet.getData();

Documentation

See the detail documentation or Wiki.

License

This project is licensed under the MIT License.

com.github.mengxianun

aigodata

一支专注可视化与数据分析的团队

Versions

Version
1.8.13
1.8.12
1.8.11
1.8.10
1.8.9
1.8.8
1.8.7
1.8.6
1.8.5
1.8.3
1.8.2
1.8.1
1.8.0
1.7.13
1.7.12
1.7.11
1.7.10
1.7.9
1.7.8
1.7.7
1.7.6
1.7.5
1.7.4
1.7.1
1.7.0
1.6.9
1.6.8
1.6.7
1.6.6
1.6.5
1.6.2
1.6.1
1.6.0
1.5.1
1.4.8
1.4.7
1.4.6
1.4.4.2
1.4.4.1
1.4.4
1.4.3
1.4.2
1.4.0.1
1.4.0
1.3.9.2
1.3.9.1
1.3.9
1.2.8
1.2.7
1.1.7
1.1.6
1.1.5
1.1.4
1.1.3
1.1.2
1.0.1
1.0.0