Shiro快速入门 —— 9.freemaker使用shiro标签
2019独角兽企业重金招聘Python工程师标准>>>
本系列博文目录:https://my.oschina.net/u/3452433/blog/907396
shiro-freemarker-tags项目jar包下载
freemaker默认情况下是不能使用shiro标签进行权限控制的。
还好已经由大神James Gregory将此问题解决,并将源码发布到了GitHub上面了。
GitHub上项目地址:https://github.com/jagregory/shiro-freemarker-tags
GitHub上的jar包下载报404,可以自己下载源码打包或者使用我提供的源码和jar包(用我的吧~~)
我的项目地址:http://git.oschina.net/imlichao/shiro-freemarker-tags
我的项目jar包地址:http://git.oschina.net/imlichao/shiro-freemarker-tags/raw/master/dist/shiro-freemarker-tags-0.1-SNAPSHOT.jar
jar包导入项目
如果项目没有使用maven则可以直接添加到项目中
如果使用了maven可以发布到私服或者直接放到本地仓库中进行引用
<dependency><groupId>com.jagregory.shiro</groupId><artifactId>freemarker</artifactId><version>0.1-SNAPSHOT</version></dependency>
在freemaker中自定义shiro标签
这个项目实质上就是实现了一套freemaker的自定义标签,所我们需要自定义shiro标签。
在freemaker配置文件中自定义标签(例子为spring boot配置文件截取的)
/*** FreeMarker配置文件*/ @Configuration public class FreemarkerConfig {@Beanpublic FreeMarkerConfigurer freeMarkerConfigurer(FreeMarkerProperties freeMarkerProperties) {FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();configurer.setTemplateLoaderPaths(freeMarkerProperties.getTemplateLoaderPath()); //模板加载路径默认 "classpath:/templates/"configurer.setDefaultEncoding("utf-8");//设置页面默认编码(不设置页面中文乱码)Map<String,Object> variables=new HashMap<String,Object>();variables.put("shiro", new ShiroTags());configurer.setFreemarkerVariables(variables);//添加shiro自定义标签return configurer;}}
在页面使用shiro标签
以上配置完成后,我们就可以在ftl页面使用<@shiro>标签了
给几个例子
<!-- 游客内容 --> <@shiro.guest>Hello guest!</@shiro.guest><!-- 验证权限 --> <@shiro.hasPermission name = "admin_customer_manage">会员详情 </@shiro.hasPermission>
转载于:https://my.oschina.net/u/3452433/blog/901945
总结
以上是生活随笔为你收集整理的Shiro快速入门 —— 9.freemaker使用shiro标签的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 微服务,微架构[五]之springboo
- 下一篇: centos6.5环境wget报错Una