.JSP файлын қалай ашуға болады? JSP файл кеңейтімі дегеніміз не? Тізімдегі қолданба әлдеқашан орнатылған болса не істеу керек

JSP файл мәселесін шешуге көмектестік деп үміттенеміз. Біздің тізімнен қолданбаны қайдан жүктеп алуға болатынын білмесеңіз, сілтемені басыңыз (бұл бағдарламаның атауы) - Қажетті қосымшаның қауіпсіз орнату нұсқасын қай жерден жүктеп алу керектігі туралы толығырақ ақпаратты таба аласыз.

Басқа не проблемалар тудыруы мүмкін?

JSP файлын аша алмаудың көптеген себептері болуы мүмкін (сәйкес қолданбаның болмауы ғана емес).
Біріншіден- JSP файлы оған қызмет көрсету үшін орнатылған қолданбамен қате байланысқан (үйлесімді емес) болуы мүмкін. Бұл жағдайда сіз бұл байланысты өзіңіз өзгертуіңіз керек. Мұны істеу үшін өңдегіңіз келетін JSP файлын тінтуірдің оң жақ түймешігімен нұқыңыз, опцияны басыңыз «Ашу үшін»содан кейін тізімнен орнатылған бағдарламаны таңдаңыз. Осы әрекеттен кейін JSP файлын ашу проблемалары толығымен жойылуы керек.
Екіншіден- ашқыңыз келген файл жай ғана зақымдалған болуы мүмкін. Бұл жағдайда оның жаңа нұсқасын табу немесе оны сол көзден қайта жүктеп алу жақсы болар еді (мүмкін алдыңғы сеанста қандай да бір себептермен JSP файлын жүктеу аяқталмай қалды және оны дұрыс ашу мүмкін болмады) .

Сіз көмектескіңіз келе ме?

JSP файл кеңейтімі туралы қосымша ақпаратыңыз болса, оны біздің сайттың пайдаланушыларымен бөліссеңіз, ризамыз. Табылған пішінді пайдаланыңыз және бізге JSP файлы туралы ақпаратты жіберіңіз.

Файл кеңейтімі JSP Java кодын қамтитын сервер жасаған веб-бетке дейін қысқартылған. Кодты HTML жасайтын веб-сервер өңдейді. Java коды серверде өңделетіндіктен, соңғы пайдаланушы JSP кодын ешқашан көрмейді, бірақ беттегі Java коды арқылы жасалған HTML ғана. JSP Java кодын және кейбір алдын ала анықталған әрекеттерді статикалық веб-белгілеу мазмұнымен кірістіруге мүмкіндік береді, бұл кезде алынған бет құжатты жеткізу үшін серверде құрастырылып, орындалады. Құрастырылған беттер, сондай-ақ кез келген тәуелді Java кітапханалары жергілікті бағдарламалық құрал пішімін емес, Java байт кодын пайдаланады. Көптеген Java бағдарламалары сияқты, олар дерексіз, платформаға бейтарап ортаны қамтамасыз ету үшін сервердің операциялық жүйесімен біріктірілген Java виртуалды машинасында (JVM) жұмыс істеуі керек. JSP беттерін әзірлеу бағдарламасы немесе Блокнот немесе WordPad сияқты негізгі мәтіндік редактордың көмегімен өңдеуге болады.

.jsp файлын қалай ашуға болады?

.jsp файлын немесе компьютердегі кез келген басқа файлды екі рет басу арқылы іске қосыңыз. Егер файл байланыстары дұрыс орнатылған болса, .jsp файлын ашуға арналған қолданба оны ашады. Сізге дұрыс қолданбаны жүктеп алу немесе сатып алу қажет болуы мүмкін. Компьютеріңізде дұрыс қолданба болуы мүмкін, бірақ .jsp файлдары онымен әлі байланыстырылмаған. Бұл жағдайда, .jsp файлын ашуға әрекеттенгенде, Windows-қа сол файл үшін қай қолданба дұрыс екенін айта аласыз. Осыдан кейін .jsp файлын ашу дұрыс қолданбаны ашады.

JavaServer Pages (JSP) беттердің динамикалық бөлігін статикалық HTML-ден бөлуге мүмкіндік береді. Әдеттегідей, сіз HTML-де веб-беттерді құруға арналған кез келген бағдарламаны пайдаланып кәдімгі кодты жазасыз. Содан кейін сіз кодтың динамикалық бөлігін арнайы тегтерге орап аласыз, олардың көпшілігі «<% " и завершаются " %>". Мысал ретінде шығысы "Сатып алғаныңыз үшін рахмет" сияқты болатын беттің JSP бөлімін қарастырыңыз. Негізгі веб-бағдарламалау" URL мекенжайынан сұрау бойынша: http://host/OrderConfirmation.jsp?title=Core+Web+Programming:

сатып алғаныңызға рахмет <%= request.getParameter("title") %>

Сіз файлыңызға .jsp кеңейтімін бересіз және оны кәдімгі веб-беттер орналастырылатын жерге орналастырасыз. Жазғаныңыз сервлетке қарағанда кәдімгі HTML файлына көбірек ұқсайтынымен, JSP беті жай ғана сервлеттің қызмет көрсету әдісімен байланысты шығыс ағынына бағытталатын статикалық HTML бар кәдімгі сервлетке түрлендіріледі. Бұл әдетте бетке арналған бірінші сұрауда орын алады және JSP беті сервлетке және оның кейінгі аударылуынан туындаған сәл кідіріссіз бетке бірінші нақты пайдаланушының кіруін қаласа, әзірлеушілер бұл сұрауды орнатудан кейін бірден орындай алады. құрастыру және жүктеу. Сондай-ақ, көптеген веб-серверлер сізге бүркеншік аттарды көрсетуге мүмкіндік беретінін ескеріңіз, осылайша HTML файлын көрсететін URL шын мәнінде сервлет немесе JSP бетіне нұсқайды.

Стандартты HTML конструкцияларынан басқа, бетке қосуға болатын JSP конструкцияларының үш негізгі түрі бар: сценарий элементтері, директивалар және әрекеттер. Сценарий элементтерікейінірек соңғы сервлеттің бөлігі болатын Java кодын көрсетуге мүмкіндік береді, директиваларбүкіл сервлет құрылымын басқару мүмкіндігін береді және әрекеттерқолданылатын құрамдастарды анықтауға, сондай-ақ JSP қозғалтқышының әрекетін басқаруға қызмет етеді. Сценарий элементтерін жеңілдету үшін жоғарыдағы үзіндіде пайдаланылған сұрау айнымалысы сияқты бірнеше алдын ала анықталған айнымалы мәндерге қол жеткізе аласыз.

Бұл нұсқаулық JSP 1.0 нұсқасын қамтитынын ескеріңіз. Ал 0.92 нұсқасынан бастап, JSP көптеген өзгерістерге ұшырады және бұл өзгерістер тек жақсылық үшін болғанына қарамастан, JSP 1.0 нұсқасы бұрынғы JSP қозғалтқыштарымен мүлдем дерлік үйлеспейтінін есте ұстаған жөн. Сондай-ақ, бұл оқулық http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/ сайтында қол жетімді сервлеттер мен JSP туралы неғұрлым толық оқулықтың бөлігі екенін есте сақтаңыз.

2. Синтаксис

JSP элементіСинтаксисСипаттамаЕскерту
JSP өрнегі<%= выражение %> Өрнек өңделеді және шығысқа жіберіледіXML баламасы:

өрнек
. Алдын ала анықталған айнымалылар: сұрау, жауап, шығу, сеанс, қолданба, конфигурация және pageContext (скриптлеттерде де қол жетімді).
JSP сценарийі<% код %> Код қызмет көрсету әдісіне қосылады.XML баламасы:

код
.
JSP декларациясы<%! код %> Код қызмет көрсету әдісінен тыс сервлет сыныбының негізгі бөлігіне қосылады.XML баламасы:

код
.
JSP бет директивасы<%@ page att="значение" %> Негізгі параметрлер туралы ақпараты бар сервлет механизміне арналған директивалар.XML баламасы:
. Жарамды атрибуттар (әдепкі мәндер қою шрифтпен жазылған):
импорт = пакет.сынып"
contentType=" MIME түрі"
isThreadSafe=" рас|жалған
"сеанс=" рас|жалған»
буфер = өлшемікб|жоқ»
autoflush = рас|жалған»
ұзартады = пакет.сынып"
ақпарат = "хабарлама"
errorPage=" url"
isErrorPage="true| жалған"
тіл = "java"
JSP директивасын қамтиды<%@ include file="url" %> JSP серверін сервлетке аудару кезінде қосылатын жергілікті жүйедегі файл.XML баламасы:
файл = "url"\>.
URL салыстырмалы болуы керек. Файлды аудару кезінде емес сұрау кезінде қосу үшін jsp:include әрекетін пайдаланыңыз.
JSP түсініктемесі<%-- комментарий --%> Пікір; JSP бетін сервлетке аудару кезінде еленбейді.Түсініктеменің соңғы HTML-де сақталуын қаласаңыз, түсініктемелерді сипаттау үшін қалыпты HTML синтаксисін пайдаланыңыз:<-- комментарий -->.
jsp: әрекетті қамтидыБет сұралған кезде файлды қамтиды.Егер файлды бетті аудару процесі кезінде қосуды қаласаңыз, қосу төлсипатымен бірге бет директивасын пайдаланыңыз. Назар аударыңыз:Кейбір серверлер сервер параметрлеріне байланысты қосылған файлдардың HTML немесе JSP пішімінде болуын талап етеді (әдетте бұл шектеу файл кеңейтімдерін көрсетуге негізделген).
jsp: useBean әрекетінемесе

...
Java Bean табыңыз немесе жасаңыз.Ықтимал атрибуттар:
id=" Аты"
ауқым = бет|сұрау|сессия|өтініш»
сынып = пакет.сынып"
түрі = пакет.сынып"
beanName=" пакет.сынып"
jsp:setProperty әрекеті Бұршақтың сипаттарын анық немесе сұрауда берілген сәйкес параметр мәнін көрсету арқылы орнатады.Жарамды атрибуттар:
аты = атыBean"
меншік = nameProperties|*"
param = Параметр аты"
value=" мағынасы!}"
jsp:getProperty әрекетіаты = NameProperties"
value=" мағынасы!}"/>
Бұршақ қасиеттерін алу және көрсету.
jsp: алға әрекетбет = салыстырмалы URL"/> Сұрауды басқа бетке жібереді.
jsp:плагин әрекеті атрибут = мағынасы"*>
...

Java плагинін пайдаланатын апплет орындалатын шолғыш түріне байланысты OBJECT немесе EMBED тегтерін жасайды.

3. Үлгі мәтіні: Статикалық HTML

Әдетте, JSP бетіңіздің көпшілігі деп аталатын статикалық HTML болады үлгі мәтіні. Барлық жағынан (біреуінен басқа) бұл HTML бірдей синтаксистік ережелерді қолданатын кәдімгі HTML сияқты көрінеді және ол бетті өңдеу үшін жасалған сервлет арқылы клиентке жай ғана «беріледі». Сонымен қатар, тек HTML ғана емес көрінедіқалыпты, ол мүмкін құрылуывеб-беттерді жасау үшін бұрын пайдаланған құралдарды пайдалану. Мысалы, мен осы оқулық үшін JSP беттерінің көпшілігін жасау үшін Allaire's HomeSite пайдаландым.

«Үлгі мәтіні өзгеріссіз жіберіледі» ережесінен жалғыз қайғылы ерекшелік - бұл мәтіндегі таңбалар тізбегін көрсеткіңіз келетін жағдай.<% ", для этого в тексте шаблона надо использовать сочетание символов " <\% ".

