| 程序包 | 说明 |
|---|---|
| net.hasor.db.dal.dynamic |
提供 dynamicSql 机制并可以生成 SQL 和其附属必要的参数等信息。
|
| net.hasor.db.dal.dynamic.nodes |
负责动态 SQL 的生成
|
| net.hasor.db.dal.dynamic.segment |
FxSQL Parser
|
| net.hasor.db.dal.execute |
dynamicSql 执行器,支持 Statement、Prepared、Callable。
|
| net.hasor.db.dal.repository |
负责解析配置文件并构建和管路 dynamicSql,同时提供注解 @RefMapper 的解析。
|
| net.hasor.db.dal.repository.config | |
| net.hasor.db.dal.repository.parser |
| 限定符和类型 | 方法和说明 |
|---|---|
DynamicSql |
DynamicContext.findDynamic(String dynamicId) |
DynamicSql |
DynamicParser.parseDynamicSql(Node configNode) |
DynamicSql |
DynamicParser.parseDynamicSql(String sqlString) |
| 限定符和类型 | 类和说明 |
|---|---|
class |
ArrayDynamicSql
多个 SQL 节点组合成一个 SqlNode
|
class |
BindDynamicSql
|
class |
ChooseDynamicSql
|
class |
ForeachDynamicSql
对应XML中
|
class |
IfDynamicSql
|
class |
IncludeDynamicSql
|
class |
SelectKeyDynamicSql
|
class |
SetDynamicSql
对应XML中
|
class |
TextDynamicSql
文本块
|
class |
TrimDynamicSql
对应XML中
|
class |
WhereDynamicSql
对应XML中
|
| 限定符和类型 | 字段和说明 |
|---|---|
protected List<DynamicSql> |
ArrayDynamicSql.subNodes
子节点
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected DynamicSql |
TextDynamicSql.parserQuery(String fragmentString) |
| 限定符和类型 | 方法和说明 |
|---|---|
List<DynamicSql> |
ArrayDynamicSql.getSubNodes()
获取节点
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
ArrayDynamicSql.addChildNode(DynamicSql node)
追加子节点
|
void |
ChooseDynamicSql.setDefaultNode(DynamicSql block)
追加子节点
|
protected boolean |
ArrayDynamicSql.visitItem(int i,
DynamicSql dynamicSql,
DynamicContext context,
SqlBuilder sqlBuilder) |
| 限定符和类型 | 类和说明 |
|---|---|
class |
DefaultSqlSegment
本处理器,兼容 @{...}、#{...}、${...}
|
| 限定符和类型 | 方法和说明 |
|---|---|
static DynamicSql |
SqlSegmentParser.analysisSQL(String fragmentString) |
DynamicSql |
DefaultSqlSegment.clone() |
| 限定符和类型 | 方法和说明 |
|---|---|
T |
AbstractStatementExecute.execute(Connection conn,
DynamicSql dynamicSql,
Map<String,Object> data) |
T |
AbstractStatementExecute.execute(Connection conn,
DynamicSql dynamicSql,
Map<String,Object> data,
Page pageInfo,
boolean pageResult,
PageSqlDialect dialect) |
T |
AbstractStatementExecute.execute(Connection conn,
DynamicSql dynamicSql,
Map<String,Object> data,
Page pageInfo,
boolean pageResult,
PageSqlDialect dialect,
boolean resultAsMap) |
| 限定符和类型 | 方法和说明 |
|---|---|
DynamicSql |
DalRegistry.findDynamicSql(Class<?> space,
String dynamicId)
根据 namespace 和 ID 查找 DynamicSql
|
DynamicSql |
DalRegistry.findDynamicSql(String space,
String dynamicId)
根据 namespace 和 ID 查找 DynamicSql
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
DalRegistry.saveDynamic(String space,
String identify,
DynamicSql dynamicSql) |
| 限定符和类型 | 类和说明 |
|---|---|
class |
DeleteSqlConfig
Delete SqlConfig
|
class |
DmlSqlConfig
All DML SqlConfig
|
class |
InsertSqlConfig
Insert SqlConfig
|
class |
QuerySqlConfig
Query SqlConfig
|
class |
SegmentSqlConfig
Segment SqlConfig
|
class |
SelectKeySqlConfig
SelectKey SqlConfig
|
class |
UpdateSqlConfig
Update SqlConfig
|
| 限定符和类型 | 字段和说明 |
|---|---|
protected DynamicSql |
SegmentSqlConfig.target |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
DmlSqlConfig.processSelectKey(DynamicSql target) |
| 构造器和说明 |
|---|
DeleteSqlConfig(DynamicSql target) |
DeleteSqlConfig(DynamicSql target,
Node operationNode) |
DmlSqlConfig(DynamicSql target) |
DmlSqlConfig(DynamicSql target,
Node operationNode) |
InsertSqlConfig(DynamicSql target) |
InsertSqlConfig(DynamicSql target,
Node operationNode) |
QuerySqlConfig(DynamicSql target) |
QuerySqlConfig(DynamicSql target,
Node operationNode) |
SegmentSqlConfig(DynamicSql target) |
UpdateSqlConfig(DynamicSql target) |
UpdateSqlConfig(DynamicSql target,
Node operationNode) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected DynamicSql |
ClassDynamicResolve.createDynamicSql(Annotation annotation,
Class<?> resultType,
String parameterType) |
DynamicSql |
ClassDynamicResolve.parseSqlConfig(Method dalMethod) |
DynamicSql |
XmlDynamicResolve.parseSqlConfig(Node configNode) |
DynamicSql |
XmlDynamicResolve.parseSqlConfig(String sqlString) |
DynamicSql |
DynamicResolve.parseSqlConfig(T config) |
Copyright © 2021. All rights reserved.