Play framework自定义扩展JavaExtensions

xiaoxiao2021-02-28  77

不同的项目往往需要特定的格式化需求,在这种情况下可以提供自己的扩展。Play对自定义扩展做了很好的封装,只需要创建继承于play.templates.JavaExtensions的Java类即可。下面将以自定义货币格式扩展为例进行讲解:

package ext;   import play.templates.JavaExtensions;   public class CurrencyExtensions extends JavaExtensions {     public static String ccyAmount(Number number, String currencySymbol) {      String format = "'"+currencySymbol + "'#####.##";      return new DecimalFormat(format).format(number);   }   }

   在项目中创建ext包,用于存放该项目中的自定义扩展。在该目录下定义CurrencyExtensions类,并继承于JavaExtensions。读者在具体操作时需要注意,每个自定义的扩展方法均需要声明为static类型,并且返回类型为java.lang.String。定义的ccyAmount扩展方法中的第一个参数number是需要被格式化的对象,第二个参数currencySymbol是货币的符号,该扩展的具体使用方法如下:

<em>Price: ${123456.324234.ccyAmount("€")}</em>

 Play会在启动时自动检测这些模板扩展类,所以定义新扩展后只需重启应用就可以生效。

转载请注明原文地址: https://www.6miu.com/read-30735.html

最新回复(0)