play 的各种render

最普通的

render()

render(args...)

这是基于CoC的自己去找名字相对应的view去渲染

renderTemplate(“controler/view.html”,args...)

不同点在于它是指定了要渲染的页面


renderBinary(File f)

renderBinary(InputStream in)

返回一个二进制流,比如文件下载,或者一个验证码的image


renderJSON(Object o)

renderJSON(String s)

在ajax应用中返回JSON格式的数据


renderXml

renderText

renderHtml

顾名思义,其它的render


redirect("http://www.zenexity.fr");

这个是重定向到一个地址,绝对地址


renderArgs.put("name", "sunjian2"); 

这个你懂的

不过需要注意的是

在action1里面写了 renderArgs.put("name", "sunjian2"); 然后最后调用action2,再在action2里面渲染,之前放的参数是不会被页面${name}探知的渲染的。

例子


public static void check(){

    renderArgs.put("name", "sunjian1");

    index();

 }

public static void index() {


        render();

}

这时候页面是得不到name的



注意: 一旦在action里面调用了render()方法之后,其后的所有 方法都不会执行。render 会直接 return break 。

你可能感兴趣的:(play)