『スッキリわかる サーブレット&JSP入門』

  • localhost:8080 自身のTomcatにリクエスト

  • サーブレットはサーブレットクラス。クラスはコンパイルとインスタンス化の2つの作業が必要。

    • コンパイルは、保存すると自動で行われる(.class)

    • インスタンス化は、サーバ実行で自動で行われる。

  • サーブレットはブラウザからURLリクエストで実行される

  • doGet()doPost()はオーバーライドしてる。

  • WEBアプリに関する設定: アノテーションor web.xml

JSP(JavaServer Pages)

  • フォワードでしか表示されない。(WEB-INF以下)

フォーム

  • 絶対パスと相対パス。絶対は/から始まる。action指定の際に意識。

  • doPost()の入力チェックはnullとlength

  • inputのnameがサーブレットで受け取るgetParameterと対応

MVC

  • リダイレクトはURLでブラウザに再度リクエストさせる2往復(URL変わる)

リクエストスコープ

  • VO(Value Object) = Java Beans

  • リクエストはレスポンス返されるまで

  • サーブレットでsetAttributeしてJSPで利用するまでの領域

  • JSPでpage import する

セッションスコープ

  • カートやログインで使う。

  • リクエスト跨いでもインスタンスを共有したい

  • サーバがブラウザごとにセッションIDを作成して区別(Cookie)

EL(Expression Language)式

  • c:out でXSS対策

  •  ${userVO.name}で nameのgetterメソッド自動呼び出し

  • Core…c, Functions…fn

  • JSTL(JSPのTag Library)

JDBC(Java DB Connectivity)とDAO

  • JDBC… JavaからDBを操作するAPI。利用するには、2つ必要。

    • 1. java.sqlパッケージのクラスやインスタンス(Connection, Prepared Statement, Result Set, SQLException)

    • 2. JDBCドライバ(jarファイル)

エラーとの付き合い方

  • エラーはチャンス。スタックトレースに原因が書かれている。

404(存在しないページ)

  • URL飛ばした部分を怪しむ

    • a href, form action

    • ファイル名

    • WEB-INF以下かどうか

    • フォワード、リダイレクト先

405

  • GET POSTの間違い

    • form method指定先

    • doGet()doPost()合ってるか

500(サーバエラー。例外catchされない)

  • 例外が発生し、最後までcatchされないと表示される。

  • 例外読んでそれごとに対応策を考える

「クリーン」サーブレットの変更が反映されない

前のサーブレットクラスのインスタンスが利用されてる。

IllegalStateException(returnでレスポンスは一回にする)

NullPointerException

引数にnullが入ってるからそこの行を見る。デバッグしながら変数を見ると良い。

この記事が気に入ったらサポートをしてみませんか?