Как отправить данные таблицы html на сервер (java / j2ee) - PullRequest
0 голосов
/ 25 января 2011

Я создаю веб-приложение, используя Java / J2ee для Windows, используя Netbeans / Glassfish и sqlite в качестве базы данных.

Я буду создавать таблицу с использованием jsp. Таблица имеет три столбца и будет иметь столько строк, сколько необходимо пользователю. Пользователь заполняет данные в ячейках и отправляет их. Данные необходимо отправить на сервер для обработки. Я вижу, что сервлеты могут читать данные из html-форм с помощью некоторых методов, но я не вижу способа читать данные из всех ячеек таблицы. Как мне это сделать ?

Также мне нужно реализовать пейджинг с использованием кнопок «предыдущий» и «следующий», чтобы первая страница занимала 20 строк (скажем) и так далее, пока пользователь не закончит работу. Я хочу знать, должен ли я посылать данные таблицы за страницей на сервер, или я могу временно хранить данные в клиенте до тех пор, пока пользователь не закончит работу и не отправит все страницы вместе на сервер. Я думаю, что не стоит обременять клиента, если пользователь вводит огромное количество строк.

Это мое первое веб-приложение, поэтому, пожалуйста, перенаправьте меня в любое место, которое уже объясняет это, на случай, если оно существует. Я сделал значительный поиск, хотя.

1 Ответ

0 голосов
/ 25 января 2011

Хотя вы можете использовать любой из множества доступных веб-фреймворков, я бы порекомендовал вам сделать что-то еще.Вы сказали, что это ваше первое веб-приложение, поэтому ожидается, что оно будет относительно простым.Таким образом, вы можете стоять без рамок.Более того, вы должны изучить ядро, поэтому вы должны стоять без фреймворка.

Вы можете создать страницу JSP, которая генерирует доступную для записи таблицу.Вам следует объединить теги <table> и <input>.Каждый тег intput должен иметь имя атрибута.Все входные данные в одном столбце будут иметь одинаковые имена.

Например, если ваша таблица содержит 2 столбца: car_model и car_manufacturer и 2 строки:

megane renault
323    mazda

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

Эта таблица будет в форме, которая будет отправлять материал сервлету, используя HTTP POST.Это не проблема, что вы получите несколько параметров с одинаковым именем.Servlet API позволяет это: request.getParameters("car_manufacturer") возвращает массив строк, которые в нашем случае содержат renault и mazda.

Реализация ссылок предыдущего и следующего не очень сложна.Чтобы получить данные, вы все равно должны реализовать некоторую подкачку.Поэтому сохраните индекс первого видимого элемента в коллекции, который вы извлекаете из БД, и количество элементов для отображения.Ваш JSP должен взять эти элементы, выполнить SQL-запрос и показать только соответствующие элементы.Лучшее решение - динамически изменять запрос, чтобы получать только релевантные элементы.

Надеюсь, мой ответ поможет.Он не содержит точный список задач, но я считаю, что содержит достаточно советов, с которых можно начать.Удачи и веселья.

...