在Spring+FreeMarker框架中使用Shiro的Tag标签

 

目前Freemarker对Shrio的标签还不支持,不过已经有人贡献出来第三方面解决方案,如下:

1、下载shiro-freemarker-tags

GitHub地址:https://github.com/jagregory/shiro-freemarker-tags
可以先看一下他的说明文档,有一个初步的了解。

2、Spring MVC配置

自定义一个ShiroTagFreeMarkerConfigurer继承Spring本身提供的FreeMarkerConfigurer,目的是在FreeMarker的Configuration中添加shiro的配置

?
1
2
3
4
5
6
7
8
9
public  class  ShiroTagFreeMarkerConfigurer  extends  FreeMarkerConfigurer {
  
     @Override
     public  void  afterPropertiesSet()  throws  IOException, TemplateException {
         super .afterPropertiesSet();
         this .getConfiguration().setSharedVariable( "shiro" new  ShiroTags());
     }
      
}

 

 

下面的Spring mvc配置

?
1
2
3
4
5
6
7
8
9
10
<bean id= "freemakerCongfig"
     class = "com.xxx.web.freemarker.ShiroTagFreeMarkerConfigurer" >
     <property name= "templateLoaderPath"  value= "/WEB-INF/views/"  />
     <property name= "freemarkerSettings" >
         <props>
             <prop key= "defaultEncoding" >UTF- 8 </prop>
             <prop key= "classic_compatible" > true </prop>
         </props>
     </property>
</bean>


3、使用Shiro Tag

?
1
< @shiro .guest>Hello guest!</ @shiro .guest>

 

你可能感兴趣的:(freemarker)