当前位置:   article > 正文

Arangodb简介

arangodb github文档

Arangodb官网:https://www.arangodb.com/

GitHub开源代码:https://github.com/arangodb/arangodb-java-driver

Maven依赖配置:

  1. <dependencies>
  2. <dependency>
  3. <groupId>com.arangodb</groupId>
  4. <artifactId>arangodb-java-driver</artifactId>
  5. <version>4.2.2</version>
  6. </dependency>
  7. </dependencies>

建立连接

  1. ArangoDB arangoDB = new ArangoDB.Builder()
  2. .host("127.0.0.1", 8529)
  3. .user("myuser")
  4. .password("mypassword")
  5. .useProtocol(Protocol.VST)
  6. .build();

Database操作

创建数据库:

arangoDB.createDatabase("myDatabase");
删除数据库:

arangoDB.db("myDatabase").drop();
Collection操作

创建集合:

arangoDB.db("myDatabase").createCollection("myCollection", null);

清空集合数据:

arangoDB.db("myDatabase").collection("myCollection").truncate();
删除集合:

arangoDB.db("myDatabase").collection("myCollection").drop();
Document操作

支持三种类型的数据作为Arangodb中的文档: Java POJO、VelocyPack、Json字符串,下面以Java POJO为例

定义文档Java POJO对象:

  1. public class User {
  2. private String _key;
  3. private String name;
  4. private int age;
  5. public User(String name, int age) {
  6. this.name = name;
  7. this.age = age;
  8. }
  9. public User() {
  10. }
  11. /*
  12. * + getter and setter
  13. */
  14. }

插入单条文档:

  1. User user = new User("zhangsan", 20);
  2. user.set_key("001");
  3. arangoDB.db("myDatabase").collection("myCollection").insertDocument(user);

注:也可以不设置_key值,则系统会自动生成一个key

批量插入文档:

  1. Collection<User> documents = new ArrayList<User>();
  2. User user1 = new User("zhangSan", 20);
  3. User user2 = new User("liSi", 21);
  4. User user3 = new User("wangWu", 22);
  5. documents.add(user1);
  6. documents.add(user2);
  7. documents.add(user3);
  8. arangoDB.db("myDatabase").collection("myCollection").insertDocuments(documents);

修改文档:

  1. User user = new User("zhangsan1", 201);
  2. user.set_key("001");
  3. arangoDB.db("myDatabase").collection("myCollection").updateDocument(user.get_key(),user);

修改和替换的区别:

修改:只会修改提供的字段,替换:会将提供的字段替换原有的整个文档,假设原有文档内容为:

`{
"age": 20,
"name": "zhangsan"
}`
修改:

arangoDB.db("myDatabase").collection("myCollection").updateDocument(user.get_key(),"{\"weight\":130}");

结果新增了一个字段:

`{
"age": 20,
"name": "zhangsan",
"weight": 130
}`
替换:

arangoDB.db("myDatabase").collection("myCollection").replaceDocument(user.get_key(),"{\"weight\":130}");

结果原有文档中的所有内容被替换成一个字段:

`{
"weight": 130
}`
删除文档:

 arangoDB.db("myDatabase").collection("myCollection").deleteDocument(user.get_key());

文档读取:

读取成json字符串:

 String json = arangoDB.db("myDatabase").collection("myCollection").getDocument("001", String.class);

读取成Java POJO对象:

 User user = arangoDB.db("myDatabase").collection("myCollection").getDocument("001", User.class);

使用_id读取:

  String json = arangoDB.db("myDatabase").getDocument("myCollection/001", String.class);
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/706300
推荐阅读
相关标签
  

闽ICP备14008679号