当前位置: 首页 > 知识库问答 >
问题:

如何通过FreeMarker中的属性文件加载标签

钱雅逸
2023-03-14

我正在使用Spring MVC FreeMarker集成。由于我是FreeMarker的新手,我无法从属性文件中找到配置FreeMarker标签的方法。

请帮我解决这个问题。

谢谢。

共有1个答案

洪飞鸿
2023-03-14

您可以为此使用“ResourceBundleMessageSource”消息源。

<bean id="messageSource"   
           class="org.springframework.context.support.ResourceBundleMessageSource"
      <property name="basename" value="classpath:messages/messages" />
      <property name="defaultEncoding" value="UTF-8"/>
/>

定义区域设置解析器,

<bean id="localeResolver"
        class="org.springframework.web.servlet.i18n.SessionLocaleResolver">
        <property name="defaultLocale" value="en" />
    </bean>

定义localeChangeInterceptor,它从用户会话中检测语言参数并调用locale resolve。并在处理程序映射中注册拦截器。

<bean id="localeChangeInterceptor"
        class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
        <property name="paramName" value="lang" />
</bean>
class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" >
        <property name="interceptors">
           <list>
            <ref bean="localeChangeInterceptor" />
           </list>
        </property>
    </bean>

属性文件的定义如下:,

  • 留言。房产

在messages文件夹路径中。

如果语言属性文件经常更改,则可以使用“ReloadableResourceBundleMessageSource”。这意味着您不必在每次语言文件更改时重新启动应用程序。

您需要导入spring宏,

<#import "/spring.ftl" as spring/>

消息可以在内部访问。ftl如下。

<@spring.message "customMessageKey"/> 
 类似资料:
  • 如何加载放置在可执行jar文件的资源文件夹中的属性文件。在这里,我的应用程序本身就是一个jar,它自己执行。它需要在运行时根据代码中提到的路径找到这个属性文件(放在资源文件夹下)。我用过以下两种方法,但都没用。这里的重点是,当我在eclipse中执行时,这两个选项都可以正常工作,但当我将其打包到可执行jar中时,这两个选项都不起作用。它抛出NullPointerException。我在这里看到的唯

  • 我在尝试添加

  • 我有一个属性文件,例如*。 我想在freemarker模板中使用这个键值。比如说

  • 我在Apache servicemix中安装了一个捆绑包,它使用Apache蓝图进行配置。我正在使用位于/config文件夹中的外部属性文件abc.cfg并按如下方式加载: 通过蓝图 通过java DSL 一切工作正常,但现在我需要将属性文件移动到自定义位置,以便将不同包中的属性文件隔离开来。所以我将abc.cfg移到了/config/myFolder/中,但是我无法用这两种方式为我的包指定新的位

  • 问题内容: 因此,我正在尝试向项目添加一些功能,以允许在部署工件中使用用户定义的属性-一个简单的key:value .properties文件。我将service.properties文件放在 在ServiceImpl.java构造函数中,我具有以下内容: 属性URL的所有实例均为空。我知道我确实缺少某些明显的东西,但是我需要第二双眼睛。问候。 编辑: 嗯,似乎我很困惑,因为默认的GAE项目在/

  • 我有两个项目,CarpoolDB和拼车。 CarpoolDB:包含后端的东西 拼车应用程序上下文。xml server.properties 我做了一罐carpoolDB和地方拼车应用程序 拼车:包含UI东西和后端联系人carpoolDB jar,并具有 carpool-application-context1.xml spring-servlet.xml 拼车。性质 现在,我有一个类com.on