Skip to content

m-xlsea/influx-plus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

InfluxDB 数据库工具包

dao层接口:

public interface Influx {
    /**
     * 测试连接
     *
     * @return Boolean 成功返回true,失败返回false
     */
    Boolean ping();

    /**
     * 判断配置类里的数据库是否存在
     *
     * @return Boolean 存在返回true,不存在返回false
     * @deprecated influx官方已经弃用
     */
    @Deprecated
    Boolean exists();

    /**
     * 判断数据库是否存在
     *
     * @param dataBaseName 数据库名称
     * @return Boolean 存在返回true,不存在返回false
     * @deprecated influx官方已经弃用
     */
    @Deprecated
    Boolean exists(String dataBaseName);

    /**
     * 创建配置类里的数据库
     *
     * @return String 返回创建后的数据库名称
     * @deprecated influx官方已经弃用
     */
    @Deprecated
    String createDataBase();

    /**
     * 创建数据库
     *
     * @param dataBaseName 数据库名称
     * @return String 返回创建后的数据库名称
     * @deprecated influx官方已经弃用
     */
    @Deprecated
    String createDataBase(String dataBaseName);

    /**
     * 删除配置类里的数据库
     *
     * @return String 返回创建后的数据库名称
     * @deprecated influx官方已经弃用
     */
    @Deprecated
    String deleteDataBase();

    /**
     * 删除数据库
     *
     * @param dataBaseName 数据库名称
     * @return String 返回创建后的数据库名称
     * @deprecated influx官方已经弃用
     */
    @Deprecated
    String deleteDataBase(String dataBaseName);

    /**
     * 插入数据
     *
     * @param object 实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param str    表名称后缀
     * @return int 插入数据条数
     */
    <T> int save(T object, String... str);

    /**
     * 插入数据
     *
     * @param object       实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param dataBaseName 数据库名称
     * @param str          表名称后缀
     * @return int 插入数据条数
     */
    <T> int save(T object, String dataBaseName, String... str);

    /**
     * 查询多条数据
     *
     * @param clazz 实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param sql   查询语句
     * @return List<T> 返回对象集合
     */
    <T> List<T> list(Class<T> clazz, String sql);

    /**
     * 查询多条数据
     *
     * @param clazz        实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param sql          查询语句
     * @param dataBaseName 数据库名称
     * @return List<T> 返回对象集合
     */
    <T> List<T> list(Class<T> clazz, String sql, String dataBaseName);

    /**
     * 查询一条数据(如果集,默认返回第一条)
     *
     * @param clazz 实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param sql   查询语句
     * @return T 返回对象实体
     */
    <T> T getOne(Class<T> clazz, String sql);

    /**
     * 查询一条数据(如果集,默认返回第一条)
     *
     * @param clazz        实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param sql          查询语句
     * @param dataBaseName 数据库名称
     * @return T 返回对象实体
     */
    <T> T getOne(Class<T> clazz, String sql, String dataBaseName);

    /**
     * 查询记录数
     *
     * @param clazz 实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param sql   查询语句
     * @return int 记录数
     */
    <T> int count(Class<T> clazz, String sql);

    /**
     * 查询记录数
     *
     * @param clazz        实体对象,对象集合(对应实体类必须使用@Tag注解指定一个字段)
     * @param sql          查询语句
     * @param dataBaseName 数据库名称
     * @return int 记录数
     */
    <T> int count(Class<T> clazz, String sql, String dataBaseName);
}

实体类注解:

// 用来标识tag字段
public @interface Tag {
    // 用来标识数据库字段名
    String value() default "";
}

// 用来标识其他字段
public @interface TableField {
    // 用来标识数据库字段名
    String value() default "";

    // 用来标识是否插入此字段
    boolean exist() default true;
}

About

A tool class for influx db.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages