`

在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的配置

 

public class ShiroTagFreeMarkerConfigurer extends FreeMarkerConfigurer {
 
    @Override
    public void afterPropertiesSet() throws IOException, TemplateException {
        super.afterPropertiesSet();
        this.getConfiguration().setSharedVariable("shiro", new ShiroTags());
    }
     
}

 下面的Spring mvc配置

 

 

<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

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

 

<@shiro.hasPermission name="auth:role:add">hello world</@shiro.hasPermission>

   
分享到:
评论

相关推荐

    微信小程序-小程序商店

    文章标签tag功能、私密文章支持、文章归档 文章markdown/富文本编辑支持、快速编辑 响应式布局支持 TODO 评论邮件提醒、近期评论 技术选型 后端 Ioc容器 Spring Web框架 SpringMVC Orm框架 MyBatis 安全权限 ...

    JavaEE求职简历-姓名-JAVA开发工程师.docx

    10. **企业级中间件与第三方库**:了解和使用Nginx反向代理服务器,消息队列ActiveMQ,SOAP和RESTful服务框架CXF,模板引擎Thymeleaf和FreeMarker,权限管理Shiro,消息中间件Kafka,JSON处理库FastJson,全文搜索...

    C2C交易网站 jsp+struts

    2. 安全机制:为了保护用户隐私和交易安全,网站可能采用Spring Security或Apache Shiro等安全框架,实现用户认证、授权、防止XSS和CSRF攻击等功能。 3. 会话管理:使用Cookie和Session来跟踪用户的登录状态和...

    ssm二手信息交易系统.rar

    1. **Spring框架**:Spring是Java领域中最广泛使用的依赖注入(DI)和面向切面编程(AOP)框架。在SSM系统中,Spring负责管理对象的生命周期和依赖关系,通过XML或Java配置来初始化和装配Bean。此外,Spring还提供了...

    Java博客系统Zblog2.zip

    文章标签tag功能、私密文章支持、文章归档 文章markdown/富文本编辑支持、快速编辑 响应式布局支持(pc/pad/phone) TODO 评论邮件提醒、近期评论 技术选型 后端 Ioc容器 Spring Web框架 ...

    SpringBoot开发非常美观的java博客系统 (2).pdf

    在用户认证与权限管理方面,系统采用了Apache Shiro作为安全框架,确保了用户数据的安全性。此外,通过集成Lucene搜索引擎,实现了站内搜索,提高了内容检索效率。为了适应不同设备的浏览需求,博客系统采用了响应式...

    电子商城系统JAVA源代码

    文档中可能涵盖了JSP的基本语法、标签库(Tag Library)、EL(Expression Language)以及JSTL(JavaServer Pages Standard Tag Library)的使用,帮助开发者理解如何在电子商城系统的前端展示商品信息、购物车功能、...

    SpringBoot开发非常美观的java博客系统(包含后台管理功能).pdf

    安全性方面,采用Shiro进行权限管理,搜索引擎选用了Lucene,缓存管理使用Ehcache,视图模板使用Freemarker。前端开发中,运用了Jsoup、fastjson、jQuery、Seajs等JavaScript库,Bootstrap作为前端框架,同时结合...

    java web开发常用模块源代码

    在Java Web中,Spring Boot和Jersey框架可以帮助我们轻松构建RESTful服务。 10. **安全框架**: 如Spring Security或Apache Shiro,提供身份验证、授权、CSRF防护等功能,确保Web应用的安全性。 11. **模板引擎**...

    JAVA WEB管理

    在IT行业中,Java Web是一种广泛使用的开发框架,用于构建企业级的互联网应用程序,特别是涉及到用户管理的系统。本文将深入探讨“JAVA WEB管理”这一主题,聚焦于如何利用Java Web技术来实现用户登录管理。 首先,...

    JAVA小区门户网站(源代码).zip

    【JAVA小区门户网站(源代码)】是一个基于Java技术构建的社区门户系统,它展示了Java在Web开发中的应用和实现。这个源代码集合可能包含了前端界面、后端逻辑、数据库交互等多个层面的代码,旨在帮助开发者理解和学习...

    javaweb教务管理系统源码

    5. 安全性:教务管理系统的安全性非常重要,开发者可能会使用Spring Security或者Apache Shiro等安全框架,来实现用户认证和授权,防止未授权访问或数据泄露。 6. 错误处理与日志记录:为了确保系统的稳定性和可...

    guns企业管理架构人

    5. **配置(Configuration)**:guns的配置文件,包括Spring Boot的application.properties或.yml,以及Shiro、MyBatis等框架的配置,这些配置决定了项目的运行环境和行为。 6. **页面(View)**:guns可能包含...

    JavaWeb博客管理系统源码含带毕业设计

    4. **框架应用**:为了提高开发效率和代码复用,开发过程中可能会使用Spring框架,它提供了依赖注入(Dependency Injection)和面向切面编程(AOP)等功能,简化了业务逻辑的实现。同时,Spring MVC作为Spring的一...

    javaweb项目—高性能内容管理系统

    在这个项目中,可能使用了模板引擎(如FreeMarker或Velocity)来实现动态页面渲染,以及数据库(如MySQL或Oracle)存储和检索内容。 三、源码分析 “bizosscmsv4-1”可能是项目的一个特定版本,其中包含了整个系统...

    News新闻系统javaweb

    Spring Security或Apache Shiro等安全框架可能被用于处理这些需求,防止未授权访问。 6. **模板引擎**:JSP虽然可以用来生成动态页面,但现代Web开发更倾向于使用模板引擎,如FreeMarker或Thymeleaf,它们使HTML更...

    javaweb图书商城

    8. **安全机制**:为了保护用户数据和系统安全,项目可能使用了Spring Security或者Apache Shiro进行权限控制和认证。 9. **文件上传下载**:考虑到图书的图片资源,项目应该有文件上传和下载功能,可能使用了...

    Java企业门户网站源码(含数据库).rar

    3. **安全机制**: 企业网站通常需要用户认证和授权功能,源码可能包含了Spring Security或者Apache Shiro等安全框架的实现,用于处理登录、权限控制和会话管理。 4. **前后端分离**: 现代企业网站往往采用前后端...

    SpringBoot开发非常美观的java博客系统.pdf

    在技术选型上,该博客系统选择了JDK8作为开发环境,MySQL作为数据库存储,Spring-boot和Spring-data-jpa作为主框架处理数据操作。安全权限管理采用了Shiro,搜索引擎则利用了Lucene实现站内搜索。为了优化性能,系统...

    基于java的论坛系统

    Spring Security或Apache Shiro等安全框架可以帮助我们实现这些功能。 6. **并发处理**:由于论坛系统可能有大量用户同时在线,因此需要考虑并发处理,比如使用线程池优化多线程执行,以及数据库事务管理来保证数据...

Global site tag (gtag.js) - Google Analytics