ServletConfig
日本語 | 小奉仕人設定 |
英語 | servlet configuration |
ふりがな | さーぶれっとこんふぃぐ |
フリガナ | サーブレットコンフィグ |
サーブレットの設定を取得するためのインターフェイス。
J2EEに含まれるインターフェイスのひとつ。パッケージも含めたインターフェイス名はjavax.servlet.ServletConfig。
HttpServletインターフェイスのgetServletConfig()メソッドでServletConfigインターフェイスの実装クラスの参照を取得することができる。
ServletConfigインターフェイスのgetInitParameterNames()メソッドで、web.xmlで設定した「サーブレットの初期値」を取得することができる。
「サーブレットの初期値」は<init-param>タグによって設定する。<param-name>タグで「名前」を、<param-value>タグで値を指定することで、名前に値が結び付けられて登録される。
getInitParameterNames()メソッドはこの「名前」一覧を取得することができる。さらに、getInitParameter()メソッドで名前を指定することで、結び付けられた「値」を取得することができる。
J2EEに含まれるインターフェイスのひとつ。パッケージも含めたインターフェイス名はjavax.servlet.ServletConfig。
HttpServletインターフェイスのgetServletConfig()メソッドでServletConfigインターフェイスの実装クラスの参照を取得することができる。
ServletConfigインターフェイスのgetInitParameterNames()メソッドで、web.xmlで設定した「サーブレットの初期値」を取得することができる。
「サーブレットの初期値」は<init-param>タグによって設定する。<param-name>タグで「名前」を、<param-value>タグで値を指定することで、名前に値が結び付けられて登録される。
getInitParameterNames()メソッドはこの「名前」一覧を取得することができる。さらに、getInitParameter()メソッドで名前を指定することで、結び付けられた「値」を取得することができる。
参考サイト
<?xml version="1.0" encoding="Windows-31J"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<!-- webapps/sample-servlet/WEB-INF/web.xml -->
<web-app>
<!-- SampleServletサーブレットの設定を行います。 -->
<servlet>
<!-- サーブレット名と対応するクラス。 -->
<servlet-name>SampleServlet</servlet-name>
<servlet-class>SampleServlet</servlet-class>
<!-- 初期値。 -->
<!-- これがServletConfigインターフェイスのgetInitParameterNames()メソッドで取得されます。 -->
<init-param>
<param-name>名前</param-name>
<param-value>値</param-value>
</init-param>
</servlet>
</web-app>
// webapps/sample-servlet/WEB-INF/src/SampleServlet.java
// http://localhost:8080/sample-servlet/servlet/SampleServlet でアクセスできます。
// このサンプルプログラムは「サーブレット」の項目に書かれている準備を行ってから使用してください。
import java.util.Enumeration;
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 SampleServlet extends HttpServlet
{
/**
* リクエストとしてHTTPメソッドのGETが渡されるとこのメソッドが呼ばれます。
*/
public void doGet( HttpServletRequest request, HttpServletResponse response ) throws IOException, ServletException
{
// Content-Typeをセット。
response.setContentType( "text/html;charset=Windows-31J" );
// HTML出力用のPrintWriterを取得します。
PrintWriter out = response.getWriter();
// HTMLを出力します。
out.println( "<HTML>" );
out.println( "<HEAD>" );
out.println( "<TITLE>サーブレットのテスト</TITLE>" );
out.println( "</HEAD>" );
out.println( "<BODY>" );
// HttpServletクラスのgetServletConfig()メソッドで、
// ServletConfigインターフェイスを取得します。
ServletConfig config = getServletConfig();
// getServletName()メソッドで「サーブレット名」を取得します。
String servletName = config.getServletName();
out.println( servletName );
out.println( "<BR>" );
out.println( "<BR>" );
// SampleServlet
// 初期設定一覧を取得して、出力します。
// 「初期設定」とは、web.xmlの<web-app><servlet><init-param>で記述した
// 設定のことです。
Enumeration enumeration = config.getInitParameterNames();
for( ; enumeration.hasMoreElements(); )
{
String name = (String)enumeration.nextElement();
out.println( name );
out.println( " / " );
String parameter = config.getInitParameter( name );
out.println( parameter );
out.println( "<BR>" );
}
// 名前 / 値
out.println( "</BODY>" );
out.println( "</HTML>" );
}
}
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<!-- webapps/sample-servlet/WEB-INF/web.xml -->
<web-app>
<!-- SampleServletサーブレットの設定を行います。 -->
<servlet>
<!-- サーブレット名と対応するクラス。 -->
<servlet-name>SampleServlet</servlet-name>
<servlet-class>SampleServlet</servlet-class>
<!-- 初期値。 -->
<!-- これがServletConfigインターフェイスのgetInitParameterNames()メソッドで取得されます。 -->
<init-param>
<param-name>名前</param-name>
<param-value>値</param-value>
</init-param>
</servlet>
</web-app>
// webapps/sample-servlet/WEB-INF/src/SampleServlet.java
// http://localhost:8080/sample-servlet/servlet/SampleServlet でアクセスできます。
// このサンプルプログラムは「サーブレット」の項目に書かれている準備を行ってから使用してください。
import java.util.Enumeration;
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 SampleServlet extends HttpServlet
{
/**
* リクエストとしてHTTPメソッドのGETが渡されるとこのメソッドが呼ばれます。
*/
public void doGet( HttpServletRequest request, HttpServletResponse response ) throws IOException, ServletException
{
// Content-Typeをセット。
response.setContentType( "text/html;charset=Windows-31J" );
// HTML出力用のPrintWriterを取得します。
PrintWriter out = response.getWriter();
// HTMLを出力します。
out.println( "<HTML>" );
out.println( "<HEAD>" );
out.println( "<TITLE>サーブレットのテスト</TITLE>" );
out.println( "</HEAD>" );
out.println( "<BODY>" );
// HttpServletクラスのgetServletConfig()メソッドで、
// ServletConfigインターフェイスを取得します。
ServletConfig config = getServletConfig();
// getServletName()メソッドで「サーブレット名」を取得します。
String servletName = config.getServletName();
out.println( servletName );
out.println( "<BR>" );
out.println( "<BR>" );
// SampleServlet
// 初期設定一覧を取得して、出力します。
// 「初期設定」とは、web.xmlの<web-app><servlet><init-param>で記述した
// 設定のことです。
Enumeration enumeration = config.getInitParameterNames();
for( ; enumeration.hasMoreElements(); )
{
String name = (String)enumeration.nextElement();
out.println( name );
out.println( " / " );
String parameter = config.getInitParameter( name );
out.println( parameter );
out.println( "<BR>" );
}
// 名前 / 値
out.println( "</BODY>" );
out.println( "</HTML>" );
}
}
<?xml version="1.0" encoding="Windows-31J"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <!-- webapps/sample-servlet/WEB-INF/web.xml --> <web-app> <!-- SampleServletサーブレットの設定を行います。 --> <servlet> <!-- サーブレット名と対応するクラス。 --> <servlet-name>SampleServlet</servlet-name> <servlet-class>SampleServlet</servlet-class> <!-- 初期値。 --> <!-- これがServletConfigインターフェイスのgetInitParameterNames()メソッドで取得されます。 --> <init-param> <param-name>名前</param-name> <param-value>値</param-value> </init-param> </servlet> </web-app> // webapps/sample-servlet/WEB-INF/src/SampleServlet.java // http://localhost:8080/sample-servlet/servlet/SampleServlet でアクセスできます。 // このサンプルプログラムは「サーブレット」の項目に書かれている準備を行ってから使用してください。 import java.util.Enumeration; 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 SampleServlet extends HttpServlet { /** * リクエストとしてHTTPメソッドのGETが渡されるとこのメソッドが呼ばれます。 */ public void doGet( HttpServletRequest request, HttpServletResponse response ) throws IOException, ServletException { // Content-Typeをセット。 response.setContentType( "text/html;charset=Windows-31J" ); // HTML出力用のPrintWriterを取得します。 PrintWriter out = response.getWriter(); // HTMLを出力します。 out.println( "<HTML>" ); out.println( "<HEAD>" ); out.println( "<TITLE>サーブレットのテスト</TITLE>" ); out.println( "</HEAD>" ); out.println( "<BODY>" ); // HttpServletクラスのgetServletConfig()メソッドで、 // ServletConfigインターフェイスを取得します。 ServletConfig config = getServletConfig(); // getServletName()メソッドで「サーブレット名」を取得します。 String servletName = config.getServletName(); out.println( servletName ); out.println( "<BR>" ); out.println( "<BR>" ); // SampleServlet // 初期設定一覧を取得して、出力します。 // 「初期設定」とは、web.xmlの<web-app><servlet><init-param>で記述した // 設定のことです。 Enumeration enumeration = config.getInitParameterNames(); for( ; enumeration.hasMoreElements(); ) { String name = (String)enumeration.nextElement(); out.println( name ); out.println( " / " ); String parameter = config.getInitParameter( name ); out.println( parameter ); out.println( "<BR>" ); } // 名前 / 値 out.println( "</BODY>" ); out.println( "</HTML>" ); } }