4. JSP сценарий элементтері

JSP сценарий элементтері ағымдағы JSP бетінен жасалған сервлетке Java кодын кірістіруге мүмкіндік береді. Үш нысаны бар:

  1. Пішіні бар өрнектер<%= выражение %>өңделетін және шығаруға жіберілетін,
  2. Пішінді сценарийлер<% код %>, олар сервлеттің қызмет көрсету әдісіне кірістіріледі
  3. Пішіні бар жарнамалар<%! код %>, олар бар әдістерден тыс сервлет сыныбының негізгі бөлігіне кірістіріледі.
Олардың барлығы төменде егжей-тегжейлі талқыланады.

4.1 JSP өрнектері

Өрнектер JSPs Java мәндерін тікелей шығысқа енгізу үшін пайдаланылады. Ол үшін келесі форма қолданылады:

<%= Java тіліндегі өрнек %>

Java өрнектері бағаланады, жолға түрлендіріледі және бетке енгізіледі. Бұл есептеулер орындалу уақытында (яғни бет сұралғанда) орын алады, сондықтан сұраудың өзі туралы ақпаратқа толық қол жетімділік бар. Мысалы, келесі код беттің сұралған күні мен уақытын көрсетеді:

Қазіргі уақыт:<%= new java.util.Date() %>

Бұл өрнектерді жеңілдету үшін пайдалануға болатын бірнеше алдын ала анықталған айнымалылар бар. Олар төменде толығырақ талқыланады, бірақ соған қарамастан өрнектерді пайдалану кезінде олардың қолданылуын ескере отырып, біз ең маңыздыларының бірнешеуін береміз:

Сұраныс, HttpServletRequest;
жауап, HttpServletResponse;
сессия , сұраумен байланысты HttpSession (бар болса);
out , PrintWriter (JspWriter түрінің буферленген нұсқасы) шығыс деректерін клиентке жіберу үшін пайдаланылады.

Мысал: Сіздің хост аты:<%= request.getRemoteHost() %>Соңында, XML қолданатын авторлар JSP өрнектері үшін балама синтаксисті пайдалана алады: Java тіліндегі өрнектер

XML элементтері, HTML-ден айырмашылығы, регистрге сезімтал екенін есте сақтаңыз. Сондықтан кіші әріптерді пайдалануды ұмытпаңыз.

4.2 JSP сценарийлері

Қарапайым өрнектерді енгізуден көп нәрсені істегіңіз келсе, скриплеттер JSP файлдары берілген бетті өңдеу кезінде жасалатын сервлет әдісіне кез келген кодты кірістіру мүмкіндігін береді. Скрипттер келесідей көрінеді:

<% Java коды %>

Сценарийлердің өрнектер сияқты автоматты түрде анықталған айнымалы мәндерге де қатынасы бар. Мәселен, мысалы, бетке бірдеңе шығарғыңыз келсе, out айнымалысын қолданасыз.

<% String queryData = request.getQueryString(); out.println("Дополнительные данные запроса: " + queryData); %>

Скриптлет ішіндегі код жазылғандай кірістірілетінін және скрипттен бұрын немесе кейін барлық статикалық HTML (үлгі мәтіні) басып шығару мәлімдемесі арқылы түрлендірілетінін ескеріңіз. Бұл скрипттер міндетті түрде аяқталған Java бөліктерін қамтуды қажет етпейтінін және ашық қалдырылған блоктар скрипттен тыс статикалық HTML-ге әсер етуі мүмкін екенін білдіреді. Мысалы, келесі JSP фрагментінде аралас үлгі мәтіні мен сценарийлер бар:

