С помощью Ajax вызовов вы можете вызывать конечные точки контроллера, используя javascript. Один ajax вызов выглядит следующим образом:
function getReviews() {
$.ajax({
type: "GET",
url: "/users/findUserReviews", //example
dataType: "JSON",
success: function (data) {
//do something with this JSON
fillReviews(data);
}
});
}
Теперь вы можете использовать эту функцию как on-click
событие для вашей кнопки. А fillReviews()
- это функция, которая получает элемент с id = "review" со страницы jsp и создает дерево списка с извлеченными данными.
function fillReviews(data) {
var reviewDiv= document.getElementById('review');
var reviewList = document.createElement('ul');
for ( var i=0 ; i < data.length; i++)
{
var reviewListItem = createListItem(data[i]);
reviewList.appendChild(reviewListItem);
}
reviewDiv.appendChild(reviewList);
}
И createListItem(data[i])
может выглядеть так это:
function createListItem(data)
{
var listItem = document.createElement('li');
listItem.innerHTML = data["reviewName"]; // for example ..
return listItem;
}
И теперь все, что вам нужно сделать, это позвонить getReviews()
здесь:
<button onclick="getReviews()"/>
РЕДАКТИРОВАТЬ : "данные" из ajax звонок JSON. Таким образом, "/ users / findUserReviews" должен возвращать List<Review>
, например. И нет необходимости менять исходную конечную точку "/ findUserReviews". Это был только пример, вы можете создать новую конечную точку в вашем контроллере, которая возвращает список.