org.nutz.dao.sql
接口 Pojo

所有超级接口:
DaoStatement
所有已知实现类:
ElFieldMacro, NutPojo, SqlFieldMacro

public interface Pojo
extends DaoStatement

封装通过 POJO 生成的 SQL 语句

各个数据库的处理类通过这个类能获得足够的信息来生产 SQL 语句

作者:
zozoh(zozohtnt@gmail.com)

方法摘要
 Pojo addParamsBy(java.lang.Object obj)
          通过普通Java对象为这个 POJO 语句的 SQL 参数赋值
一个 POJO 实际上是一个 SQL 的语句模板,增加一个 Java 对象,实际上就是增加了一组参数
因此如果你想为 POJO 里附加一个集合或者数组对象,对象必须是同样类型的,否则会出现不可预知的错误 接口的实现类会根据你给出的对象类型不同,对你的对象做不通的解释,它考虑的方式为: 集合|数组 : 你打算增加一组对象作为本语句的参数,会为递归调用本函数 迭带器(Iterator) : 你打算增加一组对象作为本语句的参数,会为递归调用本函数 Map : 你打算增加一条记录(将键作为字段名) Chain : 你打算增加一条记录 其他 : 你打算增加一条记录(将对象字段作为字段名) 注意:
某些 SQL 语句(比如 CREATE|DROP)即使有参数,也是没有意义的,所以 Pojo 执行器会忽略它们
 Pojo append(PItem... itemAry)
          为POJO语句增加一个或多个语句元素
 Pojo clear()
          清除已经存储的对象
 Pojo duplicate()
          复制一份自己的实例
 PItem getItem(int index)
          获取 POJO 的一个语句元素
 java.lang.Object getLastParams()
           
 java.lang.Object getOperatingObject()
          一个 Pojo 语句正在操作的对象,就是你通过 Dao 接口传入的对象本身。
 Pojo insertFirst(PItem... itemAry)
          在 POJO 所有的语句前插入一组语句元素
 java.util.List<java.lang.Object> params()
          返回语句的参数表。
 Pojo removeItem(int index)
          删除 POJO 的一个语句元素
 Pojo setAfter(PojoCallback callback)
          设置语句执行后的操作
 Pojo setBefore(PojoCallback callback)
          设置语句执行前的操作
 Pojo setItem(int index, PItem pi)
          置换 POJO 的一个语句元素
 Pojo setOperatingObject(java.lang.Object obj)
          设置一个 POJO 正在操作的对象
 Pojo setPager(Pager pager)
          为 POJO 语句设置分页对象
 
从接口 org.nutz.dao.sql.DaoStatement 继承的方法
getAdaptors, getBoolean, getContext, getEntity, getInt, getList, getObject, getParamMatrix, getResult, getSqlType, getString, getUpdateCount, onAfter, onBefore, setEntity, toPreparedStatement, toString
 

方法详细信息

setBefore

Pojo setBefore(PojoCallback callback)
设置语句执行前的操作

参数:
callback - 针对 POJO 语句的回调
返回:
自身

setAfter

Pojo setAfter(PojoCallback callback)
设置语句执行后的操作

参数:
callback - 针对 POJO 语句的回调
返回:
自身

setPager

Pojo setPager(Pager pager)
为 POJO 语句设置分页对象

指定者:
接口 DaoStatement 中的 setPager
参数:
pager - 分页对象
返回:
自身

addParamsBy

Pojo addParamsBy(java.lang.Object obj)
通过普通Java对象为这个 POJO 语句的 SQL 参数赋值
一个 POJO 实际上是一个 SQL 的语句模板,增加一个 Java 对象,实际上就是增加了一组参数
因此如果你想为 POJO 里附加一个集合或者数组对象,对象必须是同样类型的,否则会出现不可预知的错误

接口的实现类会根据你给出的对象类型不同,对你的对象做不通的解释,它考虑的方式为:

注意:
某些 SQL 语句(比如 CREATE|DROP)即使有参数,也是没有意义的,所以 Pojo 执行器会忽略它们

参数:
obj - 普通 Java 对象
返回:
自身
另请参见:
addParamsBy(Object)

getLastParams

java.lang.Object getLastParams()
返回:
语句最后一个参数行的参数对象

params

java.util.List<java.lang.Object> params()
返回语句的参数表。

返回:
语句的参数表

getOperatingObject

java.lang.Object getOperatingObject()
一个 Pojo 语句正在操作的对象,就是你通过 Dao 接口传入的对象本身。

返回:
Pojo 正在操作的对象

setOperatingObject

Pojo setOperatingObject(java.lang.Object obj)
设置一个 POJO 正在操作的对象

参数:
obj - 正在操作的对象

clear

Pojo clear()
清除已经存储的对象

返回:
自身

append

Pojo append(PItem... itemAry)
为POJO语句增加一个或多个语句元素

参数:
itemAry - 语句元素
返回:
自身

insertFirst

Pojo insertFirst(PItem... itemAry)
在 POJO 所有的语句前插入一组语句元素

参数:
itemAry - 语句元素
返回:
自身

setItem

Pojo setItem(int index,
             PItem pi)
置换 POJO 的一个语句元素

参数:
index - 位置下标
pi - 语句元素
返回:
自身

getItem

PItem getItem(int index)
获取 POJO 的一个语句元素

参数:
index - 位置下标
返回:
语句元素

removeItem

Pojo removeItem(int index)
删除 POJO 的一个语句元素

参数:
index - 位置下标
返回:
自身

duplicate

Pojo duplicate()
复制一份自己的实例

返回:
一份新的自己