org.nutz.dao.entity
接口 Entity<T>

所有已知实现类:
NutEntity

public interface Entity<T>

描述了一个实体

作者:
zozoh(zozohtnt@gmail.com)

方法摘要
 boolean addAfterInsertMacro(Pojo pojo)
          增加一个插入后字段宏
 boolean addBeforeInsertMacro(Pojo pojo)
          增加一个插入前字段宏
 java.util.List<Pojo> cloneAfterInsertMacroes()
          获取实体所有自动执行的字段宏列表 这些自动执行宏,在实体被插入到数据库后调用 比如程序员可以为数据库自动生成的字段获取生成后的值
 java.util.List<Pojo> cloneBeforeInsertMacroes()
          获取实体所有自动执行的字段宏列表 这些自动执行宏,在实体被插入到数据库前调用 比如程序员可以为某个字段定义值的自动生成规则
 MappingField getColumn(java.lang.String name)
          根据实体的数据库字段名获取一个实体字段对象
 java.lang.String getColumnComent(java.lang.String columnName)
          根据字段名获得注释
 java.util.List<MappingField> getCompositePKFields()
          如果实体采用了复合主键,调用这个函数能返回所有的复合主键,顺序就是复合主键的顺序 如果没有复合主键,那么将返回 null
 MappingField getField(java.lang.String name)
          根据实体的 Java 字段名获取一个实体字段对象
 MappingField getIdField()
           
 EntityIndex getIndex(java.lang.String name)
          按名称获取一个实体的索引
 java.util.List<EntityIndex> getIndexes()
           
 java.util.List<LinkField> getLinkFields(java.lang.String regex)
          获取实体所有匹配上正则表达是的关联字段,如果正则表达是为 null,则表示获取全部关联字段
 java.util.List<MappingField> getMappingFields()
           
 java.lang.Object getMeta(java.lang.String key)
          获取一个实体补充描述
 java.util.Map<java.lang.String,java.lang.Object> getMetas()
           
 Mirror<T> getMirror()
           
 MappingField getNameField()
           
 T getObject(java.sql.ResultSet rs, FieldMatcher matcher)
          从结果集中生成一个实体实例
 java.util.List<MappingField> getPks()
          根据,"数字主键 > 字符主键 > 复合主键" 的优先顺序,返回主键列表
 PkType getPkType()
           
 java.lang.String getTableComment()
           
 java.lang.String getTableName()
          获取实体的表名
 java.lang.Class<T> getType()
           
 java.lang.String getViewName()
          获取实体视图名
 boolean hasColumnComment()
           
 boolean hasMeta(java.lang.String key)
          实体是否包含某一种 meta
 boolean hasTableComment()
           
 java.util.List<LinkField> visitMany(java.lang.Object obj, java.lang.String regex, LinkVisitor visitor)
          访问所有一对多映射。
 java.util.List<LinkField> visitManyMany(java.lang.Object obj, java.lang.String regex, LinkVisitor visitor)
          访问所有多对多映射。
 java.util.List<LinkField> visitOne(java.lang.Object obj, java.lang.String regex, LinkVisitor visitor)
          访问所有一对一映射。
 Context wrapAsContext(java.lang.Object obj)
          将一个实体对象的实例包裹成 Context 接口
 

方法详细信息

getType

