加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – JSP,它可以像Ruby / Rails / Erb中的yield,layout,conte

发布时间:2020-12-14 17:44:02 所属栏目:Java 来源:网络整理
导读:我试图找出如何最有效地重用JSP代码. 我喜欢Rails / erb以这种方式工作的方式… with yield,layout,content_for 例: main_layout.erb.html html head%= yield :head %/head body%= yield %/body/html 使用 % content_for :head do %titleA simple page/titl
我试图找出如何最有效地重用JSP代码.
我喜欢Rails / erb以这种方式工作的方式… with yield,layout,content_for

例:

main_layout.erb.html

<html>
  <head><%= yield :head %></head>
  <body><%= yield %></body>
</html>

使用

<% content_for :head do %>
<title>A simple page</title>
<% end %>

<p>Hello,Rails!</p>

在控制器中

layout "main_layout"

与JSP最接近的是什么(不使用额外的框架)?我知道JSP包含,但是这并不完全相同.
有什么建议么?

谢谢

解决方法

我不熟悉什么yield和content_for提供,但 JSP tag files允许您比JSP包含更强大的模板页面的方法.

例:

layout.tag

<%@ tag body-content="scriptless" %>
<%@ attribute name="pageTitle" required="true" type="java.lang.String" %>

<html>
<head>
    <title>${pageTitle}</title>
</head>
<body>
    <jsp:doBody/>
</body>
</html>

个人JSP

<%@ taglib prefix="z" tagdir="/WEB-INF/tags" %>
<z:layout pageTitle="A simple page">
    <p>Hello,JSP!</p>
</z:layout>

只需将你的layout.tag放在/ WEB-INF / tags目录中.你可以使用你想要的任何可用的前缀,我刚刚使用“z”作为例子.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读