この記事ではServletの中で頻繁に使用されるクラスとメソッドについて自分が見やすいようにまとめた。
おまじない
servletおまじない
- クラスメソッドの上にコンテキストルート以下のリンクを設定する
- HttpServletを継承する
- dogetメソッドをオーバーライドする
@WebServlet("/url_sample") public class sample extends HttpServlet { @Override protected void doGet(HttpServletRequest requset, HttpServletResponse response) throws ServletException, IOException { //TODO } }
htmlおまじない
aタグ
<a href="/servlet_sample/annotation?id=25">リンク</a>
クラス、メソッド
出力
PrintWriter out = resp.getWriter(); out.println("helloworld");
リスト
List<String> fruits = Arrays.asList("Apple", "Banana", "Cherry");
乱数
1から10までのランダムな数値を返す
Random random = new Random(); int sample = random.nextInt(10);
リクエスト(req)
パラメータの取得(req)
req.getParameter("key");
セッション(req)
宣言
HttpSession session = req.getSession();
get
Integer count = (Integer) session.getAttribute("count");
set
session.setAttribute("count", count);
フォワード(req)
RequestDispatcher rd = req.getRequestDispatcher("/hello"); rd.forward(request, response);
または
req.getRequestDispatcher("/hello").forward(request, response);
レスポンス(resp)
コンテントタイプの指定(resp)
resp.setContentType("text/plain; charset=UTF-8");
- text/plain
- text/html
- text/javascript
- image/jpeg
- image/png
- application/pdf
現在日時の取得(resp)
LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); String now = now.format(formatter);
ページのリロード(resp)
resp.setIntHeader("Refresh", 5);
リダイレクト(resp)
resp.sendRedirect("/servlet_sample/hello");