从速度视图页面内部调用类方法(静态)

发布于 2024-08-23 00:57:06 字数 180 浏览 6 评论 0原文

您可以从视图页面内部调用类方法吗?

特别是那些没有传递到视图中的?

在 asp.net MVC 中我可以这样做:

<%= SomeClass.FixDateFormat(ViewData.Model.SomeClass.DateCreated) %>

Can you call class methods from inside a view page?

Specifically ones that are not passed into the view?

In asp.net MVC I can do this:

<%= SomeClass.FixDateFormat(ViewData.Model.SomeClass.DateCreated) %>

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

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

发布评论

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

评论(2

掀纱窥君容 2024-08-30 00:57:06

由于这个出现在我关于这个主题的谷歌搜索的顶部,似乎人们可能希望在他们的搜索顶部看到这个时看到更新的答案......

(在这里找到这个:http://velocity.10973.n7.nabble.com/Use-of-static- function-td15126.html

在 Velocity 1.5 或更早版本中,您可以只使用:

#set( $String = '' )
#set( $foo = $String.format('%.1f', $dataFedIn) )

因为您始终可以在实例上调用静态方法。 :)

但是,因为有一些静态类你不能
创建实例(例如java.util.Math),我们在1.6中添加了对
无实例的静态类方法:

Java:

context.put("String", String.class);

Velocity:

#set( $foo = $String.format('%.1f', $dataFedIn) ) 

Since this came up in the top of my google search on this topic it seems like folks might like to see an updated answer when they get this on the top of their search...

(found this here: http://velocity.10973.n7.nabble.com/Use-of-static-functions-td15126.html)

in Velocity 1.5 or earlier, you can just use:

#set( $String = '' )
#set( $foo = $String.format('%.1f', $dataFedIn) )

because you can always call static methods on instances. :)

however, since there are some static classes of which you cannot
create instances (e.g. java.util.Math), we added support in 1.6 for
static class methods sans instances:

Java:

context.put("String", String.class);

Velocity:

#set( $foo = $String.format('%.1f', $dataFedIn) ) 
萝莉病 2024-08-30 00:57:06

这是调用任何类的任何静态方法的通用方法,无需预先进行上下文操作:

#‌​set($str='test')##
#set($Base64=$str.class.forName('java‌​.util.Base64'))##
​$Base64.getEncoder()‌​.encodeToString($str‌​.getBytes('utf8'))

Here is a universal way to call any static method of any class without need for preliminarily context manipulation:

#‌​set($str='test')##
#set($Base64=$str.class.forName('java‌​.util.Base64'))##
​$Base64.getEncoder()‌​.encodeToString($str‌​.getBytes('utf8'))
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文