Spring+freeMarker(国际化)

在config.xml中增加

Spring+freeMarker(国际化)<bean id="messageSource"
Spring+freeMarker(国际化)class="org.springframework.context.support.ResourceBundleMessageSource">
Spring+freeMarker(国际化)<property name="basenames">
Spring+freeMarker(国际化)<list>
Spring+freeMarker(国际化)<value>messages</value>
Spring+freeMarker(国际化)</list>
Spring+freeMarker(国际化)</property>
Spring+freeMarker(国际化)</bean>

其中粗体部分是Spring的标准, 不可更改的

然后在src目录下创建messages.properties, messages_zh_CN.properties, 它们会在编译的时候被copy到WEB-INF/classes去的, messages_zh_CN.properties的内容是要经过native2ascii的编码转换才行的.

Spring+freeMarker(国际化)title=SpringTest
Spring+freeMarker(国际化)heading=Spring :: Test
Spring+freeMarker(国际化)greeting=Hello, It is now

把spring包里面的spring.ftl复制到ftl文件目录的includes里面, 这样就能在ftl文件中使用宏来获得需要的message了:

Spring+freeMarker(国际化)<#import"/includes/spring.ftl" as spring/>
Spring+freeMarker(国际化)<html>
Spring+freeMarker(国际化)<head><title><@spring.message "title"/></title></head>
Spring+freeMarker(国际化)<body>
Spring+freeMarker(国际化)<h1><@spring.message "heading"/></h1>
Spring+freeMarker(国际化)Spring+freeMarker(国际化)<p><@spring.message "greeting"/>$Spring+freeMarker(国际化){now?if_exists}</p>
Spring+freeMarker(国际化)</body>
Spring+freeMarker(国际化)</html>

相关推荐