- 運営しているクリエイター
記事一覧
Java(servlet/JSP)とDB
JDBCドライバ:アプリケーションサーバからDBに接続するツール
まず、Javaでデータベース(以下DB)が扱えるように、JDBCドライバをインストールする必要がある。使用するDBのサイトでDLできるので探す
データソース:アプリケーションサーバを利用してDBに接続する仕組み
接続情報の管理(DBへの接続・切断)を簡素化したり、コネクションプールという機能によって、DBへの接続情報を再利用して
HTTPのリクエストとレスポンス
リクエスト
servletに送られるHTTPプロトコルによるリクエストの内容を読み解くと
以下手打ち
POST /request/URL HTTP/1.1 //リクエストラインHost: localhost:8080 //メッセージヘッダ↓Connection: keep-alive //Con
Servletのマルチスレッド動作
Servletは初回リクエストをうけ、サーバー上で1度起動されると
以降再度リクエストがあった場合起動済みのServletを再利用する
また複数のリクエストが同時にあった場合にも対応できるよう
マルチスレッド動作が可能となっている
ただ同時にリクエストを受け、並行で処理をしている中で
変数の値が共有されてしまい動作異常をおこしてしまう可能性があります
synchronizedメソッド
この
JSP ディレクティブ/宣言/式/スクリプトレット
<%@ ~ %> ディレクティブ
page:ページの属性・設定等の記述
language="java" //使用言語の記述(不要)
contentType="text/html; charset=UTF-8"
//responseのエンコードの記述(必要)
pageEncoding="UTF-8" //なんのエンコード?(必要)
import="java.lang.*" //java
サーブレット⇔JSPの処理受け渡し
○Forward (フォワード:1方向のやり取り)
requestを受けたサーブレット/JSPから他のサーブレット/JSPに処理を移し
(サーブレット⇒JSP(このforwardが主流)、JSP⇒サーブレットも可能)
遷移先のサーブレット/JSPからresponseを返すことができる機能
request.getRequestDispatcher("URL").forward(request,
Filter の適用
servlet/JSPの複数ファイル内で同一の処理が記述されている場合
その同一処理部分だけをFilterと呼ばれる別ファイルに置いておき
各ファイルからFilterを呼び出す形で処理を簡潔化することができる
Filterの作成
インタフェースjavax.servlet.Filterをimplements(実装)するクラスを宣言し
アノテーションを @WebFilter(urlPatterns=
servletのライフサイクル
servletの起動から終了までの経過をライフサイクルと呼ぶ
起動時
initメソッド : 起動時に1度だけ実行されるメソッド
public void init() throws ServletException
リクエスト処理
serviceメソッド:requestの種類に関わらず実行されるメソッド
public void service(ServletRequest request,