Skip to main content

25 Best JSP Interview Questions and Answers - Java J2EE

What Is JSP?
JSP stands for Java Server Page.
JSP are internally converted to Servlet (.class) for processing Java code.
JSP is a server side technology which is used for creating dynamic web pages.
JSP is an extension of Servlets.
JSP comes with SUN’s J2EE platforms.

What Are the Advantages of JSP?
JSP enables server side programming abilities.
JSP represents HTML pages embed with Java code.
JSP is cross platform technology.
JSP can create database driven Web applications.

Is JSP Technology extensible?
Yes!, JSP is an extensible by using the modification of tags.

What Are the JSP Life Cycle?
The JSP life-cycle is defined as the process started with its creation which later translated to a servlet and afterward servlet life-cycle comes into play.

A JSP Life cycle consists of following steps:
1.      Translation of JSP to Servlet code
2.      Compilation of Servlet to byte code
3.      Loading Servlet class
4.      Creating servlet instance
5.      Initialization by calling jspInit() method
6.      Request Processing by calling _jspService() method
7.      Destroying by calling jspDestroy() method

Compilation process of JSP page involves three steps:
1.      Parsing of JSP
2.      Turning JSP into servlet
3.      Compiling the servlet

What Are JSP Life Cycle methods?
The JSP Life Cycle methods are:

The jspInit() method - It is invoked only once.
The _jspService() method - It is invoked at each request.
The jspDestroy() method - It is invoked only once.
We can override jspInit(), jspDestroy() but we can’t override _jspService() method.

Which JSP lifecycle methods can be overridden? How?
The jspInit() and jspDestroy() methods can be overridden within a JSP page.

What Are the Implicit Objects in JSP?
Objects created by web container and contain information regarding a particular request, application or page is called Implicit Objects. 

The implicit objects are:
1.      Request
2.      Response
3.      PageContext
4.      Session
5.      Application
6.      Out
7.      Config
8.      Page
9.      Exception

What do JSP literals consist of?
1.      Boolean
2.      Integer
3.      Floating point
4.      String
5.      Null

How Many Types of Tags exist in the JSTL library?
1.      Core Tags
2.      Localization Tags
3.      Formatting Tags
4.      XML Tags
5.      JSTL Functions Tags
6.      SQL Tags

You can create JSP Custom Tags with the below items:
1.      JSP Custom Tag Handler
2.      Creating Tag Library Descriptor (TLD) File
3.      Deployment Descriptor Configuration (DDC) for TLD

What Are the three Tags used in JSP bean development?
1.      <jsp: useBean>
2.      <jsp: setProperty>
3.      <jsp: getProperty>

What Are the Standard Actions Available in JSP?
The standard actions are:
1.      <jsp: include>
2.      <jsp: forward>
3.      <jsp: useBean>
4.      <jsp: setProperty>
5.      <jsp: getProperty>
6.      <jsp: param>
7.      <jsp: plugin>

How can a thread safe JSP page be implemented?
Yes!, by implemented the SingleThreadModel Interface.
Add <%@page isThreadSafe="false" %> directive in the JSP page.

What Is the difference between ServletContext and PageContext?
The ServletContext gives the information about the container while PageContext gives about the Request.

Is JSP used in the MVC model?
Yes!, JSP used MVC pattern (Model View Controller) for presentation.

What Is the function of <jsp:include> action?
The syntax − <jsp:include page = "relative URL" flush="true" />

Where page is the relative URL of the page to be included
Where flush is the Boolean attribute determines whether the included resource has its buffer flushed before it is included.

What Is a Request object?
The Request object is an instance of javax.servlet.http.HttpServletRequest. Each time a client request a page the JSP engine create a new object to represent that request.

What Is a Response object?
The Response object is an instance of a javax.servlet.http.HttpServletRequest and server create the request object.

What Is Composition?
The Composition has a stronger relationship with the object than Aggregation.

What Is JSTL?
JSP Standard Tag Library is a library of predefined tags that ease the development of JSP.

How To disable session in JSP?
Using the - <%@ page session="false" %>  

What Are Different Types of comments in JSP?
The JSP pages provide two types of comments:
HTML Comments - <!-- HTML Comment -->
JSP Comments - <%-- JSP Comment --%>

Can we use JavaScript with JSP Pages?
Yes!, Why Not. We can use as per your needs.

How Many Scripting Elements in JSP?
There are three scripting language elements:
1.      Declarations
2.      Scriptlets
3.      Expressions

Explain the different attributes of a page directive?
Here 13 attributes available for a page directive and some of the important attributes are:
1.      <import>
2.      <session>
3.      <contentType>
4.      <isELIgnored>

Is it possible from a JSP page to process HTML form content?
Yes!, It is possible.

More Java Programming Interview Questions...
By Anil Singh | Rating of this article (*****)

Popular posts from this blog

React | Encryption and Decryption Data/Text using CryptoJs

To encrypt and decrypt data, simply use encrypt () and decrypt () function from an instance of crypto-js. Node.js (Install) Requirements: 1.       Node.js 2.       npm (Node.js package manager) 3.       npm install crypto-js npm   install   crypto - js Usage - Step 1 - Import var   CryptoJS  =  require ( "crypto-js" ); Step 2 - Encrypt    // Encrypt    var   ciphertext  =  CryptoJS . AES . encrypt ( JSON . stringify ( data ),  'my-secret-key@123' ). toString (); Step 3 -Decrypt    // Decrypt    var   bytes  =  CryptoJS . AES . decrypt ( ciphertext ,  'my-secret-key@123' );    var   decryptedData  =  JSON . parse ( bytes . toString ( CryptoJS . enc . Utf8 )); As an Example,   import   React   from   'react' ; import   './App.css' ; //Including all libraries, for access to extra methods. var   CryptoJS  =  require ( "crypto-js" ); function   App () {    var   data

List of Countries, Nationalities and their Code In Excel File

Download JSON file for this List - Click on JSON file    Countries List, Nationalities and Code Excel ID Country Country Code Nationality Person 1 UNITED KINGDOM GB British a Briton 2 ARGENTINA AR Argentinian an Argentinian 3 AUSTRALIA AU Australian an Australian 4 BAHAMAS BS Bahamian a Bahamian 5 BELGIUM BE Belgian a Belgian 6 BRAZIL BR Brazilian a Brazilian 7 CANADA CA Canadian a Canadian 8 CHINA CN Chinese a Chinese 9 COLOMBIA CO Colombian a Colombian 10 CUBA CU Cuban a Cuban 11 DOMINICAN REPUBLIC DO Dominican a Dominican 12 ECUADOR EC Ecuadorean an Ecuadorean 13 EL SALVADOR

Angular 7 and 8 Validate Two Dates - Start Date & End Date

In this example, I am sharing “ How to compare or validate two dates in Angular? ” using custom validation function in Angular 7 and Angular 8 . Here, I’m validating the two dates  - a start date and end date. The end date should be greater than the Start date”. Let’s see the example :- import { Component , OnInit } from '@angular/core' ; import { UserRequest } from '../model/user' ; @ Component ({   selector: 'User_Cal' ,   templateUrl: './usercal.component.html' ,   styleUrls: [ './usercal.component.css' ] }) export class UserCalComponent implements OnInit {   constructor ( private EncrDecr : EncrDecrService , private   http :  HttpClient ,               private datePipe : DatePipe ) {                            }   //model class   model = new UserRequest ( null , null , null , null , null );   //Error Display   error : any ={ isError: false , errorMessage: '' };   isValid

Encryption and Decryption Data/Password in Angular

You can use crypto.js to encrypt data. We have used 'crypto-js'.   Follow the below steps, Steps 1 –  Install CryptoJS using below NPM commands in your project directory npm install crypto-js --save npm install @types/crypto-js –save After installing both above commands it looks like  – NPM Command  1 ->   npm install crypto-js --save NPM Command  2 ->   npm install @types/crypto-js --save Steps 2  - Add the script path in “ angular.json ” file. "scripts" : [                "../node_modules/crypto-js/crypto-js.js"               ] Steps 3 –  Create a service class “ EncrDecrService ” for  encrypts and decrypts get/set methods . Import “ CryptoJS ” in the service for using  encrypt and decrypt get/set methods . import  {  Injectable  }  from   '@angular/core' ; import   *   as   CryptoJS   from   'crypto-js' ; @ Injectable ({    providedIn:   'root' }) export   class   EncrDecrS

23 Best Key Features of MVC 6 and MVC 5

What’s new In MVC 6? The Added Key Features as following as, 1. The Microsoft makes a bundle of MVC, Web API, WebPages, SignalR, that bundle we called  MVC6 . 2. The MVC 6   added new cloud computing optimization system of MVC, web API, SignalR and entity framework. 3. In MVC 6, Microsoft removed the dependency of system.web.dll from MVC 6 because it's so expensive. Typically it consumes 30K memory per request/response. 4. Right now, in MVC 6 consume 2K memory per request response. It's too small memory consume. 5. Most of the problem solved using the  Roslyn Compiler . 6 . It’s added a  Start-up  class that replaces to  global.asax  file. 7. The Session state and caching adjusts our behavior depending on your hosting environment. 8. Host agnostic and its true side-by-side deployment 9. The vNext is a cross platform and open source and it's also supported to Mac, Linux, etc. 10. It’s also added to TagHeaplers use to creating an