Я думаю, вам нужно идти, хотя это ... Я очищу ваши концепции ... Пожалуйста, обратитесь к учебникам по Java, когда и когда это возможно. Полезно
http: // docs. oracle.com/javase/tutorial/java/nutsandbolts/arrays.html
вызов DB в jsp будет очень осужден. учитывая предпосылку вопроса, вы могли бы
//b.jsp
<div id="msg">data is loading...</div>
<%
out.flush();
db.performanLengthJob();
%>
<script> $("msg").remove(); </script>
<p>Data is loaded!</p>
AJAX - способ сделать это. Вам понадобится что-то на стороне сервера, чтобы отслеживать прогресс.
Загрузите данные (в b.jsp) с помощью запроса ajax.
Создайте JS-функцию, которая запускается при загрузке, пусть она покажет ваше сообщение («осталось 30 секунд»), а затем пусть она выполнит запрос ajax для загрузки необходимых данных.
Я рекомендую вам использовать какой-нибудь js-фреймворк, например jQuery, это упростит работу.
Для обработки ajax-запроса на стороне сервера вам необходимо создать еще один сервлет и сопоставить его с некоторым URL-адресом, например your_app_name / ajaxsupport
. Этот сервлет должен возвращать данные в удобном формате (это может быть обычный текст, xml, JSON или что-то еще). На клиенте вы обработаете полученные данные и покажете их.
Быстрым решением может быть использование JS события onbeforeunload вашей базовой страницы html body, например, так
<body onbeforeunload="$("yourComponent").show();">