<% if (Math.random() < 0.5) { %> Жақсы өтіңізБүгінгі күніңіз жақсы өтсін!<% } else { %> Сәтті емесБүгінгі күніңіз жақсы өтсін!<% } %>түрлендіруден кейін келесідей нәтиже болады: if (Math.random()< 0.5) { out.println("Жақсы өтіңізКүндеріңіз сәтті өтсін!"); ) else (out.println(" Сәтті емесбүгінгі күніңіз жақсы өтсін!»);)

Скриптлет ішінде " %> " таңбалар тізбегін пайдаланғыңыз келсе, оның орнына " % \> " пайдаланыңыз. Эквивалент<% Код %>XML үшін:

Код

4.3 JSP декларациялары

жарнамалар JSPs сервлет сыныбының негізгі бөлігіне кірістірілетін әдістерді немесе өрістерді анықтауға мүмкіндік береді (сұрауды өңдейтін қызмет әдісінен тыс). Олардың келесі формасы бар:

<%! Java коды %>

Декларациялар нәтиже бермегендіктен, олар әдетте JSP өрнектерімен немесе сценарийлермен бірге пайдаланылады. JSP үзіндісі сервер жүктелгеннен бері (немесе сервлет соңғы рет өзгертіліп, қайта жүктелгеннен бері) берілген бетке арналған сұраулар санын көрсетеді:

<%! private int accessCount = 0; %>Сервер жүктелгеннен бері бетке кіру саны:<%= ++accessCount %>

Сценарийлердегі сияқты, " %> " таңбалар тізбегін пайдалану қажет болса, ол үшін " % \> " тізбегін пайдаланыңыз. XML баламасы<%! Код %>болып табылады

Код

5. JSP директивалары

Директивалар JSP барлық сервлет класс құрылымына әсер етеді. Олар әдетте келесі пішінге ие: <%@ директивалық атрибуты = "мән" %> Сондай-ақ, бір директива үшін бірнеше атрибуттар параметрін біріктіруге болады: <%@ директива атрибуты1="мән1" атрибуты2="мән2" ... атрибутN="мәнN" %>

Директиваның екі негізгі түрі бар: page , ол импорт сыныптары, сервлет суперклассын өзгерту және т.б. сияқты әрекеттерді орындауға мүмкіндік береді; және қосу, JSP файлын сервлетке аудару кезінде файлды сервлет сыныбына кірістіру мүмкіндігін береді. JSP 1.0 нұсқасында қолдау көрсетілмейтін, бірақ JSP авторларына өздерінің тегтерін анықтауға мүмкіндік беретін taglib директивасын да атап өткен жөн. Бұл директива JSP 1.1 негізгі мүмкіндігі болады деп күтілуде.

5.1 JSP бет директивасы

Бет директивасы келесі регистрді ескеретін атрибуттардың біреуін немесе бірнешеуін көрсетуге мүмкіндік береді:
  • импорт = пакет .сынып"немесе импорт=" Package.class1,..., package.classN" . Импортталатын пакеттерді көрсетуге мүмкіндік береді. Мысалы:
    <%@ page import="java.util.*" %>
    Импорт атрибуты бірнеше рет пайдалануға болатын жалғыз төлсипат болып табылады.
  • contentType=" MIME түрі«немесе
    contentType=" MIME түрі; charset=Кодтау -Кейіпкерлер"
    Шығару үшін MIME түрін көрсетеді. Әдепкі мән мәтін/html болып табылады. Мысалы, директива
    <%@ page contentType="text/plain" %>
    сценарийді пайдалану сияқты нәтиже береді
    <% response.setContentType("text/plain"); %>
  • isThreadSafe="true|false" . Шын мәні (әдепкі) автордың сол дананың айнымалы мәндеріне қол жеткізуін үндестірген деген болжамға негізделген бірнеше сұраулар бір сервлет данасын пайдаланып бір уақытта өңделетін сервлет орындаудың қалыпты режимін көрсетеді. Жалған мәні сервлеттің SingleThreadModel үлгісін иеленуі керек екенін көрсетеді, мұнда жүйелі немесе бір уақыттағы сұраулар бөлек сервлет даналары арқылы өңделеді.
  • session="true|false" . True (әдепкі) мәні алдын ала анықталған сеанс айнымалысының (HttpSession түріндегі) бар сеансқа, егер бар болса, байланыстыру керек екенін, әйтпесе жаңа сеанс жасалып, байланыстырылатынын білдіреді. false мәні сеанстардың пайдаланылмайтынын көрсетеді және сеанс айнымалысына қатынасу әрекеті JSP бетін сервлетке аудару кезінде қатеге әкеледі.
  • buffer="sizekb|жоқ" . JspWriter out үшін буфер өлшемін орнатады. Әдепкі мән сервер параметрлеріне байланысты, бірақ 8кб-тан асуы керек.
  • autoflush="true|false" . Әдепкі мәні true буфер толып кеткен кезде автоматты түрде тазартылуы керек екенін көрсетеді. Сирек пайдаланылатын false мәні буфердің толып кетуі ерекше жағдайға әкелетінін көрсетеді. Төлсипатты buffer="none" мәніне орнатқанда, бұл төлсипатты "false" мәніне орнатуға рұқсат етілмейді.
  • ұзартады = пакет.сынып" . Жасалған сервлет үшін суперклассты көрсетеді. Бұл төлсипат өте сақтықпен пайдаланылуы керек, себебі сервер әлдеқашан суперклассты пайдаланып жатқан болуы мүмкін.
  • ақпарат = хабар" . getServletInfo әдісін пайдалану кезінде алуға болатын жолды көрсетеді.
  • errorPage=" url" . Осы бет өңдемейтін кез келген Throwable файлдары пайда болған кезде шақырылатын JSP бетін көрсетеді.
  • isErrorPage="true|false" . Бұл бетті басқа JSP беттеріндегі қателерді өңдеу үшін пайдалануға болатынын көрсетеді. Әдепкі мән жалған.
  • тіл = "java". Бұл атрибут қолданылатын бағдарламалау тілін анықтауға арналған. Әдепкі - "java", себебі ол бүгінгі күні қолдау көрсетілетін жалғыз бағдарламалау тілі.
XML-де директиваларды көрсетуге арналған синтаксис Директивалық түріатрибут=мән /> Мысал. үшін XML баламасы<%@ page import="java.util.*" %>болып табылады

5.2 JSP директивасын қамтиды

Бұл директива JSP бетін сервлетке аудару кезінде файлдарды қосуға мүмкіндік береді. Директиваны қолдану келесідей:

<%@ include file="относительный url" %>

Берілген URL әдетте сілтеме орналасқан JSP бетіне қатысты түсіндіріледі, бірақ кез келген басқа салыстырмалы URL мекенжайындағы сияқты, жүйеге веб-сервердің үй каталогына қатысты қызықтыратын ресурстың орнын қосу арқылы айта аласыз. URL басына "/". Қосылған файлдың мазмұны қарапайым JSP мәтіні ретінде өңделеді және сондықтан статикалық HTML, сценарий элементтері, директивалар және әрекеттер сияқты элементтерді қамтуы мүмкін.

Мысалы, көптеген сайттар әрбір бетте шағын шарлау жолағын пайдаланады. HTML фреймдерін пайдалану мәселелеріне байланысты бұл тапсырма көбінесе сайттың әрбір беті үшін HTML коды бірнеше рет қайталанатын беттің жоғарғы жағына немесе сол жақ жартысына шағын кестені орналастыру арқылы шешіледі. Қосу директивасы бұл мәселені шешудің ең табиғи жолы болып табылады, бұл әзірлеушіні HTML-ді әрбір жеке файлға көшіру қорқынышынан құтқарады. Бұл келесідей болады:

Сервлет оқулығы: JavaServer Pages (JSP) 1.0 <%@ include file="/navbar.html" %>

6. Сценарий элементтері мен директиваларды пайдалану мысалы

Бұл қарапайым мысал әртүрлі JSP құрылымдарын пайдалануды көрсетеді: өрнектер, сценарийлер, мәлімдемелер және директивалар. Сондай-ақ бастапқы файлды жүктеп алуға немесе Интернеттен осы сценарийге қоңырау шалуға болады.

JavaServer беттерін пайдалану

JavaServer беттерін пайдалану

Әртүрлі JSP механизмдері арқылы жасалған кейбір динамикалық мазмұн:

  • Өрнек.
    Сіздің хост аты:<%= request.getRemoteHost() %>.
  • Скрипт.
    <% out.println("Дополнительные данные запроса: " + request.getQueryString()); %>
  • Декларация (өрнекпен бірге).
    <%! private int accessCount = 0; %>Сервер жүктелгеннен бері бетке кіру саны:<%= ++accessCount %>
  • Директива (өрнекпен бірге).
    <%@ page import = "java.util.*" %>Ағымдағы күн:<%= new Date() %>

7. Алдын ала анықталған айнымалылар

JSP өрнектеріндегі және сценарийлеріндегі кодты жеңілдету үшін сізге автоматты түрде анықталған сегіз айнымалылар жинағы беріледі, олар кейде деп аталады. жасырын объектілер. Қол жетімді айнымалылар сұрау, жауап, шығыс, сеанс, қолданба, конфигурация, pageContext және бет болып табылады. Әрі қарай олардың әрқайсысын бөлек қарастырамыз.

7.1 сұрау

Бұл сұрау параметрлеріне (getParameter әдісі арқылы), сұрау түріне (GET, POST, HEAD және т.б.) және кіріс HTTP тақырыптарына (cookie файлдары, Referer және т.б.) қол жеткізуге мүмкіндік беретін сұраумен байланысты HttpServletRequest нысаны. ). d...). Қарапайым тілмен айтқанда, сұрау ServletRequest ішкі сыныбы болып табылады және HTTP протоколынан басқа протокол пайдаланылса, HttpServletRequest-тен өзгеше болуы мүмкін, бұл іс жүзінде ешқашан болмайды.

