Как вы импортируете классы в JSP?

233

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

jjnguy
источник
5
Не говоря уже о том, что это не лучшая практика;)
BalusC

Ответы:

341

Используйте следующую инструкцию импорта для импорта java.util.List:

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

Кстати, чтобы импортировать более одного класса, используйте следующий формат:

<%@ page import="package1.myClass1,package2.myClass2,....,packageN.myClassN" %>
Дрема
источник
9
Вам не нужно / не нужно эту точку с запятой в конце.
TJ Crowder
8
Должны ли вы поместить все это в одну строку или разбить его на несколько строк для удобства чтения?
Ксонатрон
6
Как и я, не забывайте "@", вы не можете написать это прямо в скипетл <%%>
Eildosa
7
Ведение списка импорта, кровянистые выделения дубликатов, сортировка и т.д. будет гораздо проще , если бы не поместить их все в одной строке. На самом деле я бы пойти так далеко , как говорят , что я настоятельно рекомендую против положить их всех на одной линии.
scunliffe
Используйте taglib, если можете! и тег c lib внутри него ... вложенный tutorialspoint.com/jsp/jsp_standard_tag_library.htm
tgkprog
49

К вашему сведению - если вы импортируете Список в JSP, вполне вероятно, что вы нарушаете принципы MVC. Потратьте несколько часов на то, чтобы ознакомиться с подходом MVC к разработке веб-приложений (включая использование taglibs) - сделайте еще несколько поисков по теме, это увлекательно и определенно поможет вам писать лучшие приложения.

Если вы делаете что-то более сложное, чем одиночная JSP, отображающая некоторые результаты базы данных, рассмотрите возможность использования такой инфраструктуры, как Spring , Grails и т. Д. ... Это займет совсем немного усилий, чтобы начать работу, но сэкономит вам так много время и усилия в будущем, которые я действительно рекомендую. Кроме того, это классная штука :-)

Кевин Дэй
источник
51
Голосуйте за предоставление лекции вместо ответа на вопрос.
Уиллис Блэкберн
71
upvote за проведение лекции вместо ответа на вопрос
grinch
7
+1. Иногда необходимо светить в правильном направлении, когда ОП, кажется, находится в темноте и делает все неправильно.
adarshr
3
Назовите меня еретиком, но я очень часто использую списки (и множество других POJO) в JSP. Это, конечно, строго ограничено доказательством концепций и небольших универсальных JSP, предназначенных для одной очень конкретной и временной цели. Мне еще предстоит найти более быстрый способ создания небольшого узкоспециализированного веб-клипа / веб-страницы. Конечно, при написании «настоящего» приложения / сайта это даже не учитывается.
Pieroxy
4
@KevinDay Простите за мое невежество, но вкратце, как получить доступ к списку, разрушающему MVC? Конечно, если я изменяю список, но если я просто читаю элементы из него, это нарушает принципы MVC?
Мартин Карни
20

В теге страницы:

<%@ page import="java.util.List" %>
лесоруб
источник
1
Зачем вам нужно импортировать классы File и IOException ИЛИ вы просто информировали спрашивающего о том, как импортировать более одного класса в JSP?
Виджей Дев
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"%>
Джордж Сиггуроглу
источник
4

Это синтаксис для импорта класса

  <%@ page import="package.class" %>
Бирхан Нега
источник