50 najpopularniejszych pytań do wywiadów JSP & Odpowiedzi

Anonim

ściągnij PDF

1) Wyjaśnij JSP i powiedz jego zastosowania.

JSP to skrót od Java Server Pages. Jest to technologia warstwy prezentacji niezależna od platformy. Pochodzi z platformami J2EE firmy SUN. Są jak strony HTML, ale z osadzonymi w nich fragmentami kodu Java. Są zapisywane z rozszerzeniem .jsp. Są one kompilowane za pomocą kompilatora JSP w tle i generują serwlet ze strony.

2) Jakie są wymagania biblioteki znaczników?

Zbiór niestandardowych znaczników nazywany jest biblioteką znaczników. Powtarzające się zadania są łatwiejsze w obsłudze i ponownie wykorzystywane w wielu aplikacjach w celu zwiększenia produktywności. Są używane przez projektantów aplikacji internetowych, którzy koncentrują się na prezentacji, a nie na dostępie do bazy danych lub innych usług. Niektóre popularne biblioteki to biblioteka znaczników String i biblioteka znaczników wyświetlania Apache.

3) Wyjaśnij technologię JSP.

JSP jest standardowym rozszerzeniem języka Java i jest definiowane na podstawie rozszerzeń serwletów. Jego celem jest uproszczenie zarządzania i tworzenia dynamicznych stron internetowych. Jest niezależny od platformy, bezpieczny i wykorzystuje Javę jako język skryptowy po stronie serwera.

4) Wyjaśnij niejawne obiekty w JSP.

Obiekty utworzone przez kontener sieciowy i zawierające informacje dotyczące konkretnego żądania, aplikacji lub strony nazywane są obiektami niejawnymi. Oni są :

  • odpowiedź
  • wyjątek
  • podanie
  • żądanie
  • sesja
  • strona
  • na zewnątrz
  • config
  • pageContext

5) W jaki sposób można zapobiec wielokrotnemu przesyłaniu z powodu kliknięć przycisku odświeżania?

Za pomocą wzorca Post / Redirect / Get lub PRG można rozwiązać ten problem.

1) Wypełniony przez użytkownika formularz przesyłany jest na serwer metodą POST lub GET. Stan w bazie danych i model biznesowy są aktualizowane.

2) Odpowiedź przekierowania jest używana do odpowiadania przez serwlet na stronę widoku.

3) Widok jest ładowany przez przeglądarkę za pomocą polecenia GET i żadne dane użytkownika nie są wysyłane. Jest to zabezpieczone przed wielokrotnym przesyłaniem, ponieważ jest to oddzielna strona JSP.

6) Czy technologia JSP jest rozszerzalna?

Tak, JSP można łatwo rozszerzać poprzez użycie i modyfikację znaczników lub niestandardowych działań, umieszczonych w bibliotekach znaczników.

7) Rozróżnij response.sendRedirect (url) i

…>.

Element przekazuje obiekt żądania z 1 pliku JSP do innego. Plik docelowy może być plikiem HTML, serwletem lub innym plikiem JSP, ale powinien znajdować się w tym samym kontekście aplikacji, co przesyłany dalej plik JSP.

sendRedirect wysyła odpowiedź tymczasowego przekierowania HTTP do przeglądarki. Przeglądarka następnie tworzy nowe żądanie dla przekierowanej strony. Zabija zmienne sesji.

8) Czy można uzyskać dostęp do kolejnego żądania za pomocą własnego kodu serwletu, jeśli atrybut żądania jest już wysłany na jego stronie JSP?

Żądanie wykracza poza zakres, dlatego nie można uzyskać do niego dostępu. Jeśli jednak atrybut żądania jest ustawiony w serwlecie, można uzyskać do niego dostęp na jego stronie JSP.

JSP to komponent po stronie serwera, a strona jest tłumaczona na serwlet Java, a następnie wykonywana. Jako dane wyjściowe podawany jest tylko kod HTML.

9) Jak dołączyć pliki statyczne do strony JSP?

Strony statyczne są zawsze dołączane za pomocą dyrektywy JSP include. W ten sposób włączanie jest wykonywane raz w fazie tłumaczenia. Należy pamiętać, że dla atrybutu pliku należy podać względny adres URL. Chociaż mogą być uwzględnione zasoby statyczne, nie jest to preferowane, ponieważ każde żądanie wymaga uwzględnienia.

10) Dlaczego jest tak, że JComponent ma metody add () i remove (), a Component nie?

JComponent jest podklasą klasy Container. Zawiera inne komponenty i JComponents.

11) W jaki sposób można zaimplementować bezpieczną wątkowo stronę JSP?

Można to zrobić, implementując je przez interfejs SingleThreadModel. Dodaj dyrektywę <% @ page isThreadSafe = ”false”%> na stronie JSP.

12) W jaki sposób można zapobiec buforowaniu danych wyjściowych strony JSP lub serwletu przez przeglądarkę?

Użycie odpowiednich atrybutów nagłówka HTTP, aby zapobiec buforowaniu dynamicznej zawartości strony JSP przez przeglądarkę.

13) Jak ograniczyć wyświetlanie błędów strony na stronie JSP?

Skonfigurowanie atrybutu „ErrorPage” katalogu PAGE na nazwę strony błędu na stronie JSP, a następnie w zestawie stron jsp błędu „isErrorpage =” TRUE ”umożliwia zatrzymanie wyświetlania błędów.

14) Co to są akcje JSP?

Są to znaczniki XML, które kierują serwer do korzystania z istniejących komponentów lub kontrolują zachowanie silnika JSP. Składają się z typowego przedrostka „jsp:” i nazwy akcji.

15) Rozróżnij i <% @ include file =…>.

Oba te tagi zawierają informacje z jednej strony na drugą.

Pierwszy znacznik działa jako wywołanie funkcji między dwoma plikami JSP. Jest wykonywany za każdym razem, gdy klient uzyskuje dostęp do strony klienta. Przydatne jest modularyzacja aplikacji internetowej. Dane wyjściowe zawierają nową zawartość.

Zawartość drugiego znacznika w pliku jest osadzona tekstowo i ma podobną dyrektywę. Zmieniona zawartość nie jest uwzględniana w danych wyjściowych. Jest to pomocne, gdy kod z jednego pliku jsp jest wymagany przez kilka plików jsp.

16) Czy zamiast init () można użyć konstruktora do zainicjowania serwletu?

Tak to mozliwe. Nie jest to jednak preferowane rozwiązanie, ponieważ init () został opracowany, ponieważ wcześniejsze wersje Javy nie mogły dynamicznie wywoływać konstruktorów z argumentami. Dlatego nie mogli przypisać servletConfig. Jednak obecnie kontenery serwletów nadal wywołują tylko konstruktor bez argonu. Nie ma więc dostępu do servletContext lub servletConfig.

17) Wyjaśnij metody cyklu życia. 1)

jsplnit () : kontener wywołuje to w celu zainicjowania instancji serwletu. Jest wywoływana tylko raz dla instancji serwletu i poprzedzona każdą inną metodą. 2)

_jspService () : kontener wywołuje to dla każdego żądania i przekazuje je do obiektów. 3)

jspDestroy () : jest wywoływana przez kontener tuż przed zniszczeniem instancji.

18) Wyjaśnij komentarze JSP Output?

Są to komentarze, które można wyświetlić w pliku źródłowym HTML.

19) Zdefiniuj wyrażenie

Znacznik wyrażenia służy do wstawiania wartości Java bezpośrednio do danych wyjściowych. Jego składnia to

<% = wyrażenie%>

Zawiera wyrażenie języka skryptowego, które jest oceniane, następnie konwertowane na łańcuch, a następnie wstawiane w pliku JSP w miejscu, w którym pojawia się wyrażenie.

20) Zdefiniuj kompozycję.

Kompozycja ma silniejszy związek z obiektem niż Agregacja.

21) Zdefiniuj skrypt JSP.

Jest to znacznik JSP, który zawiera kod Java na stronach JSP. Ich składnia to <%%>. Kod napisany w skrypcie jest wykonywany za każdym razem, gdy program jest uruchamiany.

22) W jaki sposób można przekazać informacje z jednej strony JSP do innej strony JSP?

Znacznik pozwala nam przekazywać informacje między wieloma plikami Jsp.

23) Wyjaśnij zastosowanie tagu .

id="beanInstName"scope= "page | application"class="ABC.class" type="ABC.class"

Ten tag tworzy instancję komponentu bean Java. Najpierw próbuje sprawdzić, czy instancja bean już istnieje i przypisać zapisuje odwołanie w zmiennej. Określony jest również typ; w przeciwnym razie tworzy instancję z określonej klasy, przechowując odniesienie w nowej zmiennej.

24) Wyjaśnij obsługę wyjątków środowiska uruchomieniowego.

Atrybut Errorpage służy do usuwania wyjątków czasu wykonywania przekazywanych automatycznie na stronę przetwarzania błędów.

Przekierowuje przeglądarkę do strony JSP error.jsp, jeśli jakikolwiek niezłapany wyjątek zostanie napotkany podczas obsługi żądania. To jest strona przetwarzania błędów.

25) Dlaczego _jspService () zaczyna się od „_”, a inne metody cyklu życia nie?

Cała zawartość strony jsp trafia do metody _jspService () przez kontener. Jeśli zostanie zastąpiony, kompilator zgłosi błąd, ale pozostałe dwa cykle życia można łatwo nadpisać. Zatem „_” wskazuje, że nie możemy przesłonić tej metody.

26) Wyjaśnij różne wartości zakresu dla znacznika .

Znacznik służy do używania dowolnego obiektu java na stronie jsp. Niektóre wartości zakresu to:

1) wniosek

2) żądanie

3) strona

4) sesja

27) Pokaż 2 typy komentarzy w JSP.

Te 2 typy to:

<%-JSP Comment-%>

28) Czy metodę statyczną można zastąpić?

Możemy zadeklarować metody statyczne z tą samą sygnaturą w podklasie, ale nie jest to uważane za nadrzędne, ponieważ nie będzie żadnego polimorfizmu w czasie wykonywania. Stąd odpowiedź brzmi „nie”.

29) Wyjaśnij dyrektywy JSP.

Dyrektywy JSP są komunikatami do silnika JSP. Służą jako komunikat ze strony do kontenera i kontrolują przetwarzanie całej strony. Mogą ustawiać wartości globalne, takie jak deklaracja klasy. Nie generują wyniku i są zawarte w <% @….%>

30) Wyjaśnij dyrektywy PGE.

Dyrektywy strony informują aparat JSP o nagłówkach i udogodnieniach, które strona otrzymuje ze środowiska. Znajduje się u góry wszystkich stron JSP. Jego składnia to <% @ atrybut strony = ”wartość”>

31) Pokaż atrybuty dyrektyw strony.

1) Sesja: Pokazuje, czy dane sesji są dostępne dla strony.

2) Importuj: pokazuje pakiety, które są importowane.

3) isELIgnored: Pokazuje, czy wyrażenia EL są ignorowane, gdy JSP tłumaczy się na serwlet.

4) contentType: umożliwia użytkownikowi określenie typu zawartości strony.

32) Co to jest dyrektywa Include?

Dyrektywa include statycznie wstawia zawartość zasobu do bieżącej strony JSP. Pomaga w ponownym wykorzystaniu kodu bez powielania. i zawiera zawartość pliku w czasie tłumaczenia. Jego składnia jest następująca: <% @ include file = ”Filename”%>.

33) Jakie są standardowe akcje w JSP?

Mają wpływ na ogólne zachowanie strony w czasie wykonywania oraz odpowiedź wysyłaną do klienta. Służą do dołączania pliku w czasie żądania, tworzenia instancji JavaBean lub ich wyszukiwania. Są również używane do generowania kodu specyficznego dla przeglądarki lub przekazywania żądania do nowej strony.

34) Wyjaśnij działanie jsp: setProperty.

Służy do nadawania wartości właściwościom ziaren, do których odwołano się wcześniej.

jsp: setproperty jest wykonywana nawet wtedy, gdy tworzony jest nowy komponent bean lub znaleziono istniejący komponent bean.

Dodając na końcu kodu, warunek wykonania jest odwrócony, tj. Nie jest wykonywany, jeśli istniejący obiekt został znaleziony i tylko wtedy, gdy utworzono nową instancję obiektu.

35) Zdefiniuj blok statyczny.

Służy do uruchamiania statycznego elementu danych. Jest wykonywany przed załadowaniem klasy.

36) Wyjaśnij jsp: działanie wtyczki.

Akcja ta pomaga we wstawieniu konkretnego obiektu do przeglądarki lub osadzeniu elementu potrzebnego do określenia sposobu działania apletu za pomocą wtyczki Java.

37) Wyjaśnij sprawdzanie poprawności po stronie klienta i serwera.

JavaScript jest używany do weryfikacji po stronie klienta. Odbywa się w przeglądarce. Javascript jest używany do przesyłania danych formularza, jeśli walidacja zakończyła się pomyślnie. Błędy walidacji nie wymagają dodatkowej podróży do sieci, ponieważ nie można przesłać formularza.

Walidacja jest również przeprowadzana na serwerze po przesłaniu. Jeśli weryfikacja nie powiedzie się, do ponownego wysłania formularza do klienta wymagana jest dodatkowa podróż w sieci.

38) Co to jest faza tłumaczenia?

Silnik JSP tłumaczy i kompiluje plik JSP do serwletu. Aplet ten przechodzi do fazy wykonywania, w której obsługiwane są żądania i odpowiedzi. Są kompilowane po raz pierwszy, gdy są otwierane, chyba że zostaną ręcznie skompilowane z wyprzedzeniem. Ręczna lub jawna kompilacja jest przydatna w przypadku długich i zawiłych programów.

39) Wykonaj przekierowanie przeglądarki ze strony JSP.

<% response.sendRedirect(URL); %>

lub możemy zmienić lokalizację atrybutu nagłówka HTTP w następujący sposób:

<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader(URL); %>

40) Wykorzystaj klonowanie obiektów.

Klonowanie obiektów służy do tworzenia dokładnej kopii obiektu poprzez wpisanie tego samego kodu lub użycie różnych innych technik.

41) Jak przekazać żądanie do innego źródła.

42) Jak można zapobiec automatycznemu tworzeniu sesji na stronie JSP?

Strona JSP automatycznie tworzy sesje dla żądań. Można tego uniknąć, wpisując następujące informacje.

<%@ page session=”false” %>

43) Jak uniknąć kodu skryptletu w JSP?

Zamiast kodu skryptletu można użyć komponentów JavaBeans lub tagów niestandardowych.

44) Wyjaśnij metodę jspDestroy ().

Za każdym razem, gdy strona JSP ma zostać zniszczona, kontener wywołuje metodę jspDestroy () z interfejsu javax.servlet.jsp.JspPage. Metody niszczenia serwletów są do niego podobne. Można go łatwo zastąpić, aby wykonać czyszczenie, na przykład podczas zamykania połączenia z bazą danych.

45) Wyjaśnij działanie .

Jest to akcja używana ze standardowymi akcjami include lub forward. Pomaga w przekazywaniu nazw parametrów i wartości do zasobu.

46) Wyjaśnij metodę statyczną.

Metoda statyczna należy do klasy, a nie do obiektu klasy. Można go wywołać bez wystąpienia klasy. Statyczne elementy członkowskie mogą również uzyskiwać dostęp do danych statycznych i zmieniać ich wartość.

47) Jak wyłączyć skrypty?

Skrypty można łatwo wyłączyć, ustawiając element niepoprawny dla skryptów w deskryptorze wdrażania na wartość true. Jest to element podrzędny grupy właściwości. To również może być fałszywe.

48) Zdefiniuj deklarację JSP.

Deklaracja JSP to znaczniki używane do deklarowania zmiennych. Są zawarte w tagu <%!%>. Są używane do deklarowania funkcji i zmiennych.

<%@page contentType=”text/html” %><%!int a=0;private int getCount(){a++;return a;}%>

Values of a are:

<%=getCount()%>

49) W jaki sposób można zapobiec buforowaniu danych wyjściowych HTML?

<%response.setHeader("Cache-Control", "no=store");response.setDateHeader("Expires", 0);%>

50) W jaki sposób JSP jest lepszy od technologii Servlet?

JSP to technologia po stronie serwera, która upraszcza generowanie treści. Są skoncentrowane na dokumencie, podczas gdy serwlety to programy. Strona serwera Java może zawierać fragmenty programu Java, które wykonują i tworzą instancje klas Java. Jednak występują one w pliku szablonu HTML. Zapewnia ramy do tworzenia aplikacji internetowych.