7.2 жауап

Бұл клиент сұрауына жауаппен байланысты HttpServletResponse түріндегі нысан. Шығыс ағыны (төменде қараңыз) буферленгендіктен, мүмкін HTTP күй кодтары мен жауап тақырыптарын өзгерту, тіпті бұл қалыпты сервлетте рұқсат етілмесе де, бірақ кейбір шығыс деректері клиентке әлдеқашан жіберілген болса ғана.

7,3 шықты

Бұл клиентке шығысты жіберу үшін пайдаланылатын PrintWriter нысаны. Дегенмен, жауап нысанын (алдыңғы бөлімді қараңыз) пайдалы ету үшін PrintWriter, JspWriter буферленген нұсқасын пайдалану керек. Бет директивасының буфер атрибутының мәнін өзгерту арқылы буфер өлшемін өзгертуге және тіпті буферлеуді өшіруге болатынын есте сақтаңыз. Бұл мәселе егжей-тегжейлі талқыланады. Сондай-ақ, out тек скрипттер арқылы ғана қолданылатынын ескеріңіз, өйткені JSP өрнектері шығыс ағынына автоматты түрде орналастырылады, бұл нақты шақыру қажеттілігін болдырмайды.

7.4 сессия

Бұл сұраумен байланысты HttpSession нысаны. Сеанстар автоматты түрде жасалады және бұл айнымалы кіріс сеанстарына сілтемелер болмаса да бар. Бет директивасының сеанс төлсипатын пайдаланып сеанстарды пайдалануды өшірген кезде ғана ерекше жағдай болады (қараңыз). Бұл жағдайда сеанс айнымалысына сілтеме JSP бетін сервлетке аудару кезінде қателерге әкеледі.

7.5 қолданбасы

Бұл getServletConfig().getContext() әдісін пайдалану арқылы алынған ServletContext түріндегі нысан.

7.6 конфигурация

Бұл ағымдағы бетке арналған ServletConfig нысаны.

7.7 бетМәтінмән

JSP тиімдірек JspWriter s сияқты серверге тән мүмкіндіктерді құмсалуға арналған жаңа PageContext сыныбын ұсынады. Идея мынада, егер сіз оларға тікелей емес, осы сынып арқылы қол жеткізсеңіз, сіздің кодыңыз «тұрақты» сервлет/JSP қозғалтқыштарында жұмыс істей алады.

7.8 бет

Негізінде бұл синоним және Java-мен жұмыс істегенде қажет емес. Бұл айнымалы болашаққа, Java-дан басқа сценарий тілдері пайда болуы мүмкін кезде жасалған.

8. Әрекеттер

Әрекеттер JSP серверлері сервлет механизмінің жұмысын басқару үшін XML синтаксисі бар құрылымдарды пайдаланады. Сіз файлды динамикалық түрде қоса аласыз, JavaBeans құрамдастарын қайта пайдалана аласыз, пайдаланушыны басқа бетке бағыттай аласыз немесе Java плагині үшін HTML жасай аласыз. Келесі әрекеттер қолайлы:

Барлық осы әрекеттер төменде егжей-тегжейлі талқыланады. Барлық XML сияқты, элемент және атрибут атаулары регистрге сезімтал екенін есте сақтаңыз.

8.1 jsp: әрекетті қосу

Бұл әрекет жасалған бетке файлдарды кірістіруге мүмкіндік береді. Әрекет синтаксисі: пакет залы; қоғамдық класс SimpleBean (жеке жол хабары = «Хабар мәтіні көрсетілмеген»; жалпы жол getMessage() (қайтару(хабарлама); ) жалпы жарамсыз setMessage(Жолды хабарлама) ( this.message = хабар; ) )

8.3 jsp:useBean пайдалану туралы қосымша мәліметтер

