从Controller处理JSON空列表到html

时间:2018-02-15 21:08:04

标签: java spring spring-boot controller

我的html中有一个文本按钮,它取一个用户的特定值,在数据库中搜索它的出现,如果数据库中存在该值,则返回结果。

我正在使用Spring框架。我有一个控制器类,然后传递给serviceimplmentation方法来搜索单词的出现。控制器返回一个列表。

在此,当用户输入可能不存在于数据库中的名称时,可能会出现这种情况。那么在这种情况下,如果没有关于用户输入的数据库中的单词的数据,我该如何处理?我想要完成的是,我想从控制器传递数据并显示给用户。那么,如果没有数据,有没有办法让我显示一条错误消息,说明“没有与您输入的值相对应的数据”而不使用jquery?我可以使用控制器吗?

1 个答案:

答案 0 :(得分:0)

可以通过在模型中添加适当的消息来实现,如下所示。

@RequestMapping(value = "/search/{keyword}")
public String search(@PathVariable("keyword") String keyword) {
    List<Person> searchList = searchService.find(keyword);
    if(searchList.size > 0){
        model.addAttribute("searchList", searchList);
    }
    else{  
        model.addAttribute("noData", "there is no data corresponding to the value you entered");
     }
     return "yourFormViewName";
}

在页面上,它可以显示如下

    <c:if test="${not empty noData}">
       Message: ${noData}
    </c:if>
    <c:if test="${not empty searchList}">
      <c:forEach items="searchList" var="person">    
        <tr>
          <td>${person.firstName}</td>
          <td>${person.lastName}</td>
        </tr>
      </c:forEach>
   </c:if>