如何根据用户显示不同的视图/HTML 页面?

How to display different views / HTML pages dependent on user?

我正在使用 Spring MVC 构建一个简单的 Web application

我想显示不同的views

如何我可以做到这一点?我问 Administrators 将能够执行不同的功能,并作为标准用户查看额外的 buttons 等。

管理员将获得额外的 privileges/permissions,可能使用 oracle 数据库中的 flag 进行标识。

作为参考,我也在应用程序中使用了 Spring Data and Thyme leaf

Thymeleaf 已与 spring 集成,安全性为我们提供了处理您提出的要求的协同基础。

Click here 用于教程和指南。如果您有兴趣阅读,本指南还有 link 的 spring 安全文档。

1) Spring 安全 - 将在使用 userId 验证用户 table 后决定符合条件的用户角色。例如,如果用户符合 'ROLE_ADMIN'、'ROLE_USER' 角色,则在登录后可以看到以下 2 个按钮。

2) 设置授权角色后的示例 Thymeleaf 代码。

<div sec:authorize="hasRole('ROLE_ADMIN')">
  //show the save button  
</div>
<div sec:authorize="hasRole('ROLE_USER')">
  //show the view button
</div>