Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MaxKey单点登录官方(MaxKeyTop)
Mybatis Jpa Extra
提交
79ef4b5c
M
Mybatis Jpa Extra
项目概览
MaxKey单点登录官方(MaxKeyTop)
/
Mybatis Jpa Extra
8 个月 前同步成功
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
Mybatis Jpa Extra
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
79ef4b5c
编写于
5月 26, 2019
作者:
MaxKey单点登录官方
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add query and load
上级
13a9d31f
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
22 addition
and
19 deletion
+22
-19
mybatis-jpa-extra-core/src/main/java/org/apache/mybatis/jpa/persistence/IJpaBaseMapper.java
...va/org/apache/mybatis/jpa/persistence/IJpaBaseMapper.java
+1
-8
mybatis-jpa-extra-core/src/main/java/org/apache/mybatis/jpa/persistence/JpaBaseService.java
...va/org/apache/mybatis/jpa/persistence/JpaBaseService.java
+3
-10
mybatis-jpa-extra-core/src/main/java/org/apache/mybatis/jpa/persistence/MapperSqlProvider.java
...org/apache/mybatis/jpa/persistence/MapperSqlProvider.java
+17
-0
mybatis-jpa-extra-core/src/test/resources/org/apache/mybatis/jpa/test/dao/persistence/xml/mysql/StudentsMapper.xml
...tis/jpa/test/dao/persistence/xml/mysql/StudentsMapper.xml
+1
-1
未找到文件。
mybatis-jpa-extra-core/src/main/java/org/apache/mybatis/jpa/persistence/IJpaBaseMapper.java
浏览文件 @
79ef4b5c
...
...
@@ -14,8 +14,7 @@ import org.apache.ibatis.annotations.UpdateProvider;
*/
public
interface
IJpaBaseMapper
<
T
>
{
public
List
<
T
>
select
(
T
entity
);
@SelectProvider
(
type
=
MapperSqlProvider
.
class
,
method
=
"query"
)
public
List
<
T
>
query
(
T
entity
);
//TODO follow function for Query
...
...
@@ -35,12 +34,6 @@ public interface IJpaBaseMapper<T> {
@SelectProvider
(
type
=
MapperSqlProvider
.
class
,
method
=
"get"
)
public
T
get
(
@Param
(
"entityClass"
)
Class
<?>
entityClass
,
@Param
(
"id"
)
String
id
);
/**
* query by entity
* @param entity
* @return one
*/
public
T
load
(
T
entity
);
//TODO follow function for insert update and delete
@InsertProvider
(
type
=
MapperSqlProvider
.
class
,
method
=
"insert"
)
...
...
mybatis-jpa-extra-core/src/main/java/org/apache/mybatis/jpa/persistence/JpaBaseService.java
浏览文件 @
79ef4b5c
...
...
@@ -181,15 +181,6 @@ public class JpaBaseService <T extends JpaBaseDomain> {
return
null
;
}
public
List
<
T
>
select
(
T
entity
)
{
try
{
return
getMapper
().
select
(
entity
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
null
;
}
/**
* query list entity by entity
* @param entity
...
...
@@ -227,7 +218,8 @@ public class JpaBaseService <T extends JpaBaseDomain> {
*/
public
T
load
(
T
entity
)
{
try
{
return
getMapper
().
load
(
entity
);
List
<
T
>
entityList
=
getMapper
().
query
(
entity
);
return
entityList
!=
null
&&
entityList
.
size
()>
0
?
entityList
.
get
(
0
):
null
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
...
...
@@ -241,6 +233,7 @@ public class JpaBaseService <T extends JpaBaseDomain> {
*/
public
T
get
(
String
id
)
{
try
{
log
.
debug
(
"entityClass "
+
entityClass
.
toGenericString
()+
" , id "
+
id
);
return
getMapper
().
get
(
this
.
entityClass
,
id
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
mybatis-jpa-extra-core/src/main/java/org/apache/mybatis/jpa/persistence/MapperSqlProvider.java
浏览文件 @
79ef4b5c
...
...
@@ -226,6 +226,23 @@ public class MapperSqlProvider <T extends JpaBaseDomain>{
_logger
.
trace
(
"Count SQL : \n"
+
sql
);
return
sql
.
toString
();
}
public
String
query
(
T
entity
)
{
buildColumnList
(
entity
.
getClass
());
SQL
sql
=
new
SQL
();
sql
.
SELECT
(
" * "
);
sql
.
FROM
(
getTableName
(
entity
.
getClass
()));
for
(
FieldColumnMapper
fieldColumnMapper
:
fieldsMap
.
get
(
entity
.
getClass
().
getSimpleName
()))
{
if
(
fieldColumnMapper
.
getFieldType
().
equalsIgnoreCase
(
"String"
)&&
BeanUtil
.
getValue
(
entity
,
fieldColumnMapper
.
getFieldName
())==
null
)
{
//skip null field value
}
else
{
sql
.
WHERE
(
fieldColumnMapper
.
getColumnName
()
+
"=#{"
+
fieldColumnMapper
.
getFieldName
()
+
"}"
);
}
}
return
sql
.
toString
();
}
public
String
getTableName
(
Class
<?>
entityClass
)
{
Table
table
=
(
Table
)
entityClass
.
getAnnotation
(
Table
.
class
);
...
...
mybatis-jpa-extra-core/src/test/resources/org/apache/mybatis/jpa/test/dao/persistence/xml/mysql/StudentsMapper.xml
浏览文件 @
79ef4b5c
...
...
@@ -46,7 +46,7 @@
<include
refid=
"sql_condition"
/>
</select>
<select
id=
"query"
parameterType=
"Students"
resultType=
"Students"
>
<select
id=
"query
By
"
parameterType=
"Students"
resultType=
"Students"
>
SELECT
ID ,
STDNO ,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录