This set of Advanced Java Multiple Choice Questions & Answers (MCQs) on “Servlet”.
1. How constructor can be used for a servlet? Answer: c 2. Can servlet class declare constructor with ServletConfig object as an argument? Answer: b 3. What is the difference between servlets and applets? Answer: b 4. Which of the following code is used to get an attribute in a HTTP Session object in servlets? Answer: a 5. Which method is used to get three-letter abbreviation for locale’s country in servlets? Answer: a 6. Which of the following code retrieves the body of the request as binary data? Answer: c 7. When destroy() method of a filter is called? Answer: a 8. Which of the following is true about servlets? Answer: d 9. How is the dynamic interception of requests and responses to transform the information done? Answer: d 10. Which are the session tracking techniques? Answer: b
a) Initialization
b) Constructor function
c) Initialization and Constructor function
d) Setup() method
Clarification: We cannot declare constructors for interface in Java. This means we cannot enforce this requirement to any class which implements Servlet interface.
Also, Servlet requires ServletConfig object for initialization which is created by container.
a) True
b) False
Clarification: ServletConfig object is created after the constructor is called and before init() is called. So, servlet init parameters cannot be accessed in the constructor.
i. Servlets execute on Server; Applets execute on browser
ii. Servlets have no GUI; Applet has GUI
iii. Servlets creates static web pages; Applets creates dynamic web pages
iv. Servlets can handle only a single request; Applet can handle multiple requests
a) i, ii, iii are correct
b) i, ii are correct
c) i, iii are correct
d) i, ii, iii, iv are correct
Clarification: Servlets execute on Server and doesn’t have GUI. Applets execute on browser and has GUI.
a) session.getAttribute(String name)
b) session.alterAttribute(String name)
c) session.updateAttribute(String name)
d) session.setAttribute(String name)
Clarification: session has various methods for use.
a) Request.getISO3Country()
b) Locale.getISO3Country()
c) Response.getISO3Country()
d) Local.retrieveISO3Country()
Clarification: Each country is usually denoted by a 3 digit code.ISO3 is the 3 digit country code.
a) DataInputStream data = new InputStream()
b) DataInputStream data = response.getInputStream()
c) DataInputStream data = request.getInputStream()
d) DataInputStream data = request.fetchInputStream()
Clarification: InputStream is an abstract class. getInputStream() retrieves the request in binary data.
a) The destroy() method is called only once at the end of the life cycle of a filter
b) The destroy() method is called after the filter has executed doFilter method
c) The destroy() method is called only once at the begining of the life cycle of a filter
d) The destroyer() method is called after the filter has executed
Clarification: destroy() is an end of life cycle method so it is called at the end of life cycle.
a) Servlets execute within the address space of web server
b) Servlets are platform-independent because they are written in java
c) Servlets can use the full functionality of the Java class libraries
d) Servlets execute within the address space of web server, platform independent and uses the functionality of java class libraries
Clarification: Servlets execute within the address space of a web server. Since it is written in java it is platform independent. The full functionality is available through libraries.
a) servlet container
b) servlet config
c) servlet context
d) servlet filter
Clarification: Servlet has various components like container, config, context, filter. Servlet filter provides the dynamic interception of requests and responses to transform the information.
i. URL rewriting
ii. Using session object
iii.Using response object
iv. Using hidden fields
v. Using cookies
vi. Using servlet object
a) i, ii, iii, vi
b) i, ii, iv, v
c) i, vi, iii, v
d) i, ii, iii, v
Clarification: URL rewriting, using session object, using cookies, using hidden fields are session tracking techniques.