{"id":422,"date":"2009-03-01T13:58:54","date_gmt":"2009-03-01T11:58:54","guid":{"rendered":"https:\/\/bob-team.de\/wordpress\/?p=422"},"modified":"2011-03-19T12:28:53","modified_gmt":"2011-03-19T10:28:53","slug":"zahlen-mit-velocity-formatieren","status":"publish","type":"post","link":"https:\/\/bob-team.de\/wordpress\/2009\/03\/01\/zahlen-mit-velocity-formatieren\/","title":{"rendered":"Zahlen mit Velocity formatieren"},"content":{"rendered":"<p>Das folgende Groovy-Skript zeigt, wie man innerhalb eines Velocity-Templates Zahlen formatiert. Zum Einsatz kommt <tt>NumberTool<\/tt>. Die Klasse ist Bestandteil <a href=\"http:\/\/velocity.apache.org\/tools\/devel\/\">der Velocity-Tools<\/a>, welche in einem eigenen Projekt gepflegt werden und ersetzt die fr\u00fchere <tt>VelocityFormatter<\/tt>.<\/p>\n<p><!--more--><\/p>\n<p>[code lang=&#8220;groovy&#8220;]package bob.pokolm.skate<\/p>\n<p>import org.apache.velocity.app.Velocity<br \/>\nimport org.apache.velocity.VelocityContext<br \/>\nimport org.apache.velocity.tools.generic.NumberTool<br \/>\nimport org.apache.velocity.runtime.RuntimeConstants<\/p>\n<p>import groovy.sql.Sql<\/p>\n<p>Velocity.setProperty(RuntimeConstants.RUNTIME_LOG,<br \/>\n        System.getProperty(&#8222;java.io.tmpdir&#8220;))<br \/>\nVelocity.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS,<br \/>\n        &#8222;org.apache.velocity.runtime.log.NullLogSystem&#8220;)<\/p>\n<p>def map = new HashMap()<\/p>\n<p>def select = &#8222;select value from table&#8220;<\/p>\n<p>def sql = Sql.newInstance(<br \/>\n        &#8222;jdbc:oracle:thin:@1.2.3.4:1521:db&#8220;,<br \/>\n        &#8222;username&#8220;, &#8222;password&#8220;,<br \/>\n        &#8222;oracle.jdbc.driver.OracleDriver&#8220;)<\/p>\n<p>sql.eachRow(select) {<br \/>\n    map.put(&#8222;nnn&#8220;, it.value)<br \/>\n}<\/p>\n<p>Velocity.init()<\/p>\n<p>def context = new VelocityContext()<\/p>\n<p>context.put(&#8222;number&#8220;, new NumberTool())<br \/>\ncontext.put(&#8222;werte&#8220;, map)<br \/>\ncontext.put(&#8222;locale&#8220;, Locale.GERMANY); \/\/ &#8230;oder Locale.UK<\/p>\n<p>def template = &#8222;&#8220;&#8220;\\<br \/>\n\\$werte.nnn &#8211;> \\<br \/>\n0.000: \\$number.format(\\&#8220;0.000\\&#8220;, \\$werte.nnn, \\$locale) | \\<br \/>\ncurrency: \\$number.format(\\&#8220;currency\\&#8220;, \\$werte.nnn, \\$locale) | \\<br \/>\npercent: \\$number.format(\\&#8220;percent\\&#8220;, \\$werte.nnn, \\$locale)\\<br \/>\n&#8222;&#8220;&#8220;<\/p>\n<p>def writer = new StringWriter()<br \/>\nVelocity.evaluate(context, writer, &#8222;formeltext&#8220;, template)<\/p>\n<p>println writer.toString()[\/code]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das folgende Groovy-Skript zeigt, wie man innerhalb eines Velocity-Templates Zahlen formatiert. Zum Einsatz kommt NumberTool. Die Klasse ist Bestandteil der Velocity-Tools, welche in einem eigenen Projekt gepflegt werden und ersetzt die fr\u00fchere VelocityFormatter.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[51,50],"class_list":["post-422","post","type-post","status-publish","format-standard","hentry","category-java","tag-groovy","tag-velocity","entry"],"_links":{"self":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts\/422","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/comments?post=422"}],"version-history":[{"count":5,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts\/422\/revisions"}],"predecessor-version":[{"id":595,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts\/422\/revisions\/595"}],"wp:attachment":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/media?parent=422"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/categories?post=422"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/tags?post=422"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}