Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_53077510
production_ssm
提交
f8c9249b
P
production_ssm
项目概览
weixin_53077510
/
production_ssm
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
production_ssm
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
f8c9249b
编写于
9月 26, 2016
作者:
M
megagao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加了自定义的响应结构
上级
48da0c78
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
150 addition
and
0 deletion
+150
-0
src/main/java/org/hqu/production_ms/domain/CustomResult.java
src/main/java/org/hqu/production_ms/domain/CustomResult.java
+150
-0
未找到文件。
src/main/java/org/hqu/production_ms/domain/CustomResult.java
0 → 100644
浏览文件 @
f8c9249b
package
org.hqu.production_ms.domain
;
import
java.util.List
;
import
com.fasterxml.jackson.databind.JsonNode
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
/**
* 自定义响应结构
*/
public
class
CustomResult
{
// 定义jackson对象
private
static
final
ObjectMapper
MAPPER
=
new
ObjectMapper
();
// 响应业务状态
private
Integer
status
;
// 响应消息
private
String
msg
;
// 响应中的数据
private
Object
data
;
public
static
CustomResult
build
(
Integer
status
,
String
msg
,
Object
data
)
{
return
new
CustomResult
(
status
,
msg
,
data
);
}
public
static
CustomResult
ok
(
Object
data
)
{
return
new
CustomResult
(
data
);
}
public
static
CustomResult
ok
()
{
return
new
CustomResult
(
null
);
}
public
CustomResult
()
{
}
public
static
CustomResult
build
(
Integer
status
,
String
msg
)
{
return
new
CustomResult
(
status
,
msg
,
null
);
}
public
CustomResult
(
Integer
status
,
String
msg
,
Object
data
)
{
this
.
status
=
status
;
this
.
msg
=
msg
;
this
.
data
=
data
;
}
public
CustomResult
(
Object
data
)
{
this
.
status
=
200
;
this
.
msg
=
"OK"
;
this
.
data
=
data
;
}
// public Boolean isOK() {
// return this.status == 200;
// }
public
Integer
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Integer
status
)
{
this
.
status
=
status
;
}
public
String
getMsg
()
{
return
msg
;
}
public
void
setMsg
(
String
msg
)
{
this
.
msg
=
msg
;
}
public
Object
getData
()
{
return
data
;
}
public
void
setData
(
Object
data
)
{
this
.
data
=
data
;
}
/**
* 将json结果集转化为TaotaoResult对象
*
* @param jsonData json数据
* @param clazz TaotaoResult中的object类型
* @return
*/
public
static
CustomResult
formatToPojo
(
String
jsonData
,
Class
<?>
clazz
)
{
try
{
if
(
clazz
==
null
)
{
return
MAPPER
.
readValue
(
jsonData
,
CustomResult
.
class
);
}
JsonNode
jsonNode
=
MAPPER
.
readTree
(
jsonData
);
JsonNode
data
=
jsonNode
.
get
(
"data"
);
Object
obj
=
null
;
if
(
clazz
!=
null
)
{
if
(
data
.
isObject
())
{
obj
=
MAPPER
.
readValue
(
data
.
traverse
(),
clazz
);
}
else
if
(
data
.
isTextual
())
{
obj
=
MAPPER
.
readValue
(
data
.
asText
(),
clazz
);
}
}
return
build
(
jsonNode
.
get
(
"status"
).
intValue
(),
jsonNode
.
get
(
"msg"
).
asText
(),
obj
);
}
catch
(
Exception
e
)
{
return
null
;
}
}
/**
* 没有object对象的转化
*
* @param json
* @return
*/
public
static
CustomResult
format
(
String
json
)
{
try
{
return
MAPPER
.
readValue
(
json
,
CustomResult
.
class
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
null
;
}
/**
* Object是集合转化
*
* @param jsonData json数据
* @param clazz 集合中的类型
* @return
*/
public
static
CustomResult
formatToList
(
String
jsonData
,
Class
<?>
clazz
)
{
try
{
JsonNode
jsonNode
=
MAPPER
.
readTree
(
jsonData
);
JsonNode
data
=
jsonNode
.
get
(
"data"
);
Object
obj
=
null
;
if
(
data
.
isArray
()
&&
data
.
size
()
>
0
)
{
obj
=
MAPPER
.
readValue
(
data
.
traverse
(),
MAPPER
.
getTypeFactory
().
constructCollectionType
(
List
.
class
,
clazz
));
}
return
build
(
jsonNode
.
get
(
"status"
).
intValue
(),
jsonNode
.
get
(
"msg"
).
asText
(),
obj
);
}
catch
(
Exception
e
)
{
return
null
;
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录