如何将参数传递给 JSP 组件?
Posted
技术标签:
【中文标题】如何将参数传递给 JSP 组件?【英文标题】:How to pass parameters to JSP component? 【发布时间】:2021-12-10 14:49:40 【问题描述】:我正在使用 Spring 和 JSP。如何将参数传递给
<tiles:insertAttribute name="body" />
这就像在 ReactJS 中将 prop 传递给组件,但我在任何文档中都找不到它。有可能吗?
【问题讨论】:
您从查询字符串中获取哪些参数、.xml 切片定义 jsp tiles.apache.org/framework/tutorial/basic/pages.html 或 request.getParameter() 并检查是否 == null ? 【参考方案1】:http://tiles.apache.org/framework/tiles-jsp/tlddoc/tiles/tld-summary.html
有关文档,请参阅此链接。 在 Tiles 中,可以确定每个属性都有一个“类型”,可以在定义或“计算”时显式设置。如果类型不是显式的,那么如果属性值是一个有效的定义,它将被插入。否则,如果它以“/”字符开头,它将被视为“模板”。最后,如果它没有被分配一个类型,它将被视为一个字符串并被包含在没有任何特殊处理的情况下。
Put Atttribute -> 你声明什么内容将与指定的属性名相关联:
<definition name="admin-template-metronic" extends="metronic-template" template="/WEB-INF/templates/metronic/tiles/admin.jsp">
<put-attribute name="html-title" value="Administrative Console"/>
<put-attribute name="banner-content" value="/WEB-INF/templates/metronic/pages/common/banner.jsp"/>
<put-attribute name="footer-content" value="/WEB-INF/templates/metronic/pages/common/footer.jsp"/>
<put-attribute name="menu-content" value="/WEB-INF/templates/metronic/pages/admin/main-menu.jsp"/>
插入属性:它将使用使用 put-attribute 定义的属性。在您的页面上,banner-content 将替换为文件“banner.jsp”的内容
<tiles:insertAttribute name="banner-content"/>
现在根据您的要求检查哪一个最适合您。
【讨论】:
以上是关于如何将参数传递给 JSP 组件?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用底部导航视图和 Android 导航组件将参数传递给片段?
如何通过 c:set 将参数传递给 jsp:include? JSP中变量的作用域是啥?