java.lang.Class<T> getType()
返回:
实体的 Java 类型`

getMirror

Mirror<T> getMirror()
返回:
实体的 Java 类型

getIndexes

java.util.List<EntityIndex> getIndexes()
返回:
实体索引列表

getTableName

java.lang.String getTableName()
获取实体的表名

返回:
实体表名

getViewName

java.lang.String getViewName()
获取实体视图名

返回:
实体视图名

getIndex

EntityIndex getIndex(java.lang.String name)
按名称获取一个实体的索引

参数:
name - 索引名称
返回:
实体索引

getObject

T getObject(java.sql.ResultSet rs,
            FieldMatcher matcher)
从结果集中生成一个实体实例

参数:
rs - 结果集
matcher - 字段匹配器。如果为null,则获取实体的全部字段
返回:
从结果集生成 Java 对象

getField

MappingField getField(java.lang.String name)
根据实体的 Java 字段名获取一个实体字段对象

参数:
name - 实体字段的 Java 对象名
返回:
实体字段

addBeforeInsertMacro

boolean addBeforeInsertMacro(Pojo pojo)
增加一个插入前字段宏

参数:
pojo - Pojo 语句
返回:
是否增加成功

addAfterInsertMacro

boolean addAfterInsertMacro(Pojo pojo)
增加一个插入后字段宏

参数:
pojo - Pojo 语句
返回:
是否增加成功

cloneBeforeInsertMacroes

java.util.List<Pojo> cloneBeforeInsertMacroes()
获取实体所有自动执行的字段宏列表

这些自动执行宏,在实体被插入到数据库前调用

比如程序员可以为某个字段定义值的自动生成规则

返回:
预执行宏列表

cloneAfterInsertMacroes

java.util.List<Pojo> cloneAfterInsertMacroes()
获取实体所有自动执行的字段宏列表

这些自动执行宏,在实体被插入到数据库后调用

比如程序员可以为数据库自动生成的字段获取生成后的值

返回:
后执行字段宏列表

getColumn

MappingField getColumn(java.lang.String name)
根据实体的数据库字段名获取一个实体字段对象

参数:
name - 实体字段数据库字段名
返回:
实体字段

getMappingFields

java.util.List<MappingField> getMappingFields()
返回:
实体所有的映射字段

getLinkFields

java.util.List<LinkField> getLinkFields(java.lang.String regex)
获取实体所有匹配上正则表达是的关联字段,如果正则表达是为 null,则表示获取全部关联字段

参数:
regex - 正则表达式
返回:
实体所有匹配上正则表达是的关联字段

visitOne

java.util.List<LinkField> visitOne(java.lang.Object obj,
                                   java.lang.String regex,
                                   LinkVisitor visitor)
访问所有一对一映射。即 '@One' 声明的字段

参数:
obj - 映射的宿主对象
visitor - 处理器
regex - 正则表达式匹配 Java 字段名。null 表示匹配所有一对一映射字段
返回:
匹配上的映射字段

visitMany

java.util.List<LinkField> visitMany(java.lang.Object obj,
                                    java.lang.String regex,
                                    LinkVisitor visitor)
访问所有一对多映射。即 '@Many' 声明的字段

参数:
obj - 映射的宿主对象
visitor - 处理器
regex - 正则表达式匹配 Java 字段名。null 表示匹配所有一对多映射字段
返回:
匹配上的映射字段

visitManyMany

java.util.List<LinkField> visitManyMany(java.lang.Object obj,
                                        java.lang.String regex,
                                        LinkVisitor visitor)
访问所有多对多映射。即 '@ManyMany' 声明的字段

参数:
obj - 映射的宿主对象
visitor - 处理器
regex - 正则表达式匹配 Java 字段名。null 表示匹配所有多对多映射字段
返回:
匹配上的映射字段

getCompositePKFields

java.util.List<MappingField> getCompositePKFields()
如果实体采用了复合主键,调用这个函数能返回所有的复合主键,顺序就是复合主键的顺序

如果没有复合主键,那么将返回 null

返回:
实体所复合主键字段

getNameField

MappingField getNameField()
返回:
实体唯一字符类型主键

getIdField

MappingField getIdField()
返回:
实体唯一数字类型主键

getPks

java.util.List<MappingField> getPks()
根据,"数字主键 > 字符主键 > 复合主键" 的优先顺序,返回主键列表

返回:
实体的主键列表

getPkType

PkType getPkType()
返回:
当前实体首选主键类型

wrapAsContext

Context wrapAsContext(java.lang.Object obj)
将一个实体对象的实例包裹成 Context 接口

参数:
obj - 实体对象的实例
返回:
Context

getMeta

java.lang.Object getMeta(java.lang.String key)
获取一个实体补充描述

参数:
key - 实体补充描述的键值
返回:
实体补充描述的内容

hasMeta

boolean hasMeta(java.lang.String key)
实体是否包含某一种 meta

参数:
key - meta 的键值
返回:
是否包含

getMetas

java.util.Map<java.lang.String,java.lang.Object> getMetas()
返回:
实体补充描述的集合

hasTableComment

boolean hasTableComment()
返回:
表是否有注释

hasColumnComment

boolean hasColumnComment()
返回:
字段是否注释

getTableComment

java.lang.String getTableComment()
返回:
表注释

getColumnComent

java.lang.String getColumnComent(java.lang.String columnName)
根据字段名获得注释

参数:
columnName - 字段名称
返回:
注释