tldb数据库的java客户端如何使用


tldb是分布式nosql数据库,需要通过客户端接口进行数据操作

通过java有两种方式可以操作tldb,

  •  tlcli-j  与tldb接口对接,仅支持字节数组类型的数据,上传服务器数据为字节数组,其他类型需要转换为字节数组
  •  tlorm-java  基于tlcli-j实现的orm框架,支持java基础数据类型自动转换,使用非常简洁

两种方式都可以直接连接服务器进行建表,修改表结构,删除表, 增删改查表数据等操作


java 客户端:https://github.com/donnie4w/tlcli-j

tlcli-j 的 mavan依赖配置:

<dependency>    
    <groupId>io.github.donnie4w</groupId>    
    <artifactId>tlcli-j</artifactId>    
    <version>0.0.2</version>
</dependency>

java orm框架 : https://github.com/donnie4w/tlorm-java

tlorm-java 的 mavan依赖配置:

<dependency>    
    <groupId>io.github.donnie4w</groupId>    
    <artifactId>tlorm-java</artifactId>    
    <version>0.0.2</version>
</dependency>

java demo: https://github.com/donnie4w/tldbjavaDemo


在项目中使用orm,从建表到数据增删改查,对数据库的操作可以完全映射在对java类的操作。

如  项目tlnettim: https://github.com/donnie4w/tlnetim

该项目是go开发的,其持久层的操作用的是 tlorm-go ,tlorm-go与tlorm-java的操作基本一样,有部分地方稍有区别。

项目启动后 建表:tlorm-go的操作:

    //tldb orm 建表
    orm.Create[ImUser]()
    orm.Create[ImMessage]()
    orm.Create[ImLog]()

如果是tlorm-java建表

首先,创建 ImUser.java   ImMessage.java   ImLog.java  类必须继承 Orm 并声明泛型的类型

public class ImUser extends Orm{
   public long id;
   public String Name;
   public String Pwd;
   public String Icon;
   public String Label;
   public String Time;
}
public class ImLog extends Orm{
   public long id;
   @Index   //创建UserId 索引
   public long UserId;
   @Index   //创建Room  索引
   public String Room;
   public String Time;
}
public class ImMessage extends Orm{
   public long id;
   public long UserId;
   public String Content;
   @Index
   public String Room;
   public String Time;
}

创建表:

new ImUser().createTable() //创建表ImUser
new ImLog().createTable() //创建表ImLog
new ImMessage().createTable() //创建表ImMessage

ImMessage 新增数据:

ImMessage im = new ImMessage ();
im.UserId ="2";
im.Content="打发打发";
im.Room="";
im.Time="2023-08-04 01:19:47";
long id = im.insert() //返回新增数据的Id值
//ImMessage 中Id无需赋值,默认为表的主键,自增长

在新建的表以及新增web后台可以看到的数据:

(在线测试管理后台 http://dbtest.tlnet.top 用户名admin 密码123456)





有任何问题或建议请Email:donnie4w@gmail.comhttp://tlnet.top/contact  发信给我,谢谢!