Бұршақты пайдаланудың ең қарапайым жолы - конструкцияны пайдалану
пакет.сынып" />
бұршақты жүктеу үшін, содан кейін оның қасиеттерін өзгерту және алу үшін jsp:setProperty және jsp:getProperty пайдаланыңыз. Дегенмен, тағы екі жол бар. Біріншіден, контейнер пішімін пайдалануға болады, ол:

Дене

сәйкестігін қамтамасыз ету мақсатында Денелербар бұршақ табылған және пайдаланылған кезде емес, бұршақ алғаш рет жасалғанда ғана. Төменде талқыланғандай, бұршақтарды ортақ пайдалануға болады, сондықтан әрбір jsp:useBean өрнегі жаңа бұршақ данасын жасауға әкелмейді. Екіншіден, идентификатор мен сыныптан басқа, пайдалануға болатын тағы үш атрибут бар: ауқым, түрі және beanName. Бұл атрибуттар келесі кестеде сипатталған.

АтрибутҚолдану
идентификаторБұршаққа қатысты айнымалының атын береді. Егер идентификаторы мен ауқымы бірдей мәндері бар бұршақ табылса, жаңа дананы жасаудың орнына бұрын жасалған нысан пайдаланылады.
сыныпБұршақ бумасының толық жарамды атауын көрсетеді.
ауқымыБұршақ қолжетімді болуы керек аумақты көрсетеді. Төрт жарамды мәнді қабылдай алады: бет, сұрау, сеанс және қолданба. Әдепкі мән - page , яғни бұршақ тек ағымдағы бетте қол жетімді (ағымдағы беттің PageContext ішінде орналастырылған). Сұрау мәні бұршақтың тек ағымдағы клиент сұрауы үшін қол жетімді екенін білдіреді (ServletRequest нысанында орналасқан). Мән сеансы нысанның ағымдағы HttpSession қызмет ету мерзімі ішінде барлық беттерге қолжетімді екенін білдіреді. Соңында, мән қолданбасы оның бірдей ServletContext пайдаланатын барлық беттерге қолжетімді екенін білдіреді. Бұл төлсипатты қажет ететін себебі, jsp:useBean бірдей идентификаторы және ауқымы бар бұрыннан бар нысан жоқ болса, жаңа нысан данасын жасауға себеп болады. Әйтпесе, бұрыннан бар нысан пайдаланылады және барлық jsp:setParameter элементтері немесе jsp:useBean тегтері арасындағы кез келген басқа элементтер еленбейді.
түріНысанға сілтеме жасайтын айнымалының түрін көрсетеді. Сыныптың, суперкласстың немесе интерфейстің атауына сәйкес келуі керек. Мұны есте сақтаңыз Атыайнымалы id атрибуты арқылы көрсетіледі.
бұршақ атауыИнстанция әдісімен қолданылатын бұршақтың атын береді. Type және beanName параметрін көрсетіп, сынып төлсипатын өткізіп жіберуге болады.

8.4 jsp:setProperty әрекеті

Сіз бұрын сипатталған бұршақтардың сипаттарына мәндерді тағайындау үшін jsp:setProperty пайдалана аласыз. Мұны екі жолмен жасауға болады. Біріншіден, мысалда көрсетілгендей jsp:setProperty файлын jsp:useBean элементінен кейін, бірақ одан тыс пайдалануға болады:

...

Бұл жағдайда, jsp:setProperty бар бұршақтың табылғанына немесе жаңа дананың жасалғанына қарамастан орындалады. Басқа нұсқа - jsp:setProperty файлын jsp:useBean элементінің негізгі бөлігіне орналастыру, басқа мысалда көрсетілгендей:

...

Бұл жағдайда jsp:setProperty бар нысан табылған кезде емес, жаңа нысан данасы жасалғанда ғана орындалады.

jsp:setProperty әрекеті келесі төрт төлсипатқа мүмкіндік береді:

АтрибутҚолдану
атыБұл талап етілетін төлсипат қасиеттері орнатылатын бұршақты көрсетеді. jsp:useBean элементі jsp:setProperty элементін пайдаланудан бұрын болуы керек.
мүлікБұл талап етілетін төлсипат сіз орнатқыңыз келетін сипатты орнатады. Дегенмен, ерекше жағдай бар: «*» мәні атаулары бұршақ сипат атауларына сәйкес келетін барлық сұрау параметрлері сәйкес сипат орнатушысына жіберілетінін білдіреді.
мәнБұл қосымша төлсипат сипат мәнін орнатады. Жол мәндері автоматты түрде сәйкес сыныптың стандартты valueOf әдісі арқылы сандық, логикалық, логикалық, байт, байт, таңба және таңба мәндеріне түрлендіріледі. Мысалы, логикалық немесе логикалық сипатқа арналған "шын" мәні Boolean.valueOf әдісі арқылы түрлендіріледі және int немесе Integer сипатына арналған "42" мәні Integer.valueOf әдісі арқылы түрлендіріледі. Мән мен парам атрибуттарын бір уақытта пайдалана алмайсыз, бірақ оларды мүлде пайдаланбауды таңдауға болады. Төмендегі param атрибутының сипаттамасын қарап шығыңыз.
парамБұл қосымша төлсипат сипатты шығарып алу үшін пайдаланылатын сұрау параметрін орнатады. Бұл параметр ағымдағы сұрауда болмаса, ешқандай әрекет орындалмайды: жүйе Жоқнөлдік мәнді сипат орнатушы әдісіне береді. Осылайша, бұршақта әдепкі сипаттарды қолдануға рұқсат етіледі, оларды сұрау параметрлері талап еткен жағдайда ғана қайта белгілейді. Мысалы, келесі фрагмент мынаны білдіреді: "numItems сұрау параметрінің мәніне сәйкес numberOfItems сипатын орнатыңыз және мұндай параметр сұрауда болмаса, ешқандай әрекет орындалмайды." Мән немесе param қолданбасаңыз, ол параметр атауын сипат атауымен бірдей етіп көрсеткенмен бірдей болады. Аты сипат атауларына сәйкес келетін сұрау сипаттарын автоматты түрде пайдалану принципін қолдануға және сипат атауын "*" мәніне орнату және мән мен параметр параметрлерін өткізіп жіберу арқылы әрі қарай өтуге болады. Бұл жағдайда сервер жарамды сипаттарды өңдейді және олардың бірдей атауларға сәйкес келетінін көру үшін параметрлерді сұрайды.
Төменде қарапайым сандар кестесін құру үшін бұршақты пайдаланатын мысал келтірілген. Егер сұрау деректерінде numDigits параметрі бар болса, ол бұршақтың numDigits сипатына жіберіледі. numPrimes үшін де солай.

JspPrimes.jsp

JSP көзін жүктеп алу үшін бастапқы код сілтемесін тінтуірдің оң жақ түймешігімен басыңыз. Сондай-ақ, jsp:useBean элементі сілтеме жасаған NumberedPrimes бұршағына арналған бастапқы кодты жүктеп алуға болады. NumberedPrimes қолданбасында пайдаланылатын басқа Java сыныптары үшін бастапқы код каталогын шолыңыз. Мұны интернетте сынап көрудің ең жақсы жолы - алдыңғы жағы болып табылатын HTML парағынан бастау.

JSP ішінде JavaBeans қайта пайдалану

JSP ішінде JavaBeans қайта пайдалану

Кейбір символдық жай сандар:

8.5 jsp:getProperty әрекеті

Бұл элемент бұршақ қасиетінің мәнін анықтайды, оны жолға түрлендіреді және оны шығыс ағынына жібереді. Әрекет екі төлсипатты орнатуды талап етеді: jsp:useBean әрекетінде алдын ала орнатылған бұршақтың аты және мәні анықталатын сипаттың аты. Төменде бұл әрекетті пайдаланудың мысалы берілген. Басқа мысалдар үшін және бөлімдерін қараңыз.

...

  • Элементтер саны:
  • Біреуінің бағасы:

8.6 jsp: алға әрекет

Бұл әрекет сұрауды басқа бетке жіберуге мүмкіндік береді. Ол бір атрибутты пайдаланады, ол қатысты URL мекенжайын қамтуы керек. Ол не статикалық мән болуы мүмкін немесе келесі екі мысалда көрсетілгендей сұрау процесі кезінде есептелуі мүмкін:

8.7 jsp:плагин әрекеті

Бұл әрекет Java плагинін пайдаланатын апплеттерді іске қосу үшін қажетті OBJECT немесе EMBED элементін (пайдаланылатын шолғыш түріне байланысты) кірістіруге мүмкіндік береді.

9. Түсініктемелер мен дәйексөз белгілері

Міне, түсініктеме енгізу немесе берілген тег үшін сақталған таңбаларды пайдалану қажет болғанда пайдалануға болатын бірнеше конструкциялар:

СинтаксисМақсат
<%-- комментарий --%>

JSP файлын ашумен байланысты мәселелердің ең көп тараған себебі - компьютерде орнатылған сәйкес қолданбалардың болмауы. Бұл жағдайда JSP пішіміндегі файлдарға қызмет көрсететін қолданбаны табу, жүктеп алу және орнату жеткілікті - мұндай бағдарламалар төменде қол жетімді.

Іздеу жүйесі

Файл кеңейтімін енгізіңіз

Көмектесіңдер

Анықтама

Біздің компьютер оқымайтын файлдардағы кейбір кодталған деректерді кейде Блокнот бағдарламасында көруге болатынын ескеріңіз. Осылайша біз мәтіннің немесе сандардың фрагменттерін оқимыз - бұл әдіс JSP файлдарында да жұмыс істейтінін тексерген жөн.

Тізімдегі қолданба әлдеқашан орнатылған болса не істеу керек?

Көбінесе орнатылған қолданба JSP файлына автоматты түрде сілтеме жасауы керек. Егер бұл орын алмаса, JSP файлын жаңадан орнатылған қолданбамен қолмен сәтті байланыстыруға болады. JSP файлын тінтуірдің оң жақ түймешігімен нұқыңыз, содан кейін қол жетімділердің ішінен «Әдепкі бағдарламаны таңдау» опциясын таңдаңыз. Содан кейін сіз «Көру» опциясын таңдап, сүйікті қолданбаңызды табуыңыз керек. Енгізілген өзгертулер «OK» опциясы арқылы мақұлдануы керек.

JSP файлын ашатын бағдарламалар

Windows
Mac OS
Linux

Неліктен JSP файлын аша алмаймын?

JSP файлдарына қатысты мәселелердің басқа себептері де болуы мүмкін. Кейде тіпті JSP файлдарын қолдайтын бағдарламалық құралды компьютерге орнату да мәселені шешпейді. JSP файлын ашу және онымен жұмыс істеу мүмкін еместігінің себебі де болуы мүмкін:

Тіркеу жазбаларындағы сәйкес емес JSP файл байланыстары
- біз ашатын JSP файлының бұзылуы
- JSP файлының инфекциясы (вирустар)
- тым аз компьютер ресурсы
- ескірген драйверлер
- Windows тізілімінен JSP кеңейтімін жою
- JSP кеңейтімін қолдайтын бағдарламаның толық орнатылмауы

Бұл мәселелерді шешу JSP файлдарын ашуға және оңай жұмыс істеуге әкелуі керек. Егер сіздің компьютеріңізде әлі де файлдармен ақаулар болса, оның нақты себебін анықтайтын маманның көмегіне жүгіну керек.

Менің компьютерім файл кеңейтімдерін көрсетпейді, не істеуім керек?

Стандартты Windows жүйесінің параметрлерінде компьютер пайдаланушысы JSP файл кеңейтімін көрмейді. Мұны параметрлерде сәтті өзгертуге болады. Тек «Басқару тақтасына» өтіп, «Көру және жекелендіру» тармағын таңдаңыз. Содан кейін «Қалта параметрлері» бөліміне өтіп, «Көру» тармағын ашу керек. «Көру» қойындысында «Белгілі файл түрлерінің кеңейтімдерін жасыру» опциясы бар - сіз осы опцияны таңдап, «OK» түймесін басу арқылы операцияны растауыңыз керек. Осы кезде барлық файлдардың, соның ішінде JSP кеңейтімдері файл атауы бойынша сұрыпталған болуы керек.

Бұл бетте тегін және пайдалану оңай PDF24 Creator көмегімен .jsp файлын PDF файлына оңай түрлендіру жолын түсіндіреді. Сипатталған түрлендіру әдісі тегін және қарапайым. PDF24 Creator PDF принтерін орнатады және файлды PDF форматына түрлендіру үшін осы принтерде .jsp файлын басып шығаруға болады.

JSP файлын PDF файлына түрлендіру үшін не қажет немесе JSP файлының PDF нұсқасын қалай жасауға болады

JSP файлдары немесе .jsp кеңейтімі бар файлдарды PDF принтері арқылы PDF форматына оңай түрлендіруге болады.

PDF принтері - кез келген басқа принтер сияқты пайдалануға болатын виртуалды принтер. Кәдімгі принтерден айырмашылығы PDF принтері PDF файлдарын жасайды. Сіз физикалық қағазға басып шығармайсыз. PDF принтері бастапқы файлдың мазмұнын PDF файлына басып шығарады.

Осылайша басып шығаруға болатын кез келген файлдың PDF нұсқасын жасауға болады. Тек оқу құралы арқылы файлды ашыңыз, басып шығару түймесін басыңыз, виртуалды PDF принтерін таңдаңыз және «Басып шығару» түймесін басыңыз. Егер сізде JSP файлына арналған оқу құралы болса және оқырман файлды басып шығара алса, файлды PDF пішіміне түрлендіруге болады.

PDF24 тегін және қолдануға оңай PDF принтерін осы беттен жүктеп алуға болады. PDF24 Creator бағдарламасын жүктеп алу үшін осы мақаланың оң жағындағы жүктеп алу түймесін басыңыз. Осы бағдарламалық құралды орнатыңыз. Орнатылғаннан кейін сізде Windows жүйесінде тіркелген жаңа басып шығару құрылғысы болады, оны .jsp файлынан PDF файлдарын жасауға немесе кез келген басқа басып шығаруға болатын файлды PDF форматына түрлендіруге пайдалануға болады.

Бұл қалай жұмыс істейді:

  1. PDF24 Creator бағдарламасын орнатыңыз
  2. .jsp файлын файлды аша алатын оқу құралымен ашыңыз.
  3. Файлды виртуалды PDF24 PDF принтерінде басып шығарыңыз.
  4. PDF24 Assistant жаңа файлды PDF ретінде сақтауға, электрондық пошта, факс арқылы жіберуге немесе өңдеуге болатын терезені ашады.

JSP файлын PDF файлына түрлендірудің балама жолы

PDF24 PDF файлдарын жасау үшін пайдалануға болатын бірнеше онлайн құралдарды ұсынады. Қолдау көрсетілетін файл түрлері қолжетімді болған сайын қосылады және JSP файл пішіміне де қолдау көрсетіліп қойған болуы мүмкін. Түрлендіру қызметінде әртүрлі интерфейстер бар. Олардың екеуі келесідей:

PDF24 онлайн PDF түрлендіргіші PDF форматына түрлендіруге болатын көптеген файлдарды қолдайды. PDF нұсқасын алғыңыз келетін JSP файлын таңдап, «түрлендіру» түймесін басыңыз, сонда сіз файлдың PDF нұсқасын аласыз.

Сондай-ақ PDF24 электрондық поштасының PDF түрлендіргіші бар, оны файлдарды PDF пішіміне түрлендіру үшін де пайдалануға болады. E-Mail PDF Converter қызметіне электрондық хат жіберіңіз, JSP файлын осы электрондық поштаға тіркеңіз және бірнеше секундтан кейін сіз PDF файлын кері аласыз.

 
Мақалалар АвторыТақырып:
MegaFon All Inclusive VIP тарифі - сипаттамасы, қосылуы және құны Барлығы қосылған VIP тарифтік жоспары
All Inclusive VIP тарифтік жоспары байланыстарды жұмыс және белсенді жеке байланыс үшін пайдаланатын абоненттерге премиум сервисті ұсынады. Бұл айтарлықтай байланыс шығындары бар ең жақсы қызметтер пакеті, оны ұйым үшін сатып алуға болады
Теледидар бренді tcl өндірушіге шолулар
Tcl теледидарлары - бұл түпнұсқа дизайнды біріктіретін танымал қытайлық компанияның кең ауқымды құрылғылары. Соңғысы жұқа, дерлік көрінбейтін жақтаумен және B ортасында немесе бүйірінде орналасқан қысқа, тұрақты аяқтармен сипатталады.
Қай теледидарға қосылған дұрыс - кабельдік немесе спутниктік?
Қазіргі әлемде, әдетте, саяжайлар елді мекендерден айтарлықтай қашықтықта орналасқан, яғни олар көптеген коммуникациялардан ғана емес, сонымен қатар өркениеттің басқа артықшылықтарынан да үзілген. Сондықтан блоктық контейнерлерден саяжай үйлерін жасау немесе
iPhone өздігінен қайта жүктеледі
Күту режимінде немесе белсенді режимде iPhone өзін қайта жүктеу кезінде сирек, бірақ өте жағымсыз жағдайды қарастырайық. Сонымен қатар, құрылғының моделі маңызды емес. Мақаланың соңында біз сізге жағдайды қалай жеңуге болатынын айтамыз. Сіздің iPhone-да не дұрыс емес екенін қалай анықтауға болады