サーブレット計画その1.5
表示させるメソッドを実装したクラス
2パターンにわけてみました
urlの?以降を自分で=や&で分けて表示させる(GETにのみ有効)
import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.security.AccessController; import javax.servlet.http.HttpServletRequest; import sun.security.action.GetPropertyAction; public class SplitGet implements ParameterPrinter{ public void printParameter(HttpServletRequest req, PrintWriter writer) throws UnsupportedEncodingException{ String query = req.getQueryString(); String[] queryCut = query.split("&"); for (String tmp : queryCut) { if (tmp.contains("=")) { String[] queryCutCut = tmp.split("="); String key = URLDecoder.decode(queryCutCut[0],"MS932"); System.out.println((String)AccessController.doPrivileged ( new GetPropertyAction("file.encoding") )); writer.print(key + " "); if (queryCutCut.length >= 2) { String par = URLDecoder.decode(queryCutCut[1],"MS932"); writer.print(par); } writer.print("</br>"); } else { writer.print(tmp); } } } }