2017-09-08 09:12

public class JKhaledErrorRender extends ErrorRender {

private static String JSON_400 = "{\"code\":400,\"msg\":\"参数错误\"}";
private static String JSON_401 = "{\"code\":401,\"msg\":\"权限不足\"}";
private static String JSON_404 = "{\"code\":404,\"msg\":\"找不到对应请求\"}";
private static String JSON_405 = "{\"code\":405,\"msg\":\"请求的方法不对\"}";
private static String JSON_500 = "{\"code\":500,\"msg\":\"服务器错误\"}";

private JsonRender jsonRender; // 错误使用json传输出去

/**
* 构造器
*
* @param errorCode
* @param view
*/
public JKhaledErrorRender(int errorCode, String view) {
super(errorCode, view);
}

/**
* 重写页面输出方式
*/
@Override
public void render() {
response.setStatus(getErrorCode()); // HttpServletResponse.SC_XXX_XXX

switch (getErrorCode()) {
case 400: {
jsonRender = new JsonRender(JSON_400);
break;
}
case 404: {
jsonRender = new JsonRender(JSON_404);
break;
}
case 401: {
jsonRender = new JsonRender(JSON_401);
break;
}
case 500: {
jsonRender = new JsonRender(JSON_500);
break;
}
case 405: {
jsonRender = new JsonRender(JSON_405);
break;
}
default: {
super.render();
return;
}
}
jsonRender.setContext(request, response); //传递给jsonRender 不然没法输出
jsonRender.render();
}

}
这样就好了

2017-09-08 09:10

没必要全部重写ErrorRender,我在继承ErrorRender,在ErrorRender创建一个JsonRender的对象,然后用JsonRender去返回,这样不用自己从Http请求头全部重写,只用构造返回值体就可以

2017-09-07 18:28

@张现伟 老铁,可以的。maven下的没仔细找,项目很棒,收藏了

2017-09-07 17:53

@穿越123 你在发布代码的时候选择波总的富文本编辑器的语言为Java就行了

2017-09-07 11:39

@穿越123 啥?分享代码就是上传到GitOSChina上啊。我的插件里面提供了一个简单使用示例

2017-09-07 11:38

@要输就输给追求 token加密采用的jwtToken协议中的公共非对称加密你可以自己设置秘钥,有设置秘钥的构造方法,数据库的加密是你自己的策略你提供一个查询的方法,在接口里面就行。跨域需要自己配置Jfinal的Handler很简单,我到时候在上传一个跨域的范本

2017-09-06 15:56

@guanxb 这个需求是会有的,可以再增加一个注解。有时间就写出来

2017-09-06 14:33

@要输就输给追求 下下代码看看,有例子公司项目已经实战了,目前没问题

2017-09-06 14:32

@JFinal 有的在git上插件中有example包就是例子

2017-09-06 10:57

@穿越123 菜的抠脚。。试试看,欢迎反馈bug