Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
M
master-4.0
Project
Project
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
Graph
比较
统计图
议题
0
议题
0
列表
看板
标记
Milestones
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
注册表
注册表
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
svn
master-4.0
Commits
00851aea
提交
00851aea
authored
1月 07, 2019
作者:
liupengfei
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
--no commit message
上级
2de27249
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
25 行增加
和
4 行删除
+25
-4
BaseSpringContextUtils.java
...ava/com/zrqx/core/util/spring/BaseSpringContextUtils.java
+25
-4
没有找到文件。
com.zrqx.core/src/main/java/com/zrqx/core/util/spring/BaseSpringContextUtils.java
浏览文件 @
00851aea
...
...
@@ -83,7 +83,8 @@ public abstract class BaseSpringContextUtils implements ApplicationContextAware,
* @author lpf
* @date: 2019年1月7日 上午11:03:08
*/
public
<
T
>
EnumsBindObject
<
EnumsInterface
<?>>
getEnumsBindObject
(
Class
<?
extends
EnumsInterface
<
T
>>
enumClass
,
T
code
){
@SuppressWarnings
(
"unchecked"
)
public
<
T
,
D
extends
EnumsInterface
<
T
>>
EnumsBindObject
<
D
>
getEnumsBindObject
(
Class
<
D
>
enumClass
,
T
code
){
Map
<
Object
,
List
<
EnumsBindObject
<
EnumsInterface
<?>>>>
map
=
enumsBindMap
.
get
(
enumClass
);
if
(
map
==
null
)
{
getLog
().
warn
(
"type:{},获取枚举绑定操作失败"
,
enumClass
,
code
);
...
...
@@ -94,7 +95,7 @@ public abstract class BaseSpringContextUtils implements ApplicationContextAware,
getLog
().
warn
(
"type:{},code:{},获取枚举绑定操作失败"
,
enumClass
,
code
);
return
null
;
}
return
list
.
get
(
0
);
return
(
EnumsBindObject
<
D
>)
list
.
get
(
0
);
}
/**
...
...
@@ -105,11 +106,31 @@ public abstract class BaseSpringContextUtils implements ApplicationContextAware,
* @author lpf
* @date: 2019年1月7日 上午11:08:44
*/
public
<
T
>
EnumsBindBean
<
EnumsInterface
<?>>
getEnumsBindBean
(
Class
<?
extends
EnumsInterface
<
T
>
>
enumClass
,
T
code
){
EnumsBindObject
<
EnumsInterface
<?>
>
object
=
getEnumsBindObject
(
enumClass
,
code
);
public
<
T
,
D
extends
EnumsInterface
<
T
>>
EnumsBindBean
<
D
>
getEnumsBindBean
(
Class
<
D
>
enumClass
,
T
code
){
EnumsBindObject
<
D
>
object
=
getEnumsBindObject
(
enumClass
,
code
);
if
(
object
==
null
)
{
throw
new
RuntimeException
(
"type:"
+
enumClass
+
",code:"
+
code
+
",获取枚举绑定操作失败"
);
}
return
object
.
getBindBean
();
}
/**
* 获取枚举绑定的操作接口并强转为target 接口
* @param enumClass
* @param code
* @param target
* @return
* @author lpf
* @date: 2019年1月7日 上午11:29:40
*/
public
<
T
,
D
extends
EnumsInterface
<
T
>,
B
>
B
getEnumsBindBean
(
Class
<
D
>
enumClass
,
T
code
,
Class
<
B
>
target
)
{
try
{
@SuppressWarnings
(
"unchecked"
)
B
b
=
(
B
)
getEnumsBindBean
(
enumClass
,
code
);
return
b
;
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"type:"
+
enumClass
+
",code:"
+
code
+
",得到对象EnumsBindBean<D>"
+
getEnumsBindBean
(
enumClass
,
code
).
getClass
()
+
" 强转 Class<B>:"
+
target
+
"失败"
);
}
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论