Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
Y
yzg-util
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
YZG
yzg-util
Commits
621a14bb
Commit
621a14bb
authored
Jun 05, 2020
by
yanzg
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
压缩视频
parent
d73ea0f1
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
285 additions
and
119 deletions
+285
-119
BaseDao.java
yzg-util-db/src/main/java/com/yanzuoguang/dao/BaseDao.java
+12
-14
QueryPara.java
yzg-util-db/src/main/java/com/yanzuoguang/dao/QueryPara.java
+53
-0
BaseDaoImpl.java
...b/src/main/java/com/yanzuoguang/dao/impl/BaseDaoImpl.java
+32
-31
BaseDaoSql.java
...db/src/main/java/com/yanzuoguang/dao/impl/BaseDaoSql.java
+188
-74
No files found.
yzg-util-db/src/main/java/com/yanzuoguang/dao/BaseDao.java
View file @
621a14bb
...
@@ -5,8 +5,6 @@ import com.yanzuoguang.util.vo.DataDaoVo;
...
@@ -5,8 +5,6 @@ import com.yanzuoguang.util.vo.DataDaoVo;
import
com.yanzuoguang.util.vo.PageSizeData
;
import
com.yanzuoguang.util.vo.PageSizeData
;
import
com.yanzuoguang.util.vo.PageSizeReqVo
;
import
com.yanzuoguang.util.vo.PageSizeReqVo
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.List
;
...
@@ -73,11 +71,11 @@ public interface BaseDao {
...
@@ -73,11 +71,11 @@ public interface BaseDao {
*
*
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
<
T
extends
Object
>
T
load
(
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
);
<
T
extends
Object
>
T
load
(
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
);
/**
/**
...
@@ -95,11 +93,11 @@ public interface BaseDao {
...
@@ -95,11 +93,11 @@ public interface BaseDao {
*
*
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
<
T
extends
Object
>
List
<
T
>
loadList
(
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
);
<
T
extends
Object
>
List
<
T
>
loadList
(
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
);
/**
/**
* 加载分页数据
* 加载分页数据
...
@@ -116,11 +114,11 @@ public interface BaseDao {
...
@@ -116,11 +114,11 @@ public interface BaseDao {
*
*
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
);
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
);
/**
/**
* 加载分页数据
* 加载分页数据
...
@@ -139,11 +137,11 @@ public interface BaseDao {
...
@@ -139,11 +137,11 @@ public interface BaseDao {
* @param pageReq 分页数据信息
* @param pageReq 分页数据信息
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param model 加载数据的请求参数,可以是主键字符串(Int),或者是包含主键的实体,或者是包含其他非主键的实体完全匹配.
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
);
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
);
/**
/**
* 加载分页数据
* 加载分页数据
...
@@ -160,11 +158,11 @@ public interface BaseDao {
...
@@ -160,11 +158,11 @@ public interface BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
);
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
);
/**
/**
* 加载分页数据
* 加载分页数据
...
@@ -181,11 +179,11 @@ public interface BaseDao {
...
@@ -181,11 +179,11 @@ public interface BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
);
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
);
/**
/**
* 修改数据
* 修改数据
...
...
yzg-util-db/src/main/java/com/yanzuoguang/dao/QueryPara.java
0 → 100644
View file @
621a14bb
package
com
.
yanzuoguang
.
dao
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
/**
* 查询参数
*
* @author 颜佐光
*/
@ApiModel
(
description
=
"查询参数"
)
public
class
QueryPara
{
/**
* 所有条件生效
*/
@ApiModelProperty
(
notes
=
"所有条件生效,而不仅仅在主键存在时,通过主键加载"
)
private
boolean
fullCond
;
/**
* 查询删除标记的结果
*/
@ApiModelProperty
(
notes
=
"在数据通过删除标记删除时,可以通过该参数查询出来"
)
private
boolean
loadRemove
;
public
QueryPara
()
{
}
public
QueryPara
(
boolean
fullCond
)
{
this
.
fullCond
=
fullCond
;
}
public
QueryPara
(
boolean
fullCond
,
boolean
loadRemove
)
{
this
.
fullCond
=
fullCond
;
this
.
loadRemove
=
loadRemove
;
}
public
boolean
isFullCond
()
{
return
fullCond
;
}
public
void
setFullCond
(
boolean
fullCond
)
{
this
.
fullCond
=
fullCond
;
}
public
boolean
isLoadRemove
()
{
return
loadRemove
;
}
public
void
setLoadRemove
(
boolean
loadRemove
)
{
this
.
loadRemove
=
loadRemove
;
}
}
yzg-util-db/src/main/java/com/yanzuoguang/dao/impl/BaseDaoImpl.java
View file @
621a14bb
...
@@ -2,6 +2,7 @@ package com.yanzuoguang.dao.impl;
...
@@ -2,6 +2,7 @@ package com.yanzuoguang.dao.impl;
import
com.yanzuoguang.dao.BaseDao
;
import
com.yanzuoguang.dao.BaseDao
;
import
com.yanzuoguang.dao.DaoConst
;
import
com.yanzuoguang.dao.DaoConst
;
import
com.yanzuoguang.dao.QueryPara
;
import
com.yanzuoguang.db.DbExecute
;
import
com.yanzuoguang.db.DbExecute
;
import
com.yanzuoguang.util.base.ObjectHelper
;
import
com.yanzuoguang.util.base.ObjectHelper
;
import
com.yanzuoguang.util.exception.CodeException
;
import
com.yanzuoguang.util.exception.CodeException
;
...
@@ -391,8 +392,8 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -391,8 +392,8 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
* @param model 来源对象
* @param model 来源对象
* @return
* @return
*/
*/
protected
Object
getLoadFrom
(
Object
model
,
boolean
fullCond
)
{
protected
Object
getLoadFrom
(
Object
model
,
QueryPara
queryPara
)
{
if
(
fullCond
)
{
if
(
queryPara
!=
null
&&
queryPara
.
isFullCond
()
)
{
return
model
;
return
model
;
}
}
...
@@ -429,16 +430,16 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -429,16 +430,16 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
@Override
@Override
public
<
T
extends
Object
>
T
load
(
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
)
{
public
<
T
extends
Object
>
T
load
(
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
)
{
// 获取来源主键
// 获取来源主键
Object
from
=
this
.
getLoadFrom
(
model
,
fullCond
);
Object
from
=
this
.
getLoadFrom
(
model
,
queryPara
);
// 通过传入数据进行加载
// 通过传入数据进行加载
T
to
=
this
.
queryFirst
(
resultClass
,
DaoConst
.
LOAD
,
from
);
T
to
=
this
.
queryFirst
(
resultClass
,
DaoConst
.
LOAD
,
from
,
queryPara
);
if
(
to
==
null
)
{
if
(
to
==
null
)
{
return
null
;
return
null
;
}
}
...
@@ -460,7 +461,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -460,7 +461,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*/
*/
@Override
@Override
public
<
T
extends
Object
>
T
load
(
Object
model
,
Class
<
T
>
resultClass
)
{
public
<
T
extends
Object
>
T
load
(
Object
model
,
Class
<
T
>
resultClass
)
{
return
this
.
load
(
model
,
resultClass
,
false
);
return
this
.
load
(
model
,
resultClass
,
null
);
}
}
/**
/**
...
@@ -468,17 +469,17 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -468,17 +469,17 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
@Override
@Override
public
<
T
extends
Object
>
List
<
T
>
loadList
(
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
)
{
public
<
T
extends
Object
>
List
<
T
>
loadList
(
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
)
{
// 获取来源主键
// 获取来源主键
Object
from
=
this
.
getLoadFrom
(
model
,
fullCond
);
Object
from
=
this
.
getLoadFrom
(
model
,
queryPara
);
// 通过传入数据进行加载
// 通过传入数据进行加载
List
<
T
>
to
=
this
.
query
(
resultClass
,
DaoConst
.
LOAD
,
from
);
List
<
T
>
to
=
this
.
query
(
resultClass
,
DaoConst
.
LOAD
,
from
,
queryPara
);
if
(
to
==
null
||
to
.
size
()
==
0
)
{
if
(
to
==
null
||
to
.
size
()
==
0
)
{
return
new
ArrayList
<>();
return
new
ArrayList
<>();
}
}
...
@@ -498,7 +499,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -498,7 +499,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*/
*/
@Override
@Override
public
<
T
extends
Object
>
List
<
T
>
loadList
(
Object
model
,
Class
<
T
>
resultClass
)
{
public
<
T
extends
Object
>
List
<
T
>
loadList
(
Object
model
,
Class
<
T
>
resultClass
)
{
return
this
.
loadList
(
model
,
resultClass
,
false
);
return
this
.
loadList
(
model
,
resultClass
,
null
);
}
}
...
@@ -512,7 +513,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -512,7 +513,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*/
*/
@Override
@Override
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
)
{
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
)
{
return
this
.
loadPage
(
model
,
model
,
resultClass
,
false
);
return
this
.
loadPage
(
model
,
model
,
resultClass
,
null
);
}
}
/**
/**
...
@@ -520,13 +521,13 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -520,13 +521,13 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
@Override
@Override
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
)
{
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
)
{
return
this
.
loadPage
(
model
,
model
,
resultClass
,
fullCond
);
return
this
.
loadPage
(
model
,
model
,
resultClass
,
queryPara
);
}
}
/**
/**
...
@@ -539,7 +540,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -539,7 +540,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*/
*/
@Override
@Override
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
)
{
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
)
{
return
this
.
loadPage
(
pageReq
,
model
,
resultClass
,
false
);
return
this
.
loadPage
(
pageReq
,
model
,
resultClass
,
null
);
}
}
/**
/**
...
@@ -547,17 +548,17 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -547,17 +548,17 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
@Override
@Override
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
)
{
public
<
T
extends
Object
>
PageSizeData
<
T
>
loadPage
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
)
{
// 获取来源主键
// 获取来源主键
Object
from
=
this
.
getLoadFrom
(
model
,
fullCond
);
Object
from
=
this
.
getLoadFrom
(
model
,
queryPara
);
// 通过传入数据进行加载
// 通过传入数据进行加载
PageSizeData
<
T
>
to
=
this
.
queryPage
(
resultClass
,
pageReq
,
DaoConst
.
LOAD
,
from
);
PageSizeData
<
T
>
to
=
this
.
queryPage
(
resultClass
,
pageReq
,
DaoConst
.
LOAD
,
from
,
queryPara
);
if
(
to
==
null
||
to
.
getPageTotal
()
==
0
)
{
if
(
to
==
null
||
to
.
getPageTotal
()
==
0
)
{
return
to
;
return
to
;
}
}
...
@@ -579,7 +580,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -579,7 +580,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*/
*/
@Override
@Override
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
)
{
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
)
{
return
this
.
loadPageData
(
model
,
model
,
resultClass
,
false
);
return
this
.
loadPageData
(
model
,
model
,
resultClass
,
null
);
}
}
/**
/**
...
@@ -587,13 +588,13 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -587,13 +588,13 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
@Override
@Override
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
)
{
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
)
{
return
this
.
loadPageData
(
model
,
model
,
resultClass
,
fullCond
);
return
this
.
loadPageData
(
model
,
model
,
resultClass
,
queryPara
);
}
}
...
@@ -607,7 +608,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -607,7 +608,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*/
*/
@Override
@Override
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
)
{
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
)
{
return
this
.
loadPageData
(
pageReq
,
model
,
resultClass
,
false
);
return
this
.
loadPageData
(
pageReq
,
model
,
resultClass
,
null
);
}
}
/**
/**
...
@@ -615,19 +616,19 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
...
@@ -615,19 +616,19 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
*
*
* @param model 加载数据的请求参数
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param resultClass 需要加载的数据的类型
* @param
fullCond 所有条件生效
* @param
queryPara 查询参数
* @param <T> 返回数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
* @return 需要返回的数据
*/
*/
@Override
@Override
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
boolean
fullCond
)
{
public
<
T
extends
Object
>
List
<
T
>
loadPageData
(
PageSizeReqVo
pageReq
,
Object
model
,
Class
<
T
>
resultClass
,
QueryPara
queryPara
)
{
// 获取来源主键
// 获取来源主键
Object
from
=
this
.
getLoadFrom
(
model
,
fullCond
);
Object
from
=
this
.
getLoadFrom
(
model
,
queryPara
);
// 通过传入数据进行加载
// 通过传入数据进行加载
List
<
T
>
to
=
this
.
queryPageData
(
resultClass
,
pageReq
,
DaoConst
.
LOAD
,
from
);
List
<
T
>
to
=
this
.
queryPageData
(
resultClass
,
pageReq
,
DaoConst
.
LOAD
,
from
,
queryPara
);
if
(
to
==
null
)
{
if
(
to
==
null
)
{
return
to
;
return
new
ArrayList
<>()
;
}
}
// 判断来源主键是否存在,不存在则获取加载后的主键
// 判断来源主键是否存在,不存在则获取加载后的主键
...
...
yzg-util-db/src/main/java/com/yanzuoguang/dao/impl/BaseDaoSql.java
View file @
621a14bb
package
com
.
yanzuoguang
.
dao
.
impl
;
package
com
.
yanzuoguang
.
dao
.
impl
;
import
com.yanzuoguang.dao.DaoConst
;
import
com.yanzuoguang.dao.DaoConst
;
import
com.yanzuoguang.dao.QueryPara
;
import
com.yanzuoguang.dao.TableAnnotation
;
import
com.yanzuoguang.dao.TableAnnotation
;
import
com.yanzuoguang.db.DbExecute
;
import
com.yanzuoguang.db.DbExecute
;
import
com.yanzuoguang.db.impl.DbRow
;
import
com.yanzuoguang.db.impl.DbRow
;
...
@@ -192,31 +193,36 @@ public abstract class BaseDaoSql {
...
@@ -192,31 +193,36 @@ public abstract class BaseDaoSql {
}
}
/**
/**
*
根据SQL语句信息查询第一个单元格
*
是否需要复制一个新的
*
*
* @param sqlData
SQL语句信息
* @param sqlData
* @param
model 前台参数
* @param
queryPara
* @
return 查询的结果
* @
param copy
*/
*/
protected
Object
queryCell
(
SqlData
sqlData
,
Object
model
)
{
protected
SqlData
getSqlQueryPara
(
SqlData
sqlData
,
QueryPara
queryPara
,
boolean
copy
)
{
List
<
Object
>
paras
=
new
ArrayList
<>();
SqlData
copyTo
=
sqlData
;
String
sql
=
this
.
getQueryPara
(
paras
,
sqlData
,
model
);
if
(
queryPara
!=
null
&&
queryPara
.
isLoadRemove
())
{
Object
cell
=
this
.
queryCellWithCache
(
sqlData
.
getName
(),
sql
,
paras
.
toArray
());
if
(
copyTo
.
getField
(
DaoConst
.
REMOVE_FLAG_INPUT
)
!=
null
)
{
return
cell
;
if
(
copy
)
{
copyTo
=
sqlData
.
copy
();
}
copyTo
.
removeField
(
DaoConst
.
REMOVE_FLAG_INPUT
);
}
}
return
copyTo
;
}
}
/**
/**
* 根据SQL
名称获取第一个单元格
* 根据SQL
语句信息查询数据
*
*
* @param sql
Name 需要执行的SQL语句的名称
* @param sql
Data SQL语句信息
* @param model
需要转化的实体
* @param model
前台参数
* @return
处理参数
* @return
查询的结果
*/
*/
protected
Object
queryCell
(
String
sqlName
,
Object
model
)
{
protected
List
<
MapRow
>
queryData
(
SqlData
sqlData
,
Object
model
)
{
return
this
.
query
Cell
(
this
.
getSql
(
sqlName
)
,
model
);
return
this
.
query
Data
(
MapRow
.
class
,
sqlData
,
model
);
}
}
/**
/**
* 根据SQL语句信息查询数据
* 根据SQL语句信息查询数据
*
*
...
@@ -248,6 +254,57 @@ public abstract class BaseDaoSql {
...
@@ -248,6 +254,57 @@ public abstract class BaseDaoSql {
this
.
getDb
().
query
(
this
.
getClass
(),
cls
,
handle
,
sqlData
.
getName
(),
sql
,
paras
.
toArray
());
this
.
getDb
().
query
(
this
.
getClass
(),
cls
,
handle
,
sqlData
.
getName
(),
sql
,
paras
.
toArray
());
}
}
/**
* 根据SQL名称获取第一个单元格
*
* @param sqlName 需要执行的SQL语句的名称
* @param model 需要转化的实体
* @return 处理参数
*/
protected
Object
queryCell
(
String
sqlName
,
Object
model
)
{
return
this
.
queryCell
(
this
.
getSql
(
sqlName
),
model
);
}
/**
* 根据SQL语句信息查询第一个单元格
*
* @param sqlData SQL语句信息
* @param model 前台参数
* @return 查询的结果
*/
protected
Object
queryCell
(
SqlData
sqlData
,
Object
model
)
{
return
this
.
queryCell
(
sqlData
,
model
,
null
);
}
/**
* 根据SQL语句信息查询第一个单元格
*
* @param sqlData SQL语句信息
* @param model 前台参数
* @return 查询的结果
*/
protected
Object
queryCell
(
SqlData
sqlData
,
Object
model
,
QueryPara
queryPara
)
{
sqlData
=
getSqlQueryPara
(
sqlData
,
queryPara
,
true
);
List
<
Object
>
paras
=
new
ArrayList
<>();
String
sql
=
this
.
getQueryPara
(
paras
,
sqlData
,
model
);
Object
cell
=
this
.
queryCellWithCache
(
sqlData
.
getName
(),
sql
,
paras
.
toArray
());
return
cell
;
}
/**
* 查询不分页数据
*
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
List
<
MapRow
>
query
(
String
sqlName
,
Object
model
)
{
return
this
.
query
(
MapRow
.
class
,
sqlName
,
model
);
}
/**
/**
* 查询不分页数据
* 查询不分页数据
*
*
...
@@ -258,7 +315,23 @@ public abstract class BaseDaoSql {
...
@@ -258,7 +315,23 @@ public abstract class BaseDaoSql {
* @return 查询的结果
* @return 查询的结果
*/
*/
protected
<
T
extends
Object
>
List
<
T
>
query
(
Class
<
T
>
cls
,
String
sqlName
,
Object
model
)
{
protected
<
T
extends
Object
>
List
<
T
>
query
(
Class
<
T
>
cls
,
String
sqlName
,
Object
model
)
{
return
this
.
query
(
cls
,
sqlName
,
model
,
null
);
}
/**
* 查询不分页数据
*
* @param cls 数据结果类型
* @param sqlName SQL语句名称
* @param model 前台参数
* @param <T> 返回数据类型
* @return 查询的结果
*/
protected
<
T
extends
Object
>
List
<
T
>
query
(
Class
<
T
>
cls
,
String
sqlName
,
Object
model
,
QueryPara
queryPara
)
{
SqlData
sqlData
=
this
.
getSql
(
sqlName
);
SqlData
sqlData
=
this
.
getSql
(
sqlName
);
sqlData
=
getSqlQueryPara
(
sqlData
,
queryPara
,
true
);
return
queryData
(
cls
,
sqlData
,
model
);
return
queryData
(
cls
,
sqlData
,
model
);
}
}
...
@@ -272,10 +345,38 @@ public abstract class BaseDaoSql {
...
@@ -272,10 +345,38 @@ public abstract class BaseDaoSql {
* @return 查询的结果
* @return 查询的结果
*/
*/
protected
<
T
extends
Object
>
void
query
(
Class
<
T
>
cls
,
DbRow
<
T
>
handle
,
String
sqlName
,
Object
model
)
{
protected
<
T
extends
Object
>
void
query
(
Class
<
T
>
cls
,
DbRow
<
T
>
handle
,
String
sqlName
,
Object
model
)
{
this
.
query
(
cls
,
handle
,
sqlName
,
model
,
null
);
}
/**
* 查询不分页数据
*
* @param cls 数据结果类型
* @param handle 需要处理的数据
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
<
T
extends
Object
>
void
query
(
Class
<
T
>
cls
,
DbRow
<
T
>
handle
,
String
sqlName
,
Object
model
,
QueryPara
queryPara
)
{
SqlData
sqlData
=
this
.
getSql
(
sqlName
);
SqlData
sqlData
=
this
.
getSql
(
sqlName
);
// 获取查询参数处理后的SQL语句
sqlData
=
getSqlQueryPara
(
sqlData
,
queryPara
,
true
);
queryData
(
cls
,
handle
,
sqlData
,
model
);
queryData
(
cls
,
handle
,
sqlData
,
model
);
}
}
/**
* 查询第一条数据
*
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
MapRow
queryFirst
(
String
sqlName
,
Object
model
)
{
return
this
.
queryFirst
(
MapRow
.
class
,
sqlName
,
model
);
}
/**
/**
* 查询第一条数据
* 查询第一条数据
*
*
...
@@ -286,14 +387,40 @@ public abstract class BaseDaoSql {
...
@@ -286,14 +387,40 @@ public abstract class BaseDaoSql {
* @return 查询的结果
* @return 查询的结果
*/
*/
protected
<
T
extends
Object
>
T
queryFirst
(
Class
<
T
>
cls
,
String
sqlName
,
Object
model
)
{
protected
<
T
extends
Object
>
T
queryFirst
(
Class
<
T
>
cls
,
String
sqlName
,
Object
model
)
{
return
this
.
queryFirst
(
cls
,
sqlName
,
model
,
null
);
}
/**
* 查询第一条数据
*
* @param cls 数据结果类型
* @param sqlName SQL语句名称
* @param model 前台参数
* @param <T> 返回数据类型
* @return 查询的结果
*/
protected
<
T
extends
Object
>
T
queryFirst
(
Class
<
T
>
cls
,
String
sqlName
,
Object
model
,
QueryPara
queryPara
)
{
PageSizeReq
pageSize
=
new
PageSizeReqVo
();
PageSizeReq
pageSize
=
new
PageSizeReqVo
();
pageSize
.
setPageIndex
(
1
);
pageSize
.
setPageIndex
(
1
);
pageSize
.
setPageSize
(
1
);
pageSize
.
setPageSize
(
1
);
List
<
T
>
list
=
this
.
queryPageData
(
cls
,
pageSize
,
sqlName
,
model
);
List
<
T
>
list
=
this
.
queryPageData
(
cls
,
pageSize
,
sqlName
,
model
,
queryPara
);
T
retVal
=
list
.
size
()
>
0
?
list
.
get
(
0
)
:
null
;
T
retVal
=
list
.
size
()
>
0
?
list
.
get
(
0
)
:
null
;
return
retVal
;
return
retVal
;
}
}
/**
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
*
* @param pageSize 分页参数
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
List
<
MapRow
>
queryPageData
(
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
)
{
return
this
.
queryPageData
(
MapRow
.
class
,
pageSize
,
sqlName
,
model
);
}
/**
/**
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
*
*
...
@@ -305,14 +432,43 @@ public abstract class BaseDaoSql {
...
@@ -305,14 +432,43 @@ public abstract class BaseDaoSql {
* @return 查询的结果
* @return 查询的结果
*/
*/
protected
<
T
extends
Object
>
List
<
T
>
queryPageData
(
Class
<
T
>
cls
,
PageSizeReq
pageSize
,
String
sqlName
,
Object
model
)
{
protected
<
T
extends
Object
>
List
<
T
>
queryPageData
(
Class
<
T
>
cls
,
PageSizeReq
pageSize
,
String
sqlName
,
Object
model
)
{
return
this
.
queryPageData
(
cls
,
pageSize
,
sqlName
,
model
,
null
);
}
/**
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
*
* @param cls 数据结果类型
* @param pageSize 分页参数
* @param sqlName SQL语句名称
* @param model 前台参数
* @param <T> 返回数据类型
* @return 查询的结果
*/
protected
<
T
extends
Object
>
List
<
T
>
queryPageData
(
Class
<
T
>
cls
,
PageSizeReq
pageSize
,
String
sqlName
,
Object
model
,
QueryPara
queryPara
)
{
SqlData
from
=
this
.
getSql
(
sqlName
);
SqlData
from
=
this
.
getSql
(
sqlName
);
// 对SQL语句进行分页处理
// 对SQL语句进行分页处理
SqlData
to
=
from
.
copy
();
SqlData
to
=
from
.
copy
();
// 获取sql语句
to
=
getSqlQueryPara
(
to
,
queryPara
,
false
);
to
.
setSql
(
from
.
getSql
());
to
.
setSql
(
from
.
getSql
());
to
.
addCode
(
"{LIMIT}"
,
" LIMIT "
+
pageSize
.
getPageStart
()
+
","
+
pageSize
.
getPageSize
());
to
.
addCode
(
"{LIMIT}"
,
" LIMIT "
+
pageSize
.
getPageStart
()
+
","
+
pageSize
.
getPageSize
());
return
queryData
(
cls
,
to
,
model
);
return
queryData
(
cls
,
to
,
model
);
}
}
/**
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
*
* @param pageSize 分页参数
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
PageSizeData
<
MapRow
>
queryPage
(
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
)
{
return
this
.
queryPage
(
MapRow
.
class
,
pageSize
,
sqlName
,
model
);
}
/**
/**
* 查询分页数据,仅仅只是查询分页中的数据。如:包含的总数据数量
* 查询分页数据,仅仅只是查询分页中的数据。如:包含的总数据数量
*
*
...
@@ -324,6 +480,20 @@ public abstract class BaseDaoSql {
...
@@ -324,6 +480,20 @@ public abstract class BaseDaoSql {
* @return 查询的结果
* @return 查询的结果
*/
*/
protected
<
T
extends
Object
>
PageSizeData
<
T
>
queryPage
(
Class
<
T
>
cls
,
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
)
{
protected
<
T
extends
Object
>
PageSizeData
<
T
>
queryPage
(
Class
<
T
>
cls
,
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
)
{
return
queryPage
(
cls
,
pageSize
,
sqlName
,
model
,
null
);
}
/**
* 查询分页数据,仅仅只是查询分页中的数据。如:包含的总数据数量
*
* @param cls 数据结果类型
* @param pageSize 分页参数
* @param sqlName SQL语句名称
* @param model 前台参数
* @param <T> 返回数据类型
* @return 查询的结果
*/
protected
<
T
extends
Object
>
PageSizeData
<
T
>
queryPage
(
Class
<
T
>
cls
,
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
,
QueryPara
queryPara
)
{
// 获取需要执行的SQL语句
// 获取需要执行的SQL语句
SqlData
from
=
this
.
getSql
(
sqlName
);
SqlData
from
=
this
.
getSql
(
sqlName
);
...
@@ -334,6 +504,7 @@ public abstract class BaseDaoSql {
...
@@ -334,6 +504,7 @@ public abstract class BaseDaoSql {
// 对SQL语句进行分页处理
// 对SQL语句进行分页处理
SqlData
to
=
from
.
copy
();
SqlData
to
=
from
.
copy
();
to
=
getSqlQueryPara
(
to
,
queryPara
,
false
);
to
.
addCode
(
"{LIMIT}"
,
" LIMIT "
+
pageSize
.
getPageStart
()
+
","
+
pageSize
.
getPageSize
());
to
.
addCode
(
"{LIMIT}"
,
" LIMIT "
+
pageSize
.
getPageStart
()
+
","
+
pageSize
.
getPageSize
());
// 按照分页查询数据
// 按照分页查询数据
...
@@ -360,63 +531,6 @@ public abstract class BaseDaoSql {
...
@@ -360,63 +531,6 @@ public abstract class BaseDaoSql {
return
data
;
return
data
;
}
}
/**
* 根据SQL语句信息查询数据
*
* @param sqlData SQL语句信息
* @param model 前台参数
* @return 查询的结果
*/
protected
List
<
MapRow
>
queryData
(
SqlData
sqlData
,
Object
model
)
{
return
this
.
queryData
(
MapRow
.
class
,
sqlData
,
model
);
}
/**
* 查询不分页数据
*
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
List
<
MapRow
>
query
(
String
sqlName
,
Object
model
)
{
return
this
.
query
(
MapRow
.
class
,
sqlName
,
model
);
}
/**
* 查询第一条数据
*
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
MapRow
queryFirst
(
String
sqlName
,
Object
model
)
{
return
this
.
queryFirst
(
MapRow
.
class
,
sqlName
,
model
);
}
/**
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
*
* @param pageSize 分页参数
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
List
<
MapRow
>
queryPageData
(
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
)
{
return
this
.
queryPageData
(
MapRow
.
class
,
pageSize
,
sqlName
,
model
);
}
/**
* 查询分页数据,仅仅只是查询分页中的数据,不查询分页信息。如:包含的总数据数量
*
* @param pageSize 分页参数
* @param sqlName SQL语句名称
* @param model 前台参数
* @return 查询的结果
*/
protected
PageSizeData
<
MapRow
>
queryPage
(
PageSizeReqVo
pageSize
,
String
sqlName
,
Object
model
)
{
return
this
.
queryPage
(
MapRow
.
class
,
pageSize
,
sqlName
,
model
);
}
/**
/**
* 获取SQL语句的参数
* 获取SQL语句的参数
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment