Як ви імпортуєте класи в JSP?


233

Я повний початківець JSP. Я намагаюся використовувати на java.util.Listсторінці JSP. Що мені потрібно зробити, щоб використовувати інші класи, ніж ті, що в них java.lang?


5
Не кажучи вже про те, що це не найкраща практика;)
BalusC

Відповіді:


341

Використовуйте таке імпортування для імпорту java.util.List:

<%@ page import="java.util.List" %>

BTW, щоб імпортувати більше одного класу, використовуйте наступний формат:

<%@ page import="package1.myClass1,package2.myClass2,....,packageN.myClassN" %>

9
Вам не потрібно / хочеться ця крапка з комою в кінці.
TJ Crowder

8
Якщо ви покладете все це на один рядок або розділите його на кілька рядків для читабельності?
Xonatron

6
Як і я, не забувайте "@", ви не можете записати це безпосередньо в шрифт <%%>
Eildosa

7
Ведення списку імпорту, кров'янисті виділення дублікатів, сортування і т.д. буде набагато простіше , якщо б НЕ помістити їх все в одному рядку. Насправді я б хотів сказати, що дуже рекомендую не ставити їх на одну лінію.
сканліфф

Використовуйте таліг, якщо можете! і тег c тег всередині нього ... вкладений tutorialspoint.com/jsp/jsp_standard_tag_library.htm
tgkprog

49

FYI - якщо ви імпортуєте Список у JSP, дуже ймовірно, що ви порушуєте принципи MVC. Витратьте кілька годин в даний час , щоб читати на підході MVC для розробки веб - додатків (включаючи використання бібліотеки тегів) - зробити ще трохи вдаючись до допомоги з цього питання, це цікаво і, безумовно , допоможе вам краще писати програми.

Якщо ви робите щось складніше, ніж один JSP, де відображаються деякі результати бази даних, будь ласка, подумайте про використання такої рамки, як Spring , Grails і т. Д. ... Це абсолютно забирає у вас трохи більше зусиль, щоб продовжувати роботу, але це заощадить вам стільки час і зусилля вниз, що я дуже рекомендую. Крім того, це класні речі :-)


51
Голосування за відмову за надання лекції замість відповіді на запитання.
Вілліс Блекберн

71
Вища пропозиція за лекцію замість відповіді на запитання
усмішка

7
+1. Іноді світити світло в правильному напрямку потрібно, коли ОП здається, що знаходиться в темряві і взагалі робить не зовсім правильний спосіб.
adarshr

3
Називайте мене єретиком, але я дуже часто використовую Списки (та багато інших POJO) в JSP. Це, звичайно, суворо обмежується доведенням понять та невеликими спільними програмами, які виконуються для всіх, які призначені для однієї дуже конкретної та тимчасової цілі. Я ще не знайшов більш швидкого способу створення невеликого веб-кліпу / веб-сторінки, спеціалізованої. Звичайно, при написанні "реального" додатка / веб-сайту це навіть не враховується.
п’єрокси

4
@KevinDay Вибачте моє незнання, але коротко, як доступ до списку порушує MVC? Якщо я змінюю список, звичайно, але якщо я просто читаю елементи з нього, чи це порушує принципи MVC?
Мартін Карні

20

У тезі сторінки:

<%@ page import="java.util.List" %>

1
Чому вам потрібно імпортувати файли класів та класи IOException АБО це, що ви просто інформували запитувача про те, як імпортувати більше одного класу в JSP?
Vijay Dev

2
Axeman, java, lang в порядку, але класи java.util не включаються автоматично. чи це у випадку з JSP ????
akjain

5

Використовуйте Директиву сторінки для імпорту класу на сторінку JSP. Директива сторінок використовує 11 різних типів атрибутів, один з них - "імпорт". Директива про сторінку з імпортним атрибутом Дозволяє згадувати більше одного пакета в одному місці, розділеному Комами (,). Крім того, ви можете мати кілька примірників елемента сторінки, кожен з яких має різний пакет.

Наприклад:

 <%@ page import = "java.io.*" %>
 <%@ page import = "java.io.*", "java.util.*"%>

Примітка: атрибут import повинен бути розміщений перед елементом, який викликає клас importd.


5

Якщо ви використовуєте JSTL і хочете імпортувати клас на сторінку тегів замість сторінки jsp, синтаксис трохи інший. Замініть слово "сторінка" на слово "тег".

Замість правильної відповіді Сендмена

<%@page import="path.to.your.class"%>

використання

<%@tag import="path.to.your.class"%>

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.