package javacodebook.server.servletbasics.initparam;
import javax.servlet.*;
import javax.servlet.http.*;
/**
* Ein einfaches Beispiel, wie Servlet-Initialisierungsparameter ausgelesen und
* verwendet werden.
*/
public class InitParamServlet extends HttpServlet {
private String user;
private String tmpdir;
private String imgdir;
/** Beim ersten Laden eines Servlets wird es vom Servlet-Container
* initialisiert. Dabei wird ein Objekt der Klasse ServletConfig
* übergeben, das die in der web.xml angegebenen Parameter enthält.
*/
public void init(ServletConfig config) throws ServletException {
//sehr wichtig, damit das Servlet ordnungsgemäss initialisiert wird
super.init(config);
//jetzt kommen die eigenen Aktionen
this.user = config.getInitParameter("user");
this.tmpdir = config.getInitParameter("tmpdir");
this.imgdir = config.getServletContext().getInitParameter("image_dir");
}
/** Ausgabe der Parameter */
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
response.setContentType("text/html");
java.io.PrintWriter out = response.getWriter();
out.println("user = " + user + "
");
out.println("tmpdir = " + tmpdir + "
");
out.println("image dir = " + imgdir + "
");
out.close();
}
}
--- web.xml ---
image_dir
images
parameter
javacodebook.server.servletbasics.initparam.InitParamServlet
user
Max Mustermann
tmpdir
c:\temp
parameter
/parameter