Skip to main content

Advance Java

Advance Java Interview Questions

Dear Learner, these Java Interview Questions have been ask in latest interviews based on interview question i have write these questions on Java Interview Questions. As per Candidate experience, good interviewers hardly planned to ask any particular question during your interview, normally questions start with some basic concept of the subject and later they continue based on further discussion and what you answer.

#1) What do you mean by Servlet?
Ans: Servlet is a powerful mechanism which is used to create web applications.
It is occupied at server-side and helps to generate dynamic web pages, it basically acts as a mediator between the incoming HTTP request from the browser and the database.
Servlet is based on Java Language, hence it is robust and called as a server-side programming language.
Flow of Servlets
The above diagram explains the flow of the Servlet.
A request comes from the web page to the servlet, servlet redirects the request to the appropriate JSP page and the JSP page sends the response as a result page which is visible to the user.
#2) What is CGI and what are its drawbacks?
Ans: CGI stands for Common Gateway Interface which is a set of codes written on the server-side that is used to interact through the Web Server with a client running on a web server.
It takes the incoming request and for every new request, it starts a new process.
Drawbacks of Common Gateway Interface:
  • As it creates a new process for every incoming request, if the number of incoming requests is more then the response generated will be very slow, which in turn reduces the efficiency.
  • CGI is platform dependent.
#3) What are the advantages of Servlet over CGI?
Ans: The advantages of the servlet are as follows:
  • Servlet creates a thread for each incoming request and not process, thus it is faster.
  • Servlet is platform independent as it is based on Java Programming Language.
  • As it is based on Java, it is robust and secure.
#4) How is a Servlet implemented in code?
Ans: Servlet can be implemented in code by simply extending the Httpservlet or generic servlet class.
#5) What is the difference between the Http Servlet and Generic Servlet?
Ans: Generic Servlet can handle all type of requests. As it has a service () method, it is independent, whereas Http Servlet extends the generic servlet and supports the HTTP methods such as doGet (), doPost (), doHead (), doTrace () etc.
#6) What are the life cycle methods of the Servlet?
Ans: There are basically three lifecycle methods of a servlet which are as follows:
  • Init ()
  • Service ()
  • Destroy ()
#7) Explain the Lifecycle of Servlet.
Ans: The life cycle of a servlet is explained with reference to the below diagram.
  • At first, the Servlet class is loaded as per the request received from the Client.
  • Then the new instance or object of a servlet is created. Only one object is created, for every life cycle.
  • Then the Init () method which is used to initialize the servlet is invoked.
Syntax: public void Init ()
  • The Service () method is invoked every time when a new request is received to perform any operations.
Syntax: public void service ()
  • Then the destroy method is invoked to perform the clean-up operation.
Syntax: destroy ()
Servlet Flow Diagram
Servlet Flow Diagram
#8) What is a web container and what is its responsibility?
Ans: A web container which is also called as Servlet container is used to interact with the Servlet and contains all the Servlet, JSP, xml files in it.
Web container manages the life cycle of a servlet and helps to map the URL to a specific servlet. Web container creates the object of a servlet.

#9) How is the Get () method different from the Post() method?
Ans: The reasons why Get () method is preferred over the Post() method are given below.
Get () method:
  • Here a specific amount of data or information can be sent as the data is sent through the header.
  • In Get() method, data is not secured as it is exposed in the URL bar to the user.
  • Get () method can be bookmarked.
  • Generally, get () method is more effective and used over the post () method.
Post () method:
  • Here a huge amount of data or information can be transferred as the data is sent through the body.
  • As the data in the Post () method is sent through the body, it is secured.
  • Post () method cannot be bookmarked.
  • Generally, the Post () method is less effective and is not often used.
#10) What is Servlet looping or chaining?
Ans: Servlet looping is a process in which the output of one servlet is given as an input to another servlet and the last servlet output is considered as the actual output which is provided to the client.
This process is achieved through request dispatcher interface.
#11) How will two or three servlets interact or communicate with each other?
Ans: There are two processes in which the servlets can communicate with each other.
a) Request Dispatcher Interface
b) Servlet Chaining
#12) Explain Request Dispatcher and its methods.
Ans: Request Dispatcher creates an object that is responsible to receive requests from the browser or client and then navigates them to any resources like Servlets, JSP, or HTML which resides at the server side.
There are basically two methods of Request Dispatcher:
a) Forward () method:
  • In Forward() method the client sends the request to the Servlet1.
  • The Servlet1 processes the request and then forwards the request to Servlet2.
  • The servlet2 processes the request and generates a response which in turn is sent back to the client as the final response.
b) Include () method:
  • In Include () method the client sends the request to the Servlet1.
  • The Servlet1 processes the request and then includes the request and sends the request to Servlet2.
  • The servlet2 processes the request and again sends it back to Servlet1 and
  • The Servlet1 generates a response which in turn is sent back to the client as the final response.
#13) What is the use of Send Redirect () method?
Ans: Send Redirect () method which works at the client side is used to redirect the response to another resource like Servlet, JSP, HTML.
Syntax: void send Redirect(URL);
Example: response.sendredirect(“http://www.google.com”);
#14) How Forward () method is different from Send Redirect () method?
Ans: Forward () method:
a) It is used to send the exact same request to another resource.
b) It works on the server side within the server.
Send Redirect () method:
a) It always sends a new request to the resources as it uses URL.
b) It works at the client side both outside and within the server.
#15) Explain the WAR file?
Ans: A WAR file is basically referred to as a Web Archived file, which has all the files of your application like xml, servlets, JSP, HTML, configuration files combined into a single file so that deploying the application would be simple and easy.
It is advisable to use a WAR file for deployment.
#16) What do you mean by Servlet Context?
Ans: Servlet Context is basically referred to as an object which has information regarding application and the Web Container. With Servlet context we can log events, get the URL of the specific resource, and can easily store the attributes for other servlets to use.
The core advantage of Servlet is that it is easy to maintain and acts as a mediator between the container and servlet.
There are some important methods of servlet context which are given below:
a) getInitParameter () – return the value of parameter.
b) getInitParameterNames () – returns the name of parameter.
c) void setAttribute () – used to set the values of attributes.
d) void getAttribute () – used to get the values of attributes.
e) void removeAttribute () – used to remove the attribute.
#17) What exactly are the functions of Servlet?
Ans: The functions performed by the servlets are as follows:
a) Firstly Servlets receives the HTTP request which is sent from the client side.
b) Reads the request and extracts the data from the request.
c) After extracting the information, the servlets perform a business logic operation by accessing a database or invoking EJB's.
d) Lastly, it generates a response and sends it to the client in the form of HTTP or sends the response to the JSP page.
#18) What do you mean by deployment descriptor?
Ans: WEB.XML is said to be the deployment descriptor in a servlet.
It is the entry point for any application and possesses the welcome file list.
It defines resources, information about which servlet will be used and maps the servlet to URL.
#19) Explain Session tracking and its importance?
Ans: Session tracking is a process in which the data of the client or user can be maintained.
As every time a new request comes to the server, the server is unable to recognize that the new request is coming from the same client, to avoid this problem session tracking technique is used.
Session Tracking plays a vital role to recognize the client or the request.
#20) What are the different Session Tracking Techniques?
Ans: There are basically four types of techniques which are given below:
a) Cookies: Cookies are small information which is added to multiple client requests.
E.g: One request comes to the server, the server adds some cookies with the response, now when again the same client sends the request to the server, the server recognizes the user.
b) Hidden Form Field: Here we use a hidden text field for maintaining the state of the user.
c) URL Rewriting: Here we give an extra link for the next servlet to be mapped.
d) Http Session: Here a specific ID is generated for each user, so a server can recognize the user.
#21) What are the Servlet events?
Ans: Events are nothing but occurrences. Even changing the condition of the object is also an event.
The event classes and interface are as follows:
Classes: ServletRequestEvent, ServletContextEvent, HttpSessionEvent etc.
Interfaces: ServletRequestListner, ServletContextListner, HttpSessionListner etc.
#22) What do you mean by a filter and how does it work?
Ans: Filter is basically used to filter out things.
In a similar manner Filter in servlet is an object that is introduced at pre-processing of request and post-processing of request.
Its major functions include conversion, encrypt and decrypt values, input validations on data captures the IP address, and saves all the incoming request.
A filter is defined in web.xml and it can be removed from the web.xml so that there is no need to change the servlet resulting in cost reduction.
Diagram of servlet filter working
Servlet Filter
#23) Explain load on start-up and its importance?
Ans: Load on start-up is an element defined in web.xml (deployment descriptor) which helps the servlet to load at the time of deployment while the server is restarting.
The reason to use load on start-up is as the servlet is loaded on the first request received so initially it takes more time to load resulting decreased efficiency if we define loan on start-up is loads the servlet while server restarting which increases efficiency.
Load on start-up is also working on two values:
Positive (0,1,2,3….): The lowest positive value will be loaded first.
Negative: The servlet will be loaded when the first request is received.
#24) Is servlet synchronized?
Ans: No, the servlets are not synchronized. If we want to make servlet synchronized, we must implement SingleThreadInterface.
#25) What do you mean by Scope Object and what are its types?
Ans: Scope objects help to share information among web components via setattribute() and getattribute().
Types of Scope Objects are:
  • Web Context
  • Session
  • Request
  • Page
#26) What does the term Localization refer to?
Ans: Localization basically refers to the local tradition or language followed by the user. So, we add resources or elements to the particular website like adding the Hindi language so every user can understand.
#27) If servlet receives multiple requests, how many objects will it create?
Ans: Servlet will create only one instance, no matter how many incoming requests it receives.
#28) What is the major difference between Servlet and Applet?
Ans: The major difference between Servlet and Applet is that the Servlet resides on the Server side whereas the Applet resides on the client side in the web browser.
#29) Is it possible to have a Constructor inside the Servlet?
Ans: Yes, it is possible to define a constructor inside a servlet, but it can be called only by Servlet container and not explicitly.
#30) Name the packages that work with Servlet?
Ans: There are basically two packages which work with Servlet as shown below:
  • Javax.servlet
  • Javax.servlet.http
#31) What are the kinds of HTTP requests?
Ans: Kinds of HTTP request include:
  • Get
  • Post
  • Head
  • Options
  • Put
  • Trace
  • Delete
#32) What is the major difference between Context Parameter and Context Attribute?
Ans: The major difference between the two is, Context Parameter is a value stored in the deployment descriptor i.e. web.xml and is loaded during the deployment process.
Whereas Context Attribute is the values which are set dynamically and can be used throughout the application.
#33) What is the process for chaining servlet?
Ans: Servlet chaining is a very simple process in which we give the output of one servlet as an input to another servlet.
Firstly, we have to create a RequestDispatcher for a resource which has to be chained. Then we have to set the attribute values for the request if required. Then we need to call the forward () method or include () method on a RequestDispatcher object.


#34) What are the main steps in java to make JDBC connectivity?

Answer:  JDBC Interview question, mostly asked on telephonic interviews. Here are the main steps to connect to the database.
·          Load the Driver: First step is to load the database-specific driver which communicates with the database.
·          Make Connection: Next step is to get the connection from the database using the connection object, which is used to send SQL statement also and get a result back from the database.
·          Get Statement object: From connection object, we can get a statement object which is used to query the     database
·          Execute the Query: Using statement object we execute the SQL or database query and get the result set from the query.
·          Close the connection: After getting resultset and all required operation performed the last step should be closing the database connection.

Comments

  1. Your post is really good thanks for sharing these kind of post but if anyone looking for Best Consulting Firm for Fake Experience Certificate Providers in mumbai, India with Complete Documents So Dreamsoft Consultancy is the Best Place.Further Details Here- 9599119376 or VisitWebsite-https://experiencecertificates.com/experience-certificate-provider-in-mumbai.html

    ReplyDelete
  2. Waoo This interview question is so amazing technically.
    Here all content so useful and helpful for beginner and experience both.This site is so amazing, This sites gives good knowledge of Advance java ,This is very helpful for me.

    ReplyDelete
  3. Here all content so useful and helpful for beginner and experience both.This site is so amazing, This sites gives good knowledge of advance-java-training,This is very helpful for me.

    ReplyDelete
  4. Elevate your Java programming prowess with APTRON Solutions' Advance Java course in Noida . Whether you're a fresh graduate looking to enter the IT industry or an experienced developer aiming to upgrade your skills, our course caters to all skill levels. With a blend of expert guidance, hands-on experience, and a robust curriculum, you'll be well-prepared to tackle the challenges of modern Java development. Join us today and embark on a transformative learning journey towards becoming a Java expert.

    ReplyDelete
  5. Embark on a journey to master Advanced Java with unparalleled training at APTRON Solutions in Noida. As technology continues to evolve, staying ahead in the competitive IT landscape requires a deep understanding of advanced programming languages. APTRON Solutions stands out as a premier training institute, offering comprehensive and industry-relevant Advance Java Training in Noida

    ReplyDelete

Post a Comment

Popular posts from this blog

The Future of Java Developers in the AI Decade

In this AI decade, Java developers are positioned to play a crucial role in various areas: 1. AI and Machine Learning: While Python is often the language of choice for AI and machine learning, Java still has its place, especially in enterprise-level applications and systems where stability, scalability, and security are paramount. Java developers can work on integrating AI and machine learning capabilities into existing Java-based systems or developing new AI-powered applications using Java frameworks like Deeplearning4j or Weka. 2. Big Data and Analytics: With the growing importance of big data analytics, Java developers can contribute to building robust data processing and analytics systems. Java is widely used in big data frameworks like Apache Hadoop and Apache Spark, enabling developers to work on distributed computing, data processing, and real-time analytics applications. 3. Cloud Computing: As more companies move their infrastructure to the cloud, Java developers can leverage t

Fresher Need to start from this technology

For freshers, some technologies are relatively simpler to start with due to their ease of learning and abundant resources available for beginners: 1. Python: Known for its readability and simplicity, Python is often recommended as a first language due to its clean syntax and vast community support. It's used in various fields like web development, data analysis, artificial intelligence, and more. 2. HTML/CSS: Fundamental for web development, HTML (HyperText Markup Language) and CSS (Cascading Style Sheets) are essential and relatively easy to grasp. They form the backbone of web pages and are essential for anyone interested in web development. 3. JavaScript:Alongside HTML and CSS, JavaScript is crucial for web development, adding interactivity and functionality to websites. It's beginner-friendly and essential for front-end development. 4. Java: Although it might have a steeper learning curve than Python, Java is widely used in enterprise applications, Android development, and

What is JDK, JRE and JVM?

What are JDK, JRE, and JVM: JDK :- Java Development Kit (in short JDK) is Kit which provides the environment to Develop and execute(run ) the Java program. For eg. You(as Java Developer) are developing an accounting application on your machine, so what do you going to need into your machine to develop and run this desktop app? You are going to need  J-D-K  for that purpose for this you just need to go to the official website of sun or oracle to download the latest version of JDK into your machine. Hence, JDK is a kit(or package) which includes two things i) Development Tools(to provide an environment to develop your java programs) and ii) JRE (to execute your java program). JDK is only used by Java Developers. JRE: - Java Runtime Environment (to say JRE) is an installation package which provides an environment to only run(not develop) the java program(or application)onto your machine. For eg(continuing with the same example) after developing your accounting application