有没有与SpringMVC兼容的UI框架?
我最近正在学习SpringMVC,我对它是多么容易实现一些常见的事情印象深刻,比如分页。例如,我有这样一个控制器方法:有没有与SpringMVC兼容的UI框架?,spring,jsp,spring-mvc,user-interface,pagination,Spring,Jsp,Spring Mvc,User Interface,Pagination,我最近正在学习SpringMVC,我对它是多么容易实现一些常见的事情印象深刻,比如分页。例如,我有这样一个控制器方法: @RequestMapping(value="/showAllItems") public String showAllItems(Model model, Pageable pageable) { model.addAttribute("itemPage", itemService.getAllItems(pageable)); return ViewNa
@RequestMapping(value="/showAllItems")
public String showAllItems(Model model, Pageable pageable) {
model.addAttribute("itemPage", itemService.getAllItems(pageable));
return ViewNamesHolder.SHOW_ALL_ITEMS;
}
虽然Spring通过创建这个可分页对象在后端为我们提供了难以置信的支持,但据我所知,目前还没有任何UI框架在前端支持这种Spring对象。在编写了这个完美的简单控制器方法之后,我们再次在前端单独讨论如何显示这个可分页对象
例如,有引导。界面很漂亮,功能很好。本文是一个很好的示例,说明了如何将Spring MVC与Bootstrap集成:
问题是,我们仍然需要编写大量代码。这是上面文章中的jsp示例,它最后只生成一个分页条:
<!-- Pagination Bar -->
<div th:fragment='paginationbar'>
<div class='pagination pagination-centered'>
<ul>
<li th:class='${page.firstPage}? 'disabled' : '''>
<span th:if='${page.firstPage}'>← First</span>
<a th:if='${not page.firstPage}' th:href='@{${page.url}(page.page=1,page.size=${page.size})}'>← First</a>
</li>
<li th:class='${page.hasPreviousPage}? '' : 'disabled''>
<span th:if='${not page.hasPreviousPage}'>«</span>
<a th:if='${page.hasPreviousPage}' th:href='@{${page.url}(page.page=${page.number-1},page.size=${page.size})}' title='Go to previous page'>«</a>
</li>
<li th:each='item : ${page.items}' th:class='${item.current}? 'active' : '''>
<span th:if='${item.current}' th:text='${item.number}'>1</span>
<a th:if='${not item.current}' th:href='@{${page.url}(page.page=${item.number},page.size=${page.size})}'><span th:text='${item.number}'>1</span></a>
</li>
<li th:class='${page.hasNextPage}? '' : 'disabled''>
<span th:if='${not page.hasNextPage}'>»</span>
<a th:if='${page.hasNextPage}' th:href='@{${page.url}(page.page=${page.number+1},page.size=${page.size})}' title='Go to next page'>»</a>
</li>
<li th:class='${page.lastPage}? 'disabled' : '''>
<span th:if='${page.lastPage}'>Last →</span>
<a th:if='${not page.lastPage}' th:href='@{${page.url}(page.page=${page.totalPages},page.size=${page.size})}'>Last →</a>
</li>
</ul>
</div>
</div>
-
← 弗斯特
-
«
-
1.
-
»
-
最后→
多亏了作者,这个JSP页面才可以重用。但我们仍然需要能够自动处理这类事情的框架,这就是我所说的SpringMVC兼容框架。前端应该是这样的,它几乎自动处理分页:
<div springUI:fragment='paginationbar' springUI:object='itemPage'/>
可能带有一些附加属性,如First和LastButtonSVisible或currentPageDisabled等
对于上面的例子,由于我们在objectitempage中有我们需要的所有信息(pageCount等),这种简单性(或几乎)是可能的
现在我又问了一个问题,是否有一个与SpringMVC非常兼容的UI框架?看看SpringRoo()。它使用某种自行编写的基于jsp的标记库。您可以使用。您需要在
org.displaytag.pagination.PaginatedList
的实现中包装列表和分页。然而,这几乎就是您所需要的displaytag和spring之间的“桥梁”。也许您正在寻找这样的方法-
在那篇文章中,它使用Spring MVC controller无缝地处理ZK UI组件。如果这么简单,难道所有的脚本小子都不会有我们的工作吗?这个网站不是推荐库或工具的。但如果找不到,为什么不发明自己的JSP标记来处理分页呢?我已经创建了一个。对我来说,这听起来很奇怪,班肯有这么多创意图书馆,对前端没有任何影响。将来我们肯定会有类似上面例子的东西。也许我们已经有了。如果我们已经有了,我想知道在哪里。此外,我的问题是关于“SpringMVC兼容UI框架”,而不是分页本身。这只是我的意思的一个例子。正如我所说的,我现在有分页功能,但将来我肯定会对这种spring对象有类似的需求,我也想在前端使用。谢谢。请注意
*.tagx
文件哇,这是一篇非常棒的新文章。我已经使用SpringMVC+JSP+JQuery构建了一个CMS后端,最后得到了一个混乱的结果。来自客户端js和jsp生成的js的代码让我的团队中的其他新手感到困惑。所以我认为这是一个好主意,以防止得到混乱。