Interface TableInfo


public interface TableInfo
表信息接口。

封装实体类对应的数据库表的完整映射信息,包括表名、列定义、主键、索引等。

Since:
1.0.0
Version:
1.0.0
Author:
Berry_so
  • Method Details

    • setSqlTypes

      void setSqlTypes(DatabaseDialect dialect)
      设置所有列的 SQL 类型。
      Parameters:
      dialect - 数据库方言
    • getColumnByField

      ColumnInfo getColumnByField(String fieldName)
      根据字段名获取列信息。
      Parameters:
      fieldName - Java 字段名
      Returns:
      列信息对象,如果不存在则返回 null
    • getColumnByName

      ColumnInfo getColumnByName(String columnName)
      根据列名获取列信息。
      Parameters:
      columnName - 数据库列名
      Returns:
      列信息对象,如果不存在则返回 null
    • getPrimaryKeyValue

      Object getPrimaryKeyValue(Object entity)
      获取实体对象的主键值。
      Parameters:
      entity - 实体对象
      Returns:
      主键值
    • setPrimaryKeyValue

      void setPrimaryKeyValue(Object entity, Object value)
      设置实体对象的主键值。
      Parameters:
      entity - 实体对象
      value - 主键值
    • getColumnValues

      Map<String,Object> getColumnValues(Object entity, boolean includeAutoIncrement)
      获取实体对象的所有列值。
      Parameters:
      entity - 实体对象
      includeAutoIncrement - 是否包含自增列
      Returns:
      列名到值的映射
    • getUpdateValues

      Map<String,Object> getUpdateValues(Object entity)
      获取实体对象用于更新的列值(排除主键和自增列)。
      Parameters:
      entity - 实体对象
      Returns:
      列名到值的映射
    • getCompositePrimaryKeyValues

      Map<String,Object> getCompositePrimaryKeyValues(Object entity)
      获取复合主键的所有键值。
      Parameters:
      entity - 实体对象
      Returns:
      主键列名到值的映射
    • getEntityClass

      Class<?> getEntityClass()
      获取实体类。
      Returns:
      实体类的 Class 对象
    • getTableName

      String getTableName()
      获取表名。
      Returns:
      数据库表名
    • getSchema

      String getSchema()
      获取数据库模式。
      Returns:
      模式名
    • getComment

      String getComment()
      获取表注释。
      Returns:
      表的注释说明
    • getColumns

      List<ColumnInfo> getColumns()
      获取所有列信息。
      Returns:
      列信息列表
    • getPrimaryKey

      ColumnInfo getPrimaryKey()
      获取主键列信息(单一主键)。
      Returns:
      主键列信息,如果是复合主键则返回 null
    • getCompositePrimaryKeys

      List<ColumnInfo> getCompositePrimaryKeys()
      获取复合主键的所有列信息。
      Returns:
      复合主键列信息列表
    • isCompositeKey

      boolean isCompositeKey()
      判断是否为复合主键。
      Returns:
      true 表示使用复合主键
    • getIdClass

      Class<?> getIdClass()
      获取复合主键类。
      Returns:
      主键类的 Class 对象,如果不是复合主键则返回 null
    • getEmbeddedIdField

      Field getEmbeddedIdField()
      获取嵌入式主键字段。
      Returns:
      嵌入式主键的 Field 对象,如果不使用嵌入式主键则返回 null
    • getIndexes

      List<ColumnInfo> getIndexes()
      获取所有索引列信息。
      Returns:
      索引列信息列表
    • getCreatedAtColumn

      ColumnInfo getCreatedAtColumn()
      获取创建时间列信息。
      Returns:
      创建时间列信息,如果不存在则返回 null
    • getUpdatedAtColumn

      ColumnInfo getUpdatedAtColumn()
      获取更新时间列信息。
      Returns:
      更新时间列信息,如果不存在则返回 null
    • getAllColumnNames

      List<String> getAllColumnNames()
      获取所有列名。
      Returns:
      数据库列名列表