Заполнение таблицы html с использованием массива объектов Java

Я пишу приложение с несколькими сервлетами. В одном из сервлетов пользователь имеет ссылку с возможностью клика, которая приводит их к странице html. Метод doPost сервлета выглядит следующим образом:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    HttpSession session = request.getSession();
    PrintWriter pw = response.getWriter();

    pw.print("<html>" + 
            "<head>" + 
            "<meta charset="ISO-8859-1">" + 
            "<title>SecondServlet</title>" + 
            "</head>" + "<body>");
    pw.print("<a href = 'input.html '>New movie input</a>");
    pw.print("</body></html>");

    pw.close();
}

И HTML-страница выглядит следующим образом:

<!DOCTYPE html>
<html>
 <head>
   <meta charset="ISO-8859-1">
   <title>input</title>
   <style>
      table, td{
        border: 2px solid black;
        border-collapse: collapse;
        width: 100%;
        table-layout: fixed;
      }
  </style>
</head>
<body>
  <form method = "post" action = "ThirdServlet"'>
    name:<input type = "text" name = "name"><br>
    year:<input type = "text" name = "year"><br>
    genre:
    <select name = "genre">
        <option value = "thriller" >thriller</option>
        <option value = "comedy" >comedy</option>
    </select><br>
    actors:<input type = "text" name = "actors"><br>
    imdb link:<input type = "text" name = "imdb"><br>
    youtube trailer:<input type = "text" name = "youtube">
    <input type = "submit" value = "save to a list" name = "list" >
    </form>
    <br>
    <table>
      <tr>
        <td>name</td>
        <td>year</td>
        <td>genre</td>
        <td>imdb link</td>
        <td>youtube trailer</td>
     </tr>
   </table>
 </body>

Теперь, после того, как пользователь нажимает кнопку «добавить в список», они отправляются на третий сервлет, где фильм добавляется в ArrayList . В следующий раз, когда пользователь зайдет, они должны получить таблицу, заполненную всеми фильмами из этого ArrayList . Я храню этот ArrayList в HttpSession как атрибут для всех других сервлетов, чтобы увидеть его. Но я не знаю, как передать данные из списка на эту страницу html, где должна быть заполнена таблица фильмов.

Кроме того, мне разрешено использовать только сервлеты, HTML или JavaScript. Любая помощь приветствуется.

Всего 1 ответ


Поскольку вы ожидаете, это динамический контент, что означает, что список фильмов может измениться для разных пользователей / запросов, чего вы не можете достичь, используя простой HTML (который является статическим). Вам необходимо использовать сервлет и написать содержимое html и использовать List для извлечения данных вместе.