package com.jflyfox.api.controller; import com.jfinal.aop.Before; import com.jfinal.kit.JsonKit; import com.jflyfox.api.form.ApiForm; import com.jflyfox.api.form.ApiResp; import com.jflyfox.api.interceptor.ApiInterceptor; import com.jflyfox.api.service.ApiService; import com.jflyfox.api.util.ApiUtils; import com.jflyfox.component.base.BaseProjectController; import com.jflyfox.jfinal.component.annotation.ControllerBind; import com.jflyfox.util.StrUtils; @ControllerBind(controllerKey = "/api") @Before(ApiInterceptor.class) public class ApiController extends BaseProjectController { ApiService service = new ApiService(); /** * api测试入口 *

* 2016年10月3日 下午5:47:55 flyfox 369191470@qq.com */ public void index() { ApiForm from = getForm(); renderJson(new ApiResp(from).setData("api is ok!")); } /** * 开关调试日志 *

* 2016年10月3日 下午5:47:46 flyfox 369191470@qq.com */ public void debug() { ApiForm from = getForm(); ApiUtils.DEBUG = !ApiUtils.DEBUG; renderJson(new ApiResp(from).setData(ApiUtils.DEBUG)); } /** * 获取信息入口 *

* 2016年10月3日 下午1:38:27 flyfox 369191470@qq.com */ public void action() { long start = System.currentTimeMillis(); ApiForm from = getForm(); if (StrUtils.isEmpty(from.getMethod())) { String method = getPara(); from.setMethod(method); } // 调用接口方法 ApiResp resp = service.action(from); // 没有数据输出空 resp = resp == null ? new ApiResp(from) : resp; // 调试日志 if (ApiUtils.DEBUG) { log.info("API DEBUG ACTION \n[from=" + from + "]" // + "\n[resp=" + JsonKit.toJson(resp) + "]" // + "\n[time=" + (System.currentTimeMillis() - start) + "ms]"); } renderJson(resp); } public ApiForm getForm() { ApiForm form = getBean(ApiForm.class, null); return form; } }