在thymeleaf中生成菜单栏(Spring Boot)

时间:2016-12-21 14:37:00

标签: java json spring spring-boot thymeleaf

是否可以在弹簧启动时生成某种菜单栏并将其显示在所有网页上? 所以我有一个Web服务,我想添加一个菜单栏,菜单栏应该是灵活的,因为它仍然是一个正在进行的项目。

起初,我的想法是使用Java反射,但这样做不会很好,因为它只显示方法名称,这与页面名称不同...(如getClient(...)它应该有一个视图客户端的页面名称。我也尝试过内置功能来反映Spring引导映射并为它们命名,但是你会遇到无法对某些页面进行分组的问题。 / p>

所以我的最后一个想法是手动生成一个json并在每次加载页面时解析它,所以我可以做类似的事情

<th:block>
    <li th:each="item : ${json}">
         <a th:href="@{http://domain.com/__${item.link}__}" th:text="${item.name}"/>
    </li>
</th:block>

那我怎么解析这个Json对象呢? withoud新上课?

提前谢谢, Jari Van Melckebeke

1 个答案:

答案 0 :(得分:0)

您说的更像是站点地图吗?这会为您提供一个包含网站所有可能网址的页面。

我要做的是将actuator包添加到spring boot项目中。然后,我会点击mappings端点,看http://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html,它将生成您的JSON文件,然后在Thymeleaf的模型属性中创建一个URL列表,然后再渲染。