Servlet and Filter Initialization Parameters
Some servlets and filters require initialization parameters. The 
init-param element within a 
filter or 
servlet definition element contains initialization parameters for that filter or servlet instance. These are distinct from context parameters, discussed in 
Set Context Parameters. Each 
init-param contains a 
param-name element and a 
param-value element. Although the servlet container does not interpret the contents of the 
param-name and 
param-value, the contents of these elements must be legal XML. If the 
web.xml file is in UTF-16, the servlet container transcodes the contents of the 
param-name and 
param-value to UTF-8.
The web.xml snippet below defines two initialization parameters for a servlet, greeting and fontsize, and two for a filter, request and response.
 
<servlet>
  <servlet-name>helloWorld</servlet-name>
  <servlet-class>hello.createHelloWorld</servlet-class>
  <init-param>
    <param-name>greeting</param-name>
    <param-value>Hello, World!</param-value>
  </init-param>
  <init-param>
    <param-name>fontsize</param-name>
    <param-value>14</param-value>
  </init-param>
</servlet>
<filter>
  <filter-name>GenericFilter</filter-name>
  <filter-class>org.apache.tester.WrapperFilter</filter-class>
  <init-param>
    <param-name>request</param-name>
    <param-value>generic</param-value>
  </init-param>
  <init-param>
    <param-name>response</param-name>
    <param-value>generic</param-value>
  </init-param>
</filter>
If a definition contains two or more parameters with the same name, the container will present one param-value and ignore the others.
Reading Initialization Parameters describes the interface a servlet or filter uses to read initialization parameters.