jsp中如何进行子字符串化?

发布于 2024-07-04 21:21:54 字数 101 浏览 9 评论 0原文

有没有办法使用 struts2 技术在 JSP 文件中进行子字符串化? 我的意思是,struts2有自己的taglib并且也使用ognl。 如何从堆叠值或 bean 值中获取子字符串?

Is there a way to substring in JSP files, using struts2 technologies? I mean, struts2 has its own taglib and also uses ognl. How can I get a substring from a stacked value or bean value?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

趁年轻赶紧闹 2024-07-11 21:21:54

在某些情况下要注意函数库,尤其是使用Websphere部署时! 我工作的公司部署到 Websphere 6.0 版本 11,它不能正确支持函数库(当放置在标记主体内时它不能正常运行)。 我记得他们在版本 13 中修复了这个问题。不过,您始终可以创建自己的 JSP 标签来执行任何操作,这样您就可以这样做来解决该问题。

Watch out for the functions library in certain situations, especially when using Websphere to deploy! The company I work for deploys to Websphere 6.0 version 11, which does not support the functions library properly (it does not function properly when placed inside a tag body). I remember somewhere that they fixed it in version 13. You can always create your own JSP Tag to do anything, though, so you can do that to get around the problem.

も星光 2024-07-11 21:21:54
fn:substring(YOUR_FIELD, START_INDEX, END_INDEX)

例如,如果您想获取字符串的前 3 个字符,您可以这样做:

${fn:substring('scrooge', -1, 3)}

这是您可以使用的 XML 命名空间,它应该与 <% include%> 的地址相同。 陈述

xmlns:fn="http://java.sun.com/jsp/jstl/functions"
fn:substring(YOUR_FIELD, START_INDEX, END_INDEX)

for example if you wanted to get the first 3 characters of a string, you could do this:

${fn:substring('scrooge', -1, 3)}

here is the XML namespace you can use, it should be the same address for a <% include%> statement

xmlns:fn="http://java.sun.com/jsp/jstl/functions"
哥,最终变帅啦 2024-07-11 21:21:54

Struts2 使用 OGNL。 这意味着您可以直接在 S2 标记中调用对象方法。

就像这样:

<s:property value="str.substring(0, 5)"/>

Struts2 uses OGNL. That means you can call object methods directly in S2 tags.

Like so:

<s:property value="str.substring(0, 5)"/>
冷︶言冷语的世界 2024-07-11 21:21:54

http://java.sun.com/products/ jsp/jstl/1.1/docs/tlddocs/index.html

查找 fn:substring 及其变体。

我使用过 Struts 1,但没有使用过 2。

http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/index.html

Look for fn:substring and its variants.

I've used Struts 1, but not 2.

爱你是孤单的心事 2024-07-11 21:21:54

不。

如果您需要解析 JSP 中的数据(子字符串),那么您可能会将业务逻辑(它的工作方式)与表示逻辑(它的显示方式)混合在一起——它们应该是分开的。 如果您在 JSP 中执行大量条件、计算、解析等操作,那么您就会给自己带来很多(未来的)痛苦。

相反,将这些关注点分开——使 JSP 非常简单,除了按原样显示数据或根本不显示数据之外没有任何逻辑,并在需要时加上简单的循环。 将所有重要的逻辑放入一个 Java 类中,该类将数据推送到 JSP 中,您将在其中获得 Java 的全部功能。 尽可能使 JSP 仅是基于 Java 的应用程序的一层薄“皮”。

有关详细讨论,请参阅 Terence Parr 的白皮书,网址为 http:// www.cs.usfca.edu/~parrt/papers/mvc.templates.pdf。 为自己省去很多心痛和维护费用。

Don't.

If you need to parse data (substring) in your JSP, then you are probably mixing business logic (how it works) with your presentation logic (how it is displayed)--they should be separate. If you are doing lots of conditionals, calculations, parsing, etc. in your JSPs, then you are creating a lot of (future) pain for yourself.

Instead, separate those concerns--make the JSP dead simple, with no logic other than displaying data as is or not at all, plus simple loops where needed. Put all the nontrivial logic into a Java class that pushes the data into the JSP, where you will have the full power of Java available. As much as you can, make the JSPs merely a thin "skin" over your Java-based application.

For a detailed discussion, see Terence Parr's white paper at http://www.cs.usfca.edu/~parrt/papers/mvc.templates.pdf. Save yourself a lot of heartache and maintenance.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文