Newsletter |
Example of ServletConfig in Java Servlet
Let us see why/how to use ServletConfig interface in java servlet….
- ServletConfig is one of the pre-defined interface.
- ServletConfig object is used for developing flexible servlets.
- ServletConfig objct exist one per servlet program.
- An object of ServletConfig created by the container during its initialization phase.
- An object of ServletConfig is available to the servlet during its execution, once the servlet execution is completed, automatically ServletConfig interface object will be removed by the container.
- An object of ServletConfig interface contains <init-param> details at web.xml, of a particular servlet.
- The moment when we are using an object of ServletConfig, we need to configure the web.xml by writing <init-param> tag under <servlet> tag of web.xml.
- When ever compiler executes init() mehod then the ServletConfig will be created in general.
- An object of ServletConfig contain the <init-param> data in the form of key,value pairs, here the keys represents init param names and values are its values, which are represented in the web.xml file
How to Get ServletConfig Object into Servelt
An object of ServletConfig can be obtained in 2 ways, they are…
Way 1
ServletConfig conf = getServletConfig();
In the above statement, we are directly calling getServletConfig() method as it is available in Servlet interface, inherited into GenericServlet and defined and further inherited into HttpServlet and later inherited into our own servlet class.
Way 2
ServletConfig object will be available in init() method of the servlet.
public void init(ServletConfig config)
{
// …………………
}
So finally we are able to create ServletConfig object in our servlet class, then how to get the data from that object… ?
How to Retrieve Data from ServletConfig Interface Object
In order to retrieve the data of the ServletConfig we have two methods, which are present in ServletConfig interface..
- public String getInitParameter(“param name”);
- public Enumeration getInitParameterNames();
I am not going to explain about these methods, these are similar to ‘Retrieve Client Input Data in Servlet‘ but here we are retrieving values from web.xml that’s it.
Example of ServletConfig
Directory Structure
Files Required
- index.html
- OnServletConfig.java
- web.xml
index.html
<font face="verdana" size="2px"> <form action="onSCG" method="post"> Example on ServletConfig<br> <input type="submit" value="Calculate Sum"> </form> </font>
OnServletConfig.java
package java4s; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class OnServletConfig extends HttpServlet { protected void doPost(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException { PrintWriter pw=res.getWriter(); res.setContentType("text/html"); ServletConfig conf=getServletConfig(); String s1=conf.getInitParameter("n1"); String s2=conf.getInitParameter("n2"); pw.println("n1 value is " +s1+ " and n2 is " +s2); pw.close(); } }
web.xml
<web-app> <servlet> <servlet-name>onServletConfig</servlet-name> <servlet-class>java4s.OnServletConfig</servlet-class> <init-param> <param-name> n1 </param-name> <param-value> 100 </param-value> </init-param> <init-param> <param-name> n2 </param-name> <param-value> 200 </param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>onServletConfig</servlet-name> <url-pattern>/onSCG</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> </web-app>
Output
You Might Also Like
::. About the Author .:: | ||
Awesome explanation! Could you elaborate just this one point:
An object of ServletConfig interface contains details at web.xml, of a particular servlet
Do you mean the reference of ServletConfig has access to the details in web.xml file contained in the section of the Servlet which initialized this ServletConfig reference?
Examples with background things are very nice.
I’m preparing some notes based on practical examples.
I’m referring ur site. It gives very clear idea.
Thanks.
when we get some data suppose @login time we get userid and password
we evaluate whether it is true info or not
and if true the how to redirect him to new page and how to write some detail on that page if i want to
like if user is admin i want to show him some control menu that i dont want to show to ordinary user?
this is good but you only mention that eclipse.
i need netbeans preview pls developed.
Thanx. The explanation is simple and this simplicity is great. Boosted my confidence in study of servlets .
Hi can any one explains this two lines
SevletConfig cfg=getServletConfig();
cfg.getInitParameter(“n1”);
Thanks in advance
The code written above is just to create an object of ServletConfig so that it can store the details regarding specific servlet.If you are not familiar with it,then go through the concept of servlet config as well as ServletContext.
wrt OnServletConfig.java : I think recommended way to use it is using init(ServletConfig config) method.
Can please give me a practical example for servlet config and servlet context. SO that I can get a clear idea and use them appropriately!
Thanks!!
thanks for giving such a valuable information
This sesstion very useful know about servlets context….thanks for sharing….
we are supporting to all and thanks
what is container
Good Explanation….
Thanks
Hi, I am new to servlet.But I was clearly understand after reading this page.
Good explaination….thanks.