因此,我读到了一些关于JSF的内容,并且开始考虑如何创建web应用程序,其中website描述XHTML文档。这些文档连接到特殊的java程序"beans",该程序可以在服务器端提供增强的功能,例如数据库或复杂的计算。
如果从链接到命令按钮组件的XHTML文档调用bean中的方法(这通常发生在用户单击按钮时)并返回字符串X,则意味着将调用并打开下一个站点(X.xhtml)。
通过这种方式,web应用程序可以在不同的站点之间切换。现在我一直在想,这是否合适?这种转换方式的优点和缺点是什么?
发布于 2013-06-05 19:07:11
首先,XHTML并不总是JSF,您更愿意谈论facelets (这可能有助于您更好地进行研究和学习btw)。否则,典型的场景是调用h:commandLink或h:commandButton的action属性,由您决定是否使用您认为合适的bean方法的字符串结果填充该属性。
示例:
<h:commandButton value="submit" type="submit" action="#{yourBean.redirectMethod}" />redirectMethod应该返回一个包含到某个页面的重定向的String类型:
public String redirectMethod() {
return "somePage.xhtml?faces-redirect=true";
}现在我一直在思考这是不是合适?
根据我的经验,是的。
以及这种转换方式的优点和缺点是什么?
这个链接似乎包含一些答案的元素:forward vs redirection in JSF。结论涉及利弊,似乎是:“与页面重定向相比,默认页面转发机制更快,因为页面重定向向服务器添加了额外的HTTP请求。”
为了实现一个简单的forward,您只需返回到redirectMethod并去掉?faces-redirect=true代码,这样就可以得到如下内容:
public String redirectMethod() {
return "somePage.xhtml";
}祝你好运!
P.S:从这个开始,真的很有用:https://stackoverflow.com/tags/jsf/info
https://stackoverflow.com/questions/16938012
复制相似问题