1

FreeMarker テンプレートから静的プロパティにアクセスしたい

Static Final Fields を含む Global というクラスがあり、このクラスは FreeMarker モデルの一部ではありません。アプリの起動時にこのクラスを FreeMarker モデルに追加し、次のように Freemarker テンプレートからアクセスする方法があるかどうかを知りたいです。

${statics["com.ums.common.Global"].Change}
4

2 に答える 2

0

試す

dataModel.put("statics", ((BeansWrapper) cfg.getObjectWrapper()).getStaticModels());  

cfgFreeMarkerConfigurationオブジェクトです。次にstatics['com.example.ClassName'].FIELD_NAME、静的フィールドまたはメソッドにアクセスするために使用できます。次のようなものも使用できます

dataModel.put("globals", ((BeansWrapper) cfg.getObjectWrapper()).getStaticModels().get("com.ums.common.Global"));    

そのクラスの定数のみを公開したい場合。

于 2012-05-15T14:31:40.457 に答える