程序包 | 说明 |
---|---|
org.nutz.dao |
这是 Nutz 最重要的包之一,它主要围绕着 org.nutz.dao.Dao 接口提供了一系列的功能
总之,啥都别说了,光看看名字就晓得是干啥用的了。
|
org.nutz.dao.entity |
抽象的Pojo配置信息描述
|
org.nutz.dao.impl |
Dao的实现
|
org.nutz.dao.impl.entity.field | |
org.nutz.dao.impl.link |
关联关系
|
org.nutz.dao.impl.sql |
自定义Sql及抽象Sql结构
|
org.nutz.dao.impl.sql.pojo | |
org.nutz.dao.sql | |
org.nutz.dao.util |
Dao工具集
|
org.nutz.dao.util.cnd | |
org.nutz.dao.util.cri | |
org.nutz.service |
服务类,Dao包的延伸
Dao 很灵活,这里再给出一些简单的数据访问抽象基类,它们能让你的大多数调用代码,少掉一个参数
|
限定符和类型 | 类和说明 |
---|---|
class |
Cnd
是 Condition 的一个实现,这个类给你比较方便的方法来构建 Condition 接口的实例。
|
限定符和类型 | 方法和说明 |
---|---|
static Condition |
Cnd.format(String format,
Object... args)
用字符串和参数格式化出一个条件语句,注意,不会抹除特殊字符
|
static Condition |
Cnd.wrap(String str)
直接用字符串生成一个条件对象
|
static Condition |
Cnd.wrap(String sql,
Object value)
使用CharSegment拼装一个条件对象
|
限定符和类型 | 方法和说明 |
---|---|
int |
Dao.clear(Class<?> classOfT,
Condition cnd)
根据一个 WHERE 条件,清除一组对象。
|
int |
Dao.clear(String tableName,
Condition cnd)
根据一个 WHERE 条件,清除一组记录
|
int |
Dao.count(Class<?> classOfT,
Condition cnd)
根据条件,计算某个对象在数据库中有多少条记录
|
int |
Dao.count(String tableName,
Condition cnd)
根据条件,计算某个数据表或视图中有多少条记录
|
<T> int |
Dao.each(Class<T> classOfT,
Condition cnd,
Each<T> callback)
对一组对象进行迭代,这个接口函数非常适用于很大的数据量的集合,因为你不可能把他们都读到内存里
|
<T> int |
Dao.each(Class<T> classOfT,
Condition cnd,
Pager pager,
Each<T> callback)
对一组对象进行迭代,这个接口函数非常适用于很大的数据量的集合,因为你不可能把他们都读到内存里
|
int |
Dao.each(String tableName,
Condition cnd,
Each<Record> callback)
对一组对象进行迭代,这个接口函数非常适用于很大的数据量的集合,因为你不可能把他们都读到内存里
|
int |
Dao.each(String tableName,
Condition cnd,
Pager pager,
Each<Record> callback)
对一组对象进行迭代,这个接口函数非常适用于很大的数据量的集合,因为你不可能把他们都读到内存里
|
int |
Dao.each(String tableName,
Condition cnd,
Pager pager,
Each<Record> callback,
String fields)
对一组对象进行迭代,这个接口函数非常适用于很大的数据量的集合,因为你不可能把他们都读到内存里
|
<T> T |
Dao.fetch(Class<T> classOfT,
Condition cnd)
根据 WHERE 条件获取一个对象。
|
Record |
Dao.fetch(String tableName,
Condition cnd)
根据条件获取一个 Record 对象
|
Record |
Dao.fetch(String tableName,
Condition cnd,
String fields) |
<T> T |
Dao.fetchByJoin(Class<T> classOfT,
String regex,
Condition cnd)
根据查询条件获取一个对象.
|
<T> T |
Dao.fetchLinks(T obj,
String regex,
Condition cnd)
根据一个正则表达式,获取对象所有的关联字段, 并按Condition进行数据过滤排序
严重提醒,当使用Condition进行数据过滤排序时,应当使regex只匹配特定的映射字段
|
int |
Dao.func(Class<?> classOfT,
String funcName,
String fieldName,
Condition cnd)
对某一个对象字段,进行计算。
|
int |
Dao.func(String tableName,
String funcName,
String colName,
Condition cnd)
对某一个数据表字段,进行计算。
|
Object |
Dao.func2(Class<?> classOfT,
String funcName,
String fieldName,
Condition cnd)
对某一个对象字段,进行计算。
|
Object |
Dao.func2(String tableName,
String funcName,
String colName,
Condition cnd)
对某一个数据表字段,进行计算。
|
GroupBy |
Cnd.having(Condition cnd)
分组中的having条件
|
<T> List<T> |
Dao.query(Class<T> classOfT,
Condition cnd)
查询一组对象。
|
<T> List<T> |
Dao.query(Class<T> classOfT,
Condition cnd,
Pager pager)
查询一组对象。
|
<T> List<T> |
Dao.query(Class<T> classOfT,
Condition cnd,
Pager pager,
FieldMatcher matcher) |
<T> List<T> |
Dao.query(Class<T> classOfT,
Condition cnd,
Pager pager,
String regex) |
List<Record> |
Dao.query(String tableName,
Condition cnd)
查询出一组记录。
|
List<Record> |
Dao.query(String tableName,
Condition cnd,
Pager pager)
查询出一组记录。
|
List<Record> |
Dao.query(String tableName,
Condition cnd,
Pager pager,
String fields)
查询出一组记录。
|
<T> List<T> |
Dao.queryByJoin(Class<T> classOfT,
String regex,
Condition cnd)
根据查询条件获取一个对象.
|
int |
Dao.update(Class<?> classOfT,
Chain chain,
Condition cnd)
与 update(String tableName, Chain chain, Condition cnd) 一样,不过,数据表名,将取自
POJO 的数据表声明,请参看 '@Table' 注解的详细说明
|
int |
Dao.update(Object obj,
Condition cnd) |
int |
Dao.update(Object obj,
FieldFilter fieldFilter,
Condition cnd) |
int |
Dao.update(String tableName,
Chain chain,
Condition cnd)
自由的更新多条数据
|
int |
Dao.updateRelation(Class<?> classOfT,
String regex,
Chain chain,
Condition cnd)
多对多关联是通过一个中间表将两条数据表记录关联起来。
|
限定符和类型 | 方法和说明 |
---|---|
Condition |
LinkField.createCondition(Object host)
根据给定的宿主对象,以及自身记录的映射关系,生成一个获取映射对象的约束条件
`@One` 根据宿主对象引用字段值生成映射对象的条件语句
`@Many` 根据宿主对象主键值生成映射对象的条件语句
`@ManyMany` 根据宿主对象以及映射表生成映射对象的条件语句
|
限定符和类型 | 方法和说明 |
---|---|
protected Object |
NutDao._fetchLinks(Object t,
String regex,
boolean visitOne,
boolean visitMany,
boolean visitManyMany,
Condition cnd) |
Pojo |
EntityOperator.addUpdate(Chain chain,
Condition cnd) |
Pojo |
EntityOperator.addUpdate(Condition cnd) |
Pojo |
EntityOperator.addUpdateByPkAndCnd(Condition cnd) |
Pojo |
EntityOperator.addUpdateByPkAndCnd(Entity<?> en,
Object obj,
Condition cnd) |
int |
NutDao.clear(Class<?> classOfT,
Condition cnd) |
int |
NutDao.clear(String tableName,
Condition cnd) |
int |
NutDao.count(Class<?> classOfT,
Condition cnd) |
int |
NutDao.count(String tableName,
Condition cnd) |
<T> int |
NutDao.each(Class<T> classOfT,
Condition cnd,
Each<T> callback) |
<T> int |
NutDao.each(Class<T> classOfT,
Condition cnd,
Pager pager,
Each<T> callback) |
int |
NutDao.each(String tableName,
Condition cnd,
Each<Record> callback) |
int |
NutDao.each(String tableName,
Condition cnd,
Pager pager,
Each<Record> callback) |
int |
NutDao.each(String tableName,
Condition cnd,
Pager pager,
Each<Record> callback,
String fields) |
<T> T |
NutDao.fetch(Class<T> classOfT,
Condition cnd) |
Record |
NutDao.fetch(String tableName,
Condition cnd) |
Record |
NutDao.fetch(String tableName,
Condition cnd,
String fields) |
<T> T |
NutDao.fetchByJoin(Class<T> classOfT,
String regex,
Condition cnd) |
<T> T |
NutDao.fetchLinks(T obj,
String regex,
Condition cnd) |
int |
NutDao.func(Class<?> classOfT,
String funcName,
String colName,
Condition cnd) |
int |
NutDao.func(String tableName,
String funcName,
String colName,
Condition cnd) |
Object |
NutDao.func2(Class<?> classOfT,
String func2Name,
String colName,
Condition cnd) |
Object |
NutDao.func2(String tableName,
String func2Name,
String colName,
Condition cnd) |
<T> List<T> |
NutDao.query(Class<T> classOfT,
Condition cnd) |
<T> List<T> |
NutDao.query(Class<T> classOfT,
Condition cnd,
Pager pager) |
<T> List<T> |
NutDao.query(Class<T> classOfT,
Condition cnd,
Pager pager,
FieldMatcher matcher) |
<T> List<T> |
NutDao.query(Class<T> classOfT,
Condition cnd,
Pager pager,
String regex) |
List<Record> |
NutDao.query(String tableName,
Condition cnd) |
List<Record> |
NutDao.query(String tableName,
Condition cnd,
Pager pager) |
List<Record> |
NutDao.query(String tableName,
Condition cnd,
Pager pager,
String fields) |
<T> List<T> |
NutDao.queryByJoin(Class<T> classOfT,
String regex,
Condition cnd) |
int |
NutDao.update(Class<?> classOfT,
Chain chain,
Condition cnd) |
int |
NutDao.update(Object obj,
Condition cnd) |
int |
NutDao.update(Object obj,
FieldFilter fieldFilter,
Condition cnd) |
int |
NutDao.update(String tableName,
Chain chain,
Condition cnd) |
int |
NutDao.updateRelation(Class<?> classOfT,
String regex,
Chain chain,
Condition cnd) |
限定符和类型 | 方法和说明 |
---|---|
Condition |
OneLinkField.createCondition(Object host) |
Condition |
ManyManyLinkField.createCondition(Object host) |
Condition |
ManyLinkField.createCondition(Object host) |
构造器和说明 |
---|
DoUpdateRelationLinkVisitor(Map<String,Object> map,
Condition cnd) |
限定符和类型 | 方法和说明 |
---|---|
Sql |
NutSql.setCondition(Condition cnd) |
构造器和说明 |
---|
ConditionPItem(Condition cnd) |
限定符和类型 | 接口和说明 |
---|---|
interface |
Criteria
这个接口是对 Condition 接口进行扩充,主要为了能够更好的利用 PreparedStatement
|
interface |
GroupBy |
interface |
OrderBy |
限定符和类型 | 方法和说明 |
---|---|
GroupBy |
GroupBy.having(Condition cnd) |
Sql |
Sql.setCondition(Condition cnd)
为 SQL 增加条件,SQL 必须有 '$condition' 变量
|
限定符和类型 | 方法和说明 |
---|---|
static PItem[] |
Pojos.Items.cnd(Condition cnd) |
static String |
Pojos.formatCondition(Entity<?> en,
Condition cnd) |
static String |
Pojos.formatCondition(Entity<?> en,
Condition cnd,
boolean top) |
static Pager |
Pojos.Items.pager(Condition cnd) |
static <T> List<T> |
Daos.query(Dao dao,
Class<T> classOfT,
String sql,
Condition cnd,
Pager pager)
查询sql并把结果放入传入的class组成的List中
|
static <T> List<T> |
Daos.queryWithLinks(Dao dao,
Class<T> classOfT,
Condition cnd,
Pager pager,
String regex)
在同一个事务内查询对象及关联对象
|
static Pager |
Daos.updatePagerCount(Pager pager,
Dao dao,
Class<?> entityType,
Condition cnd)
填充记录总数
|
static Pager |
Daos.updatePagerCount(Pager pager,
Dao dao,
String tableName,
Condition cnd)
填充记录总数
|
限定符和类型 | 类和说明 |
---|---|
class |
SimpleCondition
简单的包裹一下 SQL 字符串
|
限定符和类型 | 类和说明 |
---|---|
class |
GroupBySet |
class |
OrderBySet |
class |
SimpleCriteria |
限定符和类型 | 方法和说明 |
---|---|
GroupBy |
SimpleCriteria.having(Condition cnd) |
GroupBy |
GroupBySet.having(Condition cnd) |
限定符和类型 | 方法和说明 |
---|---|
T |
EntityService._fetchLinks(T obj,
String regex,
Condition cnd) |
List<T> |
EntityService._query(Condition cnd,
Pager pager,
FieldMatcher matcher) |
List<T> |
EntityService._query(Condition cnd,
Pager pager,
String regex) |
int |
EntityService.clear(Condition cnd)
批量删除
|
int |
EntityService.count(Condition cnd)
根据条件统计符合条件的记录数
|
int |
EntityService.each(Condition cnd,
Each<T> callback)
对一组对象进行迭代,这个接口函数非常适用于很大的数据量的集合,因为你不可能把他们都读到内存里
|
int |
EntityService.each(Condition cnd,
Pager pager,
Each<T> callback)
遍历条件分页查询结果
|
T |
EntityService.fetch(Condition cnd)
查出符合条件的第一条记录
|
int |
EntityService.func(String funcName,
String fieldName,
Condition cnd)
对某一个对象字段,进行计算。
|
List<T> |
EntityService.query(Condition cnd)
查询一组对象。
|
List<T> |
EntityService.query(Condition cnd,
Pager pager)
根据条件分页查询
|
int |
EntityService.update(Chain chain,
Condition cnd)
批量更新
|
int |
EntityService.updateRelation(String regex,
Chain chain,
Condition cnd)
更新@ManyMany关联表中的数据
|
Copyright © 2017. All rights reserved.