public class FieldFilter
extends java.lang.Object
通过这类,可以指明当前线程的 DAO 操作,哪些对象,的哪些字段会被忽略
调用例子:@Table("jax_pf_fold") public class JaxFold implements Serializable { private static final long serialVersionUID = 5990870005316924017L; @Column @Name //字符类型主键,用name来表示 private String mldh; @Column private String mlmc; @Column private String sjmldh; @Column private Integer sxh; @Column private String bz; }
例子1,一般表达式FieldFilter.create(JaxFold.class, "bz|mlmc|mldh").run(new Atom() { public void run() { nutDao.update(fold); } });
执行的sql是: UPDATE jax_pf_fold SET sjmldh='235',bz='备注',mlmc='信息打印' WHERE mldh='2353' 由于 sjmldh 和 mldh 匹配因此,也会被认定为参与操作的字段.
例子2,更严格的正则表达式FieldFilter.create(JaxFold.class, "ˆ(bz|mlmc|mldh)$").run(new Atom() { public void run() { nutDao.update(fold); } });
执行的sql是: UPDATE jax_pf_fold SET bz='备注',mlmc='信息打印',sxh=2343 WHERE mldh='2353'
限定符和类型 | 方法和说明 |
---|---|
static FieldFilter |
create(java.lang.Class<?> type,
boolean ignoreNull)
创建一个过滤器
|
static FieldFilter |
create(java.lang.Class<?> type,
FieldMatcher mathcer)
创建一个过滤器
|
static FieldFilter |
create(java.lang.Class<?> type,
java.lang.String actived)
创建一个默认不忽略 NULL 值字段的过滤器
|
static FieldFilter |
create(java.lang.Class<?> type,
java.lang.String actived,
boolean ignoreNull)
创建一个过滤器
|
static FieldFilter |
create(java.lang.Class<?> type,
java.lang.String actived,
java.lang.String locked,
boolean ignoreNull)
创建一个过滤器
|
static FieldMatcher |
get(java.lang.Class<?> type)
根据 POJO 的类型,从 ThreadLocal 中获取字段过滤器
|
static FieldFilter |
locked(java.lang.Class<?> type,
java.lang.String locked)
创建一个过滤器
|
java.util.Map<java.lang.Class<?>,FieldMatcher> |
map() |
FieldFilter |
remove(java.lang.Class<?> type)
移除一个 POJO 的字段过滤设置
|
void |
run(Atom atom)
运行模板函数
|
<T> T |
run(Molecule<T> m) |
FieldFilter |
set(java.lang.Class<?> type,
boolean ignoreNull)
为自身增加一个 POJO 的字段过滤设置
|
FieldFilter |
set(java.lang.Class<?> type,
FieldMatcher matcher)
为自身增加一个 POJO 的字段过滤设置
|
FieldFilter |
set(java.lang.Class<?> type,
java.lang.String actived)
为自身增加一个 POJO 的字段过滤设置
|
FieldFilter |
set(java.lang.Class<?> type,
java.lang.String actived,
boolean ignoreNull)
为自身增加一个 POJO 的字段过滤设置
|
FieldFilter |
set(java.lang.Class<?> type,
java.lang.String actived,
java.lang.String locked,
boolean ignoreNull)
为自身增加一个 POJO 的字段过滤设置
|
public static FieldFilter locked(java.lang.Class<?> type, java.lang.String locked)
type
- POJO 类型locked
- 正则表达式,哪些字段会被忽略,语法请参看 Pattern 类的 JavaDocpublic static FieldFilter create(java.lang.Class<?> type, boolean ignoreNull)
type
- POJO 类型ignoreNull
- 是否忽略 NULL 值字段public static FieldFilter create(java.lang.Class<?> type, java.lang.String actived)
type
- POJO 类型actived
- 正则表达式,哪些字段会被操作,语法请参看 Pattern 类的 JavaDocPattern
public static FieldFilter create(java.lang.Class<?> type, java.lang.String actived, boolean ignoreNull)
type
- POJO 类型actived
- 正则表达式,哪些字段会被操作,语法请参看 Pattern 类的 JavaDocignoreNull
- 是否忽略 NULL 值字段Pattern
public static FieldFilter create(java.lang.Class<?> type, java.lang.String actived, java.lang.String locked, boolean ignoreNull)
type
- POJO 类型actived
- 正则表达式,哪些字段会被操作,语法请参看 Pattern 类的 JavaDoclocked
- 正则表达式,哪些字段会被忽略,语法请参看 Pattern 类的 JavaDocignoreNull
- 是否忽略 NULL 值字段Pattern
public static FieldFilter create(java.lang.Class<?> type, FieldMatcher mathcer)
type
- POJO 类型mathcer
- 字段匹配器public FieldFilter set(java.lang.Class<?> type, boolean ignoreNull)
type
- POJO 类型ignoreNull
- 是否忽略 NULL 值字段public FieldFilter set(java.lang.Class<?> type, java.lang.String actived)
type
- POJO 类型actived
- 正则表达式,哪些字段会被操作,语法请参看 Pattern 类的 JavaDocpublic FieldFilter set(java.lang.Class<?> type, java.lang.String actived, boolean ignoreNull)
type
- POJO 类型actived
- 正则表达式,哪些字段会被操作,语法请参看 Pattern 类的 JavaDocignoreNull
- 是否忽略 NULL 值字段public FieldFilter set(java.lang.Class<?> type, java.lang.String actived, java.lang.String locked, boolean ignoreNull)
type
- POJO 类型actived
- 正则表达式,哪些字段会被操作,语法请参看 Pattern 类的 JavaDoclocked
- 正则表达式,哪些字段会被忽略,语法请参看 Pattern 类的 JavaDocignoreNull
- 是否忽略 NULL 值字段public FieldFilter set(java.lang.Class<?> type, FieldMatcher matcher)
type
- POJO 类型matcher
- 字段匹配器public FieldFilter remove(java.lang.Class<?> type)
type
- POJO 类型public static FieldMatcher get(java.lang.Class<?> type)
type
- POJO 的类型public java.util.Map<java.lang.Class<?>,FieldMatcher> map()
public void run(Atom atom)
atom
- 运行原子public <T> T run(Molecule<T> m)