| 类和说明 |
|---|
| Prop
Prop.
|
| 类和说明 |
|---|
| Kv
Kv (Key Value)
Example:
Kv para = Kv.by("id", 123);
User user = user.findFirst(getSqlPara("find", para));
|
| 类和说明 |
|---|
| Func.F21
2 参 1 返回函数
|
| 类和说明 |
|---|
| SyncWriteMap
SyncWriteMap 同步写 HashMap
创建原因是 HashMap扩容时,遇到并发修改可能造成 100% CPU 占用
SyncWriteMap 拥有 HashMap 的性能,但不保障并发访问的线程安全
只用于读多写少且不用保障线程安全的场景
例如 MethodKit 中用于缓存 MethodInfo 的 cache,被写入的数据
不用保障是单例,读取之后会做 null 值判断
ActionMapping 中的 HashMap 是系统启动时在独立线程内初始化的,
不存在并发写,只存在并发读的情况,所以仍然可以使用 HashMap
|
| 类和说明 |
|---|
| JavaKeyword
JavaKeyword.
|
| Kv
Kv (Key Value)
Example:
Kv para = Kv.by("id", 123);
User user = user.findFirst(getSqlPara("find", para));
|
| Okv
Okv (Ordered Key Value)
Okv 与 Kv 的唯一区别在于 Okv 继承自 LinkedHashMap,而 Kv 继承自 HashMap
所以对 Okv 中的数据进行迭代输出的次序与数据插入的先后次序一致
Example:
Okv para = Okv.by("id", 123);
User user = user.findFirst(getSqlPara("find", para));
|
| Prop
Prop.
|
| Ret
Ret 用于返回值封装,也用于服务端与客户端的 json 数据通信
一、主要应用场景:
1:业务层需要返回多个返回值,例如要返回业务状态以及数据
2:renderJson(ret) 响应 json 数据给客户端
二、实例
1:服务端
Ret ret = service.justDoIt(paras);
renderJson(ret);
2:javascript 客户端 ajax 回调函数通常这么用:
success: function(ret) {
if(ret.state == "ok") {
...
}
if (ret.state == "fail") {
...
}
}
3:普通应用程序通常这么用:
String json = HttpKit.readData(getRequest());
Ret ret = FastJson.getJson().parse(json, Ret.class);
if (ret.isOk()) {
...
}
if (ret.isFail()) {
...
}
三、定制 Ret
1:将状态字段名由 "state" 改为 "success",将状态值 "ok" 改为 true、"fail" 改为 false
CPI.setRetState("success", true, false);
2:将状态字段名由 "state" 改为 "code",将状态值 "ok" 改为 200、"fail" 改为 500
CPI.setRetState("code", 200, 500);
3:将消息字段名由 "msg" 改为 "message"
CPI.setRetMsg("message")
|
| 类和说明 |
|---|
| JavaKeyword
JavaKeyword.
|
| 类和说明 |
|---|
| Prop
Prop.
|
| 类和说明 |
|---|
| Ret
Ret 用于返回值封装,也用于服务端与客户端的 json 数据通信
一、主要应用场景:
1:业务层需要返回多个返回值,例如要返回业务状态以及数据
2:renderJson(ret) 响应 json 数据给客户端
二、实例
1:服务端
Ret ret = service.justDoIt(paras);
renderJson(ret);
2:javascript 客户端 ajax 回调函数通常这么用:
success: function(ret) {
if(ret.state == "ok") {
...
}
if (ret.state == "fail") {
...
}
}
3:普通应用程序通常这么用:
String json = HttpKit.readData(getRequest());
Ret ret = FastJson.getJson().parse(json, Ret.class);
if (ret.isOk()) {
...
}
if (ret.isFail()) {
...
}
三、定制 Ret
1:将状态字段名由 "state" 改为 "success",将状态值 "ok" 改为 true、"fail" 改为 false
CPI.setRetState("success", true, false);
2:将状态字段名由 "state" 改为 "code",将状态值 "ok" 改为 200、"fail" 改为 500
CPI.setRetState("code", 200, 500);
3:将消息字段名由 "msg" 改为 "message"
CPI.setRetMsg("message")
|
Copyright © 2022. All rights reserved.