Počítače Okna Internet

Podmíněné konstrukce. Pracovní prostředí Eclipse. Java identifikátory

Syntaxe jazyka Java je založena na syntaxi jazyka C, ale existují následující rozdíly:

identifikátory:

  • při psaní identifikátoru lze použít jak latinská písmena, tak písmena národních abeced.
  • identifikátor může obsahovat znak dolaru.

Zde jsou základní pravidla syntaxe

  • Velká a malá písmena jsou považována za různé znaky, takže J a j jsou zcela odlišné proměnné.
  • Při psaní identifikátoru se používají latinská písmena a písmena národních abeced, číslice, podtržítko a znaky dolaru. Identifikátor nemůže začínat číslem ani obsahovat mezery. Délka identifikátoru není omezena, ale kvůli čitelnosti programu byste se měli snažit používat krátká a smysluplná jména.
  • Existují dva druhy komentářů.
    • Víceřádkový komentář. Komentáře v textu jsou uzavřeny v závorkách jako
      / * toto je text komentáře * /
      a lze je zadat kdekoli, zejména u operátorů.
    • Jeden řádek komentáře. Zobrazit komentář:
      // toto je text komentáře - platí pouze do konce řádku
  • Každá věta končí „; “.
  • Na řádek lze umístit více příkazů.
  • Kudrnaté závorky () označují složené prohlášení. Všichni operátoři mezi nimi jsou považováni za jednoho operátora.
  • Všechny použité typy musí být popsány před jejich prvním použitím. Reklamy lze umístit kdekoli v programu.
  • Znak je uzavřen v jednoduchých uvozovkách, řetězec v uvozovkách.

Klíčová slova

Klíčová slova mají pro překladač zvláštní význam a tato slova lze použít pouze ve smyslu, ve kterém jsou definována. Vyhrazená slova nelze použít jako vlastní identifikátory.

Jakákoli změna v proměnných jednoho změní proměnné druhého. Když je objekt deklarován, je načtena adresa paměťového místa, což je obvykle adresa prvního paměťového místa ve vyhrazené oblasti obsahující všechna data související s objektem. Jakákoli manipulace s tímto objektem odkazuje na tuto adresu. Porovnání dvou instancí objektu se provádí odkazem na tyto instance.

Příklad kódu Java enum

Jedná se o proces, který do třídy přidává funkce, aniž by bylo nutné přepsat veškerý kód v této třídě. Nová třída dědí všechna data a metody třídy, ze které je odvozena. Pak je nutné, aby v nadřazené třídě existoval konstruktor bez parametru. Můžete například použít jiný přístup k kreslení plných obdélníků, než ten, který již byl probrán, například vytvořením nové obdélníkové třídy, která dědí obdélníkovou nadřazenou třídu. k datům obdélníku musí být veřejné, což je v rozporu se zásadou zapouzdření.

PROTI Jazyk Java následující slova jsou vyhrazena klíčová slova

Vyhrazená slova skutečný, Nepravdivé a nula nejsou klíčové, ale nemohou být použity jako identifikátory v programu.

Klíčová slova lze rozdělit do skupin:

Řešením je definovat proměnné třídy pomocí chráněného modifikátoru. Členové třídy, která je chráněna „chráněnými“, jsou přístupní z odvozených tříd, ale ne z jiných tříd. Klepnutím v kontextu apletu jej aktivujete. Mnoho jazyků umožňuje předávání argumentů buď podle hodnoty, nebo podle adresy. Protože skutečné adresy argumentů nejsou metodě známy, metoda je nemůže upravit.

Co je to podmíněná struktura?

Pokud je argument předán na adresu metody, proměnná argumentu je předána metodě: změny provedené na hodnotě proměnné metodou jsou okamžité a konečné. Podmíněné struktury se nazývají příkazy pro testování, zda je podmínka pravdivá nebo ne. Tyto podmíněné struktury mohou být spojeny se strukturami, které se opakují v souladu s implementací podmínky, tyto struktury se nazývají smyčkové struktury.

Primitivní datové typy

byte, short, int, long, char, float, double, boolean

Smyčky a větve

if, else, switch, case, default, while, do, break, continue, for

Výjimky

zkoušet, chytat, nakonec házet, házet

Obory soukromé, chráněné, veřejné
Prohlášení, import

import, balíček, třída, rozhraní, rozšiřuje, implementuje, statické, konečné, neplatné, abstraktní, nativní

Kratší způsob provádění testu

Syntaxe pro tento výraz. Díky následující struktuře nazývané ternární operátor je možné provést test s mnohem méně náročnou strukturou.

  • Podmínka musí být mezi závorkami.
  • Když je podmínka pravdivá, provede se příkaz na levé straně.
  • Pokud je podmínka nepravdivá, provede se správný příkaz.
Když je testovací výraz roven jedné z hodnot následujících za polem, provede se následující seznam příkazů.

Základní jazykové operace

Výchozí klíčové slovo předchází seznamu operátorů, které budou provedeny, pokud výraz nikdy nevyhodnotí jednu z hodnot. Tyto struktury se někdy nazývají opakující se instrukce nebo iterace. Nejběžnějším způsobem provedení smyčky je vytvoření čítače a zastavení smyčky, když čítač překročí určitou hodnotu.

Vytvořit, vrátit, zavolat

nový, návrat, tohle, super

Vícevláknové

synchronizované, nestálé

Vyhrazená klíčová slova
Zvláštní schůzka

instanceof, enum, assert, transient, strictfp

Provozní značky

Operační značky jsou určeny k označení aritmetických, logických a jiných operací. Nejčastěji používané provozní značky jsou uvedeny v tabulce.

Tento příkaz provede seznam příkazů, pokud je splněna podmínka. Cyklus může trvat jednu nebo více hodnot bez ukončení cyklu. Syntaxe tohoto výrazu je „spojitá“, obvykle je spojena s podmíněnou strukturou, jinak budou řádky mezi tímto příkazem a koncem smyčky zastaralé.

Relevantní diskuse nalezené ve fóru

Naštěstí díky průběžné instrukci můžete tuto hodnotu zvážit samostatně a poté pokračovat ve smyčce! Naopak může být nutné předčasně zastavit smyčku za jiné podmínky, než je uvedeno v záhlaví smyčky. Budeme mít tři aspekty identifikátorů, které musíte pochopit. Platné identifikátory: pravidla používaná kompilátorem k určení, zda je jméno platné. Měli byste je znát a používat ve svých budoucích aplikacích. ... Identifikátor je název, který identifikuje třídu, proměnnou nebo metodu v programu.

Úkon Stručný popis
+ Přidání
- Odčítání
* Násobení
/ Divize
= Úkol
++

Přírůstek (zvýšení o 1); x ++; ekvivalent x = x + 1;

--

Snížení (snížení o 1); X--; ekvivalent x = x-1;

+= y + = x; ekvivalent y = y + x;
-= y- = x; ekvivalent y = y-x;
*= y * = x; ekvivalent y = y * x;
/= y / = x; ekvivalent y = y / x;
%= y% = x; ekvivalent y = y% x;
== Rovná se
!= nerovný
> Více
< Menší
>= více nebo rovno
<= menší nebo rovno
% zbytek celočíselného dělení
&& logické A
|| logické NEBO
! logická negace NE

Poznámka.

Zde jsou pravidla, která potřebujete znát. V praxi neexistuje žádný počet znaků, které může identifikátor obsahovat. Ve svých programech nemůžete použít klíčové slovo jako identifikátor.

  • Nemusí to začínat číslem.
  • Níže je uveden kompletní seznam dostupných klíčových slov.
Zde je několik příkladů platných ID.

Zde je několik příkladů neplatných identifikátorů, měli byste vědět proč. Pokud s těmito konvencemi souhlasíte a začnete kódovat, mohou snížit vaše úsilí při testování, údržbě a zlepšování. A také přemýšlejte o složených závorkách, někdy jsou psány na stejném řádku, díky čemuž je kód nečitelný.

          1. Divize
            • Pokud jsou rozdělena dvě celá čísla, pak máme výsledek celočíselného dělení:
              5/3 = 1. Zbývající část celočíselného dělení je však 5% 3 = 2.
            • pokud je jeden z argumentů reálné číslo, pak máme obvyklé rozdělení:
              5 / 2.0 = 2.5
          2. Zvyšování a snižování

Existují dvě formy přírůstku: forma prefixu, forma postfixu.

Také jména obvykle musí být kombinací jména slovesa. ... Jsou to pouze proměnné soukromé instance. Jediný způsob, ke kterému mají přístup zvenčí své třídy, je prostřednictvím metod třídy. Metody, které mění hodnotu vlastnosti, se nazývají settery a metody, které získávají hodnotu vlastnosti, se nazývají gettery. Mějte na paměti, že ve své třídě nemusíte mít proměnnou s názvem label. Název vlastnosti je odvozen z getterů a setterů, nikoli z proměnných ve vaší třídě. Model událostí se často používá v grafických aplikacích, když se spustí událost, jako je kliknutí, získají informace jiné objekty, které by mohly být léčeny, když k takové události dojde.

Předponový formulář

Nejprve se proměnná zvýší (nebo sníží) o jednu, poté se provedou další výpočty s novou hodnotou.

int a = 5; int b = 5; int y = 10 + -a; int z = 10 + ++ b; System.out.println ("a =" + a); System.out.println ("b =" + b); System.out.println ("y =" + y); System.out.println ("z =" + z);

Výstupem bude:

a = 4
b = 6
y = 14
z = 16

V tomto případě je proměnná a nejprve snížena o 1, b je zvýšena o jednu a poté je vypočítán výraz pro y a z.

Tyto objekty se nazývají posluchači. Názvy metod používané k přidání posluchače se zdrojem události musí používat předponu přidání následovanou typem posluchače. Názvy metod použité k odebrání posluchače musí používat předponu odebrání následovanou typem naslouchacího procesu, podle stejných pravidel jako metoda přidání záznamu. Typ argumentu, který chcete přidat nebo odebrat, musíte předat jako argument metodě. Nezapomeňte, že platný identifikátor pro proměnnou je také platným identifikátorem pro metodu nebo třídu.

Postfixový formulář

U postfixového formuláře je výraz nejprve vyhodnocen se starou hodnotou proměnné a hodnota proměnné se po vyhodnocení výrazu zvýší (nebo sníží) o jednu.

int a = 5; int b = 5; int y = 10 + a--; int z = 10 +b ++; System.out.println ("a =" + a); System.out.println ("b =" + b); System.out.println ("y =" + y); System.out.println ("z =" + z);

Výstupem bude:
a = 4
b = 6
y = 15
z = 15

Jinými slovy, musíte přijmout, že identifikátor je legální, i když nedodržuje standardy pojmenování. Zde se zabýváme jednou z nejdůležitějších kapitol: podmínky jsou dalším základním konceptem programování. Ve třídě se čtení a provádění provádí postupně, to znamená řádek po řádku. S podmínkami můžeme spravovat různé scénáře bez čtení celého kódu. Rychle si uvědomíte, že všechny vaše projekty jsou jen posloupnosti a vztahy podmínek a cyklů.

Pojďme přímo k jádru věci. Než budete moci vytvářet a vyhodnocovat podmínky, budete potřebovat vědět, že k tomu použijeme takzvané „logické operátory“. Používají se hlavně v prostředí k vyhodnocení různých možných případů. vědět.

Výraz bude vyhodnocen se starou hodnotou proměnných. Po vyhodnocení výrazů pro y a z proměnná A klesá o 1, proměnná b zvýší o jeden.

Logické operace

Pokud je první hodnota v operaci „&&“ nepravdivá, pak není zaškrtnuta druhá hodnota, v operaci „nebo“ naopak, pokud je první hodnota pravdivá, druhá není zaškrtnuta.

Pokud jde o druhé, lépe porozumíte příkladu, který bude uveden na konci této kapitoly. To vám umožňuje určit podmínku „Stejný boj jako ten předchozí“. ... Představte si program, který uživatele požádá o zadání relativního celého čísla. Podmíněné struktury nám umožní spravovat tyto tři scénáře. Struktura těchto podmínek je následující.

Použijme náš malý příklad. V tomto případě naše třída zobrazuje „kladné číslo“. Pojďme vysvětlit, co se děje. Když jste nám představili podmíněnou strukturu, dali jste složená rovnátka a nedáváte je tam. Ve skutečnosti jsou složené závorky přítomny v „normální“ podmíněné struktuře, ale když kód v jednom z nich sestává pouze z jednoho řádku, složené závorky se stanou volitelnými.

Pravdivá tabulka operací "&&", "||"

A B A && B A || B
Nepravdivé Nepravdivé Nepravdivé Nepravdivé
Nepravdivé Skutečný Nepravdivé Skutečný
Skutečný Nepravdivé Nepravdivé Skutečný
Skutečný Skutečný Skutečný Skutečný

Zde je příklad.

Tomu se říká odsazení! Bude velmi užitečné, když vás najdeme ve svých budoucích programech. Představte si na dvě sekundy, že máte 700 řádkový program se 150 podmínkami a vše je napsáno podél levého okraje. Bude obtížné odlišit testy od kódu. Než budete pokračovat, měli byste vědět, že nemůžete zkontrolovat rovnost řetězců! Tento bod probereme později. Nyní použijeme booleovské operátory, které jsme viděli na začátku, při kontrole, zda je dané číslo ve známém rozsahu.

Zkontroluje například, zda je celé číslo mezi 50 a. Tento operátor vás seznámí s konceptem nastavené křižovatky. Zde máme dvě podmínky, z nichž každá definuje množinu. Podmínka tedy přeskupí čísla patřící do těchto dvou množin, tj. Čísla od 51 do 99 včetně. Zvažte interval, který chcete definovat.

boolean a = true; boolean b = true; boolean c = false; boolean d = false; System.out.println ("true && true =" + (a && b)); // true true result true System.out.println ("true && false =" + (a && c)); // true false výsledek je false System.out.println ("false && true =" + (c && a)); // falešný výsledek ture nepravda System.out.println ("false && frue =" + (c && d)); // false false result false System.out.println ("true || true =" + (a || b)); // true true result true System.out.println ("true || false =" + (a || c)); // true false result true System.out.println ("false || true =" + (c || a)); // false false result true System.out.println ("false || false =" + (c || d)); // false false výsledek je false

Přepínač se používá hlavně tehdy, když chceme podmínky „a la carte“. Vezměte si příklad průzkumu se dvěma otázkami: za každou z nich můžeme získat pouze 0 nebo 10 bodů, což nám dává například tři poznámky a tedy tři možná hodnocení.

Pojďte si tuto kapitolu příležitostně přečíst znovu. ... V tomto případě použijeme přepínač, abychom se vyhnuli zbytečnému opakování a trochu odlehčili kód. Zde jsou operace prováděné tímto výrazem. Třída vyhodnotí výraz po přepnutí, jinak přejde na další kartu atd. Chcete -li lépe ocenit užitečnost této instrukce, odstraňte všechny přestávky; a zkompilovat svůj program. Ternární podmínky jsou poměrně složité a relativně málo využívané. Zvláštností těchto podmínek je, že jsou zahrnuty tři operandy, ale také to, že tyto podmínky slouží k přiřazení dat proměnné.

Výstupem bude:

true && true = true
true && false = false
false && true = false
false && false = false
pravda || pravda = pravda
pravda || false = true
nepravda || pravda = pravda
nepravda || false = false

Stránky JSP mají kombinovanou syntaxi: kombinaci standardní syntaxe, která odpovídá specifikaci HTML a syntaxi JSP, která je definována specifikací stránek Java Server Pages. Syntaxe JSP definuje pravidla pro psaní stránek JSP, které se skládají ze standardních HTML tagů a JSP tagů.

Tak vypadá tento typ struktury. Ozdobte, co se děje. Přiřazení je platné: můžete použít svou maximální proměnnou. Před ovlivněním hodnot můžete také provádět výpočty. Nezapomeňte, že hodnota, kterou chcete přiřadit proměnné, musí být stejného typu jako vaše proměnná. Všimněte si také, že vám nic nebrání vložit 3D podmínku do jiné ternární podmínky.

Podmínky umožňují provedení pouze určitých částí kódu. ... Pokud příkazový blok obsahuje více než jeden řádek, musíte jej obklopit složenými závorkami, abyste jasně identifikovali začátek a konec příkazového bloku. Abyste mohli zavést podmínku, musíte porovnávat proměnné pomocí booleovských operátorů.

Stránky JSP kromě značek HTML obsahují značky JSP následujících kategorií:

Směrnice JSP

Směrnice JSP poskytnout globální informace týkající se konkrétních požadavků odeslaných na server a poskytnout informace potřebné během fáze překladu. Směrnice jsou vždy umístěny na začátek stránky JSP před všechny ostatní značky, takže analyzátor(analyzátor) JSP při analýze textu na úplném začátku zvýraznil globální pokyny. JSP Engine (JSP runtime) tedy analyzuje kód a vytvoří servlet z JSP. Směrnice jsou zprávy do kontejneru JSP.

Do stavu můžete vložit tolik booleovských srovnání, kolik chcete. Úkolem smyček je opakovat stejné operace vícekrát. Všechny programy, nebo téměř všechny, takovou funkci potřebují. Pomocí smyček necháme program začít od začátku, počkáme na konkrétní akci uživatele, zobrazíme sérii dat atd.

Smyčka běží tak dlouho, dokud je splněna podmínka. Použijeme proto koncepty předchozí kapitoly! To znamená téměř „tak dlouho, jak“. Pak máme podmínku: umožňuje vám zastavit smyčku. Smyčka je užitečná pouze tehdy, když ji můžeme ovládat, a proto ji přimět opakovat instrukci několikrát.

Syntax Směrnice JSP jak následuje:

<%@ директива имяАтрибута="значение" %>

Syntaxe úkolu směrnic v XML:

Směrnice JSP může mít více atributů. V tomto případě lze směrnici opakovat pro každý z atributů. Přitom páry "Název atributu = hodnota" může být umístěn pod jednou směrnicí s mezerou jako oddělovač.

Existují tři typy směrnic:

  • stránka (stránka)
  • taglib (knihovna tagů)
  • zahrnout (zahrnout)

Směrnice stránky JSP

Směrnice stránky JSP definuje vlastnosti stránky JSP, které ovlivňují překladač. Pořadí atributů ve směrnici strana nevadí. Porušení syntaxe nebo přítomnost nerozpoznaných atributů má za následek chybu překladu. Příklad směrnice strana může sloužit následující kód:

<%@ page buffer="none" isThreadSafe="yes" errorPage="/error.jsp" %>

Směrnice stránky prohlašuje, že tato stránka JSP nepoužívá ukládání do vyrovnávací paměti, že je možné, aby k této stránce JSP přistupovalo více uživatelů současně, a že chybová stránka s názvem error.jsp.

Směrnice stránky JSP může obsahovat informace o stránce:

<%@ page info = "JSP Sample 1" %>

Seznam možných atributů směrnice strana uvedené v tabulce.

Název atributuVýznam Popis
Jazyk Čára Určuje jazyk používaný ve skriptech, výrazech nebo v souborech JSP, včetně těla přeloženého kódu. Výchozí hodnota je "java"
rozšiřuje Čára Určuje nadtřídu pro generovaný servlet. Tento atribut by měl být používán s velkou opatrností, protože je možné, že server již používá nadtřídu.
import Čára Definice balíků k importu, například:
<%@ page import="java.util.* %>
Zasedání pravda nebo lež Význam skutečný(výchozí) označuje předdefinovanou proměnnou zasedání(typ HttpSession) musí být svázán s existující relací, pokud existuje, jinak je vytvořena nová relace a je k ní vázáno. Význam Nepravdivé určuje, že relace nebudou použity, a pokusí se získat přístup k proměnné zasedání způsobí chybu při překladu stránky JSP na servlet
Vyrovnávací paměť žádný nebo velikost vyrovnávací paměti v kB. Nastaví velikost vyrovnávací paměti pro JspWriter. Výchozí hodnota závisí na nastavení serveru a neměla by překročit 8 kB. Pokud je hodnota žádný výstup jde přímo k objektu ServletResponse
autoFlush pravda nebo lež Určuje, zda má být vyrovnávací paměť automaticky vyprázdněna, když přeteče, nebo dojde k chybě. Výchozí hodnota skutečný
isThreadSafe pravda nebo lež Význam skutečný(výchozí) určuje normální režim provádění servletu, kde je zpracováváno více požadavků souběžně pomocí jediné instance servletu, za předpokladu, že autor má synchronizovaný přístup k proměnným této instance. Falešná hodnota signalizuje, že by servlet měl dědit Model s jedním vláknem(model s jedním vláknem), kde jsou sekvenční nebo souběžné požadavky zpracovávány samostatnými instancemi servletu
informace Čára Definuje řetězec informací o stránce JSP, ke které se bude přistupovat pomocí metody Servlet.getServletInfo ()
errorPage Čára Hodnota atributu je adresa URL stránky, která by se měla zobrazit v případě možných chyb, které způsobují výjimky
jeErrorPage pravda nebo lež Signalizuje, zda lze tuto stránku použít ke zpracování chyb pro jiné stránky JSP. Výchozí hodnota je Nepravdivé
typ obsahu Čára Určuje kódování stránky a odpovědi JSP a typ MIME odpovědi JSP. Výchozí hodnota typu obsahu je text / html, kódování - ISO-8859-1. Například:
contentType = "text / html; charset = ISO-8859-1"
stránka Kódování Čára Určuje kódování znaků stránky JSP. Výchozí hodnota je znaková sada z atributu typ obsahu pokud je to tam definováno. Pokud hodnota znaková sada v atributu typ obsahu nedefinováno, hodnota stránka Kódování je nastavena na stejnou hodnotu ISO-8859-1

JSP taglib směrnice

Směrnice JSP taglib prohlašuje, že daná stránka JSP používá knihovnu značek, jednoznačně ji identifikuje pomocí identifikátoru URI a mapuje předponu značky, podle které lze s knihovnou jednat. Pokud kontejner nemůže najít knihovnu značek, dojde k závažné chybě překladu.

Směrnice taglib má následující syntaxi:

<%@ taglib uri="URI zahrnuté knihovny značek"prefix =" název předpony" %>

Předpona " název předpony"se používá při odkazování na knihovnu. Příklad použití knihovny značek." mytags:

<%@ taglib uri="http://www.taglib/mytags" prefix="customs" %> . . .

V tomto případě má knihovna značek identifikátor URI "http: //www.taglib/mytags", řetězec je přiřazen jako předpona celní který se používá na stránce JSP při přístupu k prvkům knihovny značek.

JSP zahrnout směrnici

Směrnice JSP zahrnout umožňuje vložit text nebo kód při překladu stránky JSP do servletu. Syntaxe směrnice zahrnout vypadá takto:

<%@ include file="Relativní URI stránky, kterou chcete zahrnout" %>

Směrnice zahrnout má jeden atribut - soubor... Obsahuje text zadaného zdroje v souboru JSP. Tuto směrnici lze použít k umístění standardní hlavičky autorských práv na každou stránku JSP:

<%@ include file="copyright.html" %>

Kontejner JSP přistupuje k souboru pro zahrnutí. Pokud se soubor zahrnutí změnil, kontejner může znovu zkompilovat stránku JSP. Směrnice zahrnout považuje zdroj, jako je stránka JSP, za statický objekt.

Daný URI je obvykle interpretován relativně k JSP stránky, na které je odkaz umístěn, ale stejně jako u všech relativních URI můžete systému sdělit pozici zdroje zájmu vzhledem k domovskému adresáři WEB serveru předponou identifikátor URI se znakem „/“. Obsah souboru include je považován za prostý text JSP, a proto může obsahovat prvky, jako je statický HTML, prvky skriptu, směrnice a akce.

Mnoho webů používá na každé stránce malý navigační panel. Kvůli problémům s používáním rámců HTML je tento úkol často vyřešen umístěním malé tabulky na začátek nebo do levé poloviny stránky, jejíž kód HTML se pro každou stránku webu mnohokrát opakuje. Směrnice zahrnout- toto je nejpřirozenější způsob, jak tento problém vyřešit, ušetřit vývojáře před noční můrou rutiny kopírování HTML do každého samostatného souboru.

Od směrnice zahrnout zahrnuje soubory během překladu stránky, poté je po provedení změn na navigačním panelu vyžadován opětovný překlad všech stránek JSP, které jej používají. Pokud se připojené soubory poměrně často mění, můžete akci použít jsp: zahrnout který spojuje soubor při přístupu na stránku JSP.

Směrnice deklarace JSP

Směrnice JSP prohlášení jsou určeny k definování proměnných a metod ve skriptovacím jazyce, které jsou později použity na stránce JSP. Syntax prohlášení vypadá takto:

<%! код Java %>

prohlášení jsou umístěny v deklaračním bloku a jsou volány v expresním bloku stránky JSP. Kód v deklaračním bloku je obvykle napsán v Javě, ale aplikační servery mohou používat syntaxi jiných skriptů. reklamy se někdy používají k přidání dalších funkcí při práci s dynamickými daty získanými z vlastností komponent JavaBeans. Příklady reklamy jsou uvedeny v tabulce.

Prohlášení může obsahovat více řádků, například v níže uvedeném kódu pro výpočet hodnoty funkce fakt (int n), která by se měla rovnat 1, když n je menší než 2 a n! s kladnou hodnotou n;

<%! public static int fact (int n) { if (n <= 1) return 1; else return n * fact (n - 1); } %>

prohlášení neprodukujte žádný výstup na standardní výstup ven... Proměnné a metody deklarované v deklaracích jsou inicializovány a zpřístupněny skriptletům a dalším reklamy v době inicializace stránky JSP.

Skriptlety skriptlety

skriptlety obsahovat různé části kódu napsané ve skriptovacím jazyce definovaném ve směrnici Jazyk... Fragmenty kódu musí vyhovovat syntaktickým konstrukcím jazyka skriptlety, tj. obvykle syntaxe jazyka Java. skriptlety mít následující syntaxi:

<% текст скриптлета %>

Ekvivalent syntaxe skriptlet pro XML je:

text skriptů

Pokud v textu skriptlet je nutné použít posloupnost znaků%> přesně jako kombinaci znaků, a ne jako značku - znak konce skriptlet, místo posloupnosti%> použijte následující kombinaci znaků% \>.

Specifikace JSP poskytuje jednoduchý a přímý příklad skriptlet který dynamicky mění obsah stránky JSP po celý den.

<% if (Calendar.getInstance ().get (Calendar.AM_PM) == Calendar.AM) {%>Dobré ráno<% } else { %>Dobré odpoledne<% } %>

Je třeba poznamenat, že kód uvnitř skriptlet vložen jako napsaný a veškerý statický text HTML (text šablony) před nebo za skriptlet převedeny pomocí operátoru tisk... To znamená, že skriptlety nemusí obsahovat dokončené bloky Java a že ponechání otevřených bloků může ovlivnit statický HTML mimo skriptlet.

Skripty mít přístup ke stejným automaticky definovaným proměnným jako výrazy. Proto například pokud je na stránce potřeba zobrazit jakékoli informace, musíte použít proměnnou ven.

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

Výrazy výrazy

Výrazy výrazy na stránce JSP spustitelný výraz napsaný ve skriptovacím jazyce uvedeném v deklaraci jazyka (obvykle Java). Výsledek výrazy JSP, který je požadovaného typu String, je odeslán do standardního výstupního proudu ven pomocí aktuálního objektu JspWriter... Pokud je výsledek výrazy nelze obsadit Tětiva, buď dojde k chybě překladu, pokud byl problém zjištěn ve fázi překladu, nebo je vyvolána výjimka ClassCastException pokud byla při provádění požadavku zjištěna nesrovnalost. Výraz má následující syntaxi:

<%= текст выражения %>

alternativní syntaxe pro JSP výrazy při použití XML:

výrazový text

Exekuční příkaz výrazy na stránce JSP zleva doprava. Li výraz se objevuje ve více než jednom atributu run-time, poté v této značce běží zleva doprava. Výraz musí být úplný výraz v konkrétním skriptu (obvykle Java).

výrazy jsou prováděny za běhu protokolu HTTP. Hodnota výrazu je převedena na řetězec a zahrnuta na příslušném místě v souboru JSP.

Výrazy se běžně používají k výpočtu a zobrazení řetězcové reprezentace proměnných a metod definovaných v bloku deklarace stránky JSP nebo odvozených z JavaBeans, které jsou přístupné z JSP. Následující kód výrazy slouží k zobrazení data a času požadavku na stránku:

Aktuální čas:<%= new java.util.Date () %>

Aby se to zjednodušilo výrazy existuje několik předdefinovaných proměnných, které můžete použít. Nejčastěji používané proměnné jsou:

  • požadavek, HttpServletRequest;
  • odpověď, HttpServletResponse;
  • relace, HttpSession - související s žádostí, pokud existuje;
  • ven, PrintWriter - vyrovnávací verze typu JspWriter pro odesílání dat klientovi.