我已经使用Spring MVC创建了一个webapp。我在我的serlvet调度设立国际通过拦截这样的:通过webapp的全局变量(Spring)
<bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="lang" />
</bean>
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
<property name="defaultLocale" value="es" />
</bean>
然后我可以访问当前区域在我的控制器是这样的:
LocaleContextHolder.getLocale()
这是真棒,因为我可以再任何时候改变我的语言环境,并访问任何地方的当前配置。现在
我想这样做与以类似的方式表现了一些自定义变量一样,在这个意义上,他们稍微影响了我所有的应用程序的行为。 (例如,“可访问”参数指示应该仅提供可访问内容的应用程序)。
我明白我可以创建自己的拦截器拦截名为“入店”像这样的任何PARAM:
<bean id="localeChangeInterceptor" class="com.myapp.MyInterceptor">
<property name="paramName" value="accesible" />
</bean>
但是有没有我可以像LocaleContextHolder的物体确实在我的应用程序访问该值的方法语言环境?我可以让Spring通过cookie likeso注入吗?
存储在Application范围中的属性是应用程序的全局变量。这是JEE应用程序范围,但Spring提供了一种获取它的方法。 – DwB
你可以扩大一点你的答案吗? –