jfinal 做接口的时候,立即返回响应怎么做。

javaer 发布于 2013/11/27 10:22
阅读 1K+
收藏 1

@JFinal 你好,想跟你请教个问题:jfinal做接口的时候,立即返回响应该怎么做。看到帮助文档上注明用“return 语句”...不明所以。

加载中
0
JFinal
JFinal

    不知道你所说的立即返回响应是指什么?是指在 render 方法调用后立即返回? render方法调用以后并不会立即响应(renderError除外),而是会将 action、interceptor中应该执行的代码执行完毕后才会返回响应。

0
javaer
javaer
额。。说的立即返回响应就是指render调用后立即返回..
0
小石头哥
小石头哥

引用来自“JFinal”的答案

    不知道你所说的立即返回响应是指什么?是指在 render 方法调用后立即返回? render方法调用以后并不会立即响应(renderError除外),而是会将 action、interceptor中应该执行的代码执行完毕后才会返回响应。

@jfinal 在action中使用render并不能阻止 继续执行之后的代码呢 。比如 if(true){render("xxx")} 本来我想满足这个条件之后 就后面不执行了。但是不能够阻止他继续往下执行。
0
k
kakaximu
 可以在render("xxx");下面加 return ;
黄开源中国
黄开源中国
回复 @javaer : 你要的不是立刻返回吗?如果要后面代码继续执行就不用return啊。。return是用来终止下面的代码执行。。类似循环里面的break。。
javaer
javaer
下面加了return,但是后续代码就不能执行
0
cokolin
cokolin
怎么感觉你的问题有点傻?if后面就加else嘛
cokolin
cokolin
回复 @javaer : 贴代码吧,问的不明白
javaer
javaer
先搞清楚场景再评论。。
0
javaer
javaer
看来想到的策略就是。。异步执行了。。
我的意思是做接口,别人给我传过去数据,我立即给人家做响应我收到数据了,然后我另起线程处理数据。
0
cwledit
cwledit
你这个就是说要异步执行嘛,大家就都懂了.
0
cwledit
cwledit
return掉, 把你的代码写在finally块中, 嘻嘻
Shazi199
Shazi199
回复 @cwledit : 太认真了~
cwledit
cwledit
@Shazi199 just a joke... 他的需求其实就是不需要返回的事件通知
Shazi199
Shazi199
这不是异步的,finally块的程序会在return前执行,之后才会return,只不过return的结果在执行到return的时候会把结果放在结果栈里,可以在finally中再次使用return语句更改结果栈中的内容
0
JFinal
JFinal

引用来自“javaer”的答案

额。。说的立即返回响应就是指render调用后立即返回..

下面的代码能否满足需求:

public void action() {
  if (getParaToInt() == 123) {
    renderText("Welcome to the JFinal World");
    return ;
  }
  // 其它代码在此
}



返回顶部
顶部