【ITエンジニア】(9)Javaの基礎 [3]

eclipseの使い方

新規プロジェクトの作り方

ファイル→新規→Javaプロジェクト

プロジェクト名を入力→完了

クラスの作り方

ファイル→新規→クラス

名前を入力→完了

プログラムの実行

とりあえず適当なソースを書く

実行→実行→Javaアプリケーション

デバッグのやり方

そもそもデバッグとは何でしょうか?
処理を途中で止めて、その時点での変数の値を調べたり、プログラムをコマ送りで起動し分岐でどのような動きをしているかなど、様々なことを確認することができます。
ではデバッグのやり方を説明していきます。

まずはデバッグで止めたい場所にブレークポイントで印をつけます。

実行→デバッグ→Javaアプリケーション

起動するとこんな画面が出てくるので「はい」を選択

すると画面が切り替わりブレークポイントが6行目にあるのでそこでプログラムが一時停止します。

右上にある変数部分では現在停止している段階での変数の値を表示しています。
6行目の処理はまだ行われておらず、一行進めることで6行目の処理を行います。
1行のみ進める場合はF5キーを、そのまま残りの処理を読み込む、または次のブレークポイントまで進む場合はF8を押します。

F5を押すと7行目へカーソルが進み処理が行われました。
変数を確認すると色と値が変わっている項目があります。
このようにデバッグを行いながらバグや思ったように動いていない部分を探していきます。

DB接続とSQL

さて、サーバーサイドにおいて必須事項ともいえるDBへの接続方法についてここで説明しましょう。
まず初めにJDBCドライバの設定を行います。
プロジェクト→WebContent→WEB-INF→libへmysql-connector-java-x.x.xx-bin.jarを配置します。

次にビルドバスの確認を行います。
プロジェクトのコンテキストメニューからビルドパス→ビルドパスの構成を選択

メニューが開いたらライブラリータグのWebAppライブラリを開き、中にmysql-connector-java-x.x.xx-bin.jarがあれば設定完了です。

次に接続するためのコードを記載していきます。

Class.forName(“com.musql.jdbc.Driver”).newInstance();ではJDBCドライバを読み込んでいます。
DriverManager.getConnection(“jdbc:mysql://サーバ名/DB名”,”ユーザ名”,”パスワード”)でデータベースへ接続をします。

処理を行った後は必ずConnection.close()を使用し、接続を切るようにしましょう。

さてここからはSQL文を叩く方法を記載していきます。

ConnectionクラスのpreparedStatementメソッドを用いてSQLを叩くことができます。
SQL文に含まれている?は後続で記載されているPreparedStatementクラスのsetStringメソッドより何個目の?に何を記載するか 可変的に設定することができ、第二引数に変数を指定することができます。

この段階ではSQLはまだ走っておらずPreparedStatementクラスのexecuteQueryメソッドを使うことで実際にSQL文を実行します。
また、実行後帰ってきた結果を取得するためにResultSetクラスの変数へ返り値を代入して保持します。

ResultSetに代入された値は構造で気にはDBと同じようになっており、nextメソッドを使うことで1レコードごとに取得することができます。
レコードから値を取得するときはgetStringメソッドやgetIntメソッドと用い、引数にカラム名を与えることで値を返り値として取得することができます。

WEBアプリケーションとは

WEBアプリケーションとはインターネット、もしくはイントラネットなどのネットワークを 介して使用するアプリケーションソフトウェアのことを指します。

WEBアプリケーションの構成は大きく分けると2つになり、クライアントサイドとサーバーサイドの2種類に分けられます。

クライアントサイドはユーザが手に触れて見ることのできる領域をさし 主にHTML、CSS、Javascriptなどを用い表示を行います。
サーバーサイドはユーザは普段見ることや触れることのできない領域をさし、主にRuby、PHP、Perl、Javaなどが用いられます。

基本的にクライアントサイドからの要求に対して処理を行ったり データベースからの情報に対して処理を行ったりします。

今回はJavaを使ってWEBアプリケーションを作成するのでサーブレットJSPという技術を使って作成していきます。

サーブレットとは

サーブレットはJavaを使ってサーバサイドプログラムを作るための技術です。
サーブレットではブラウザからリクエストがあるとアプリケーションサーバがサーブレットクラスのインスタンスを生成します。

ではサーブレットクラスの作成をしていきましょう。

ブラウザからリクエストを受けるとアプリケーションサーバがサーブレットクラスのdoGet()を呼び出します。

例を出しつついろいろと説明していきましょう。

まず、上記のようなサンプルがあったとしましょう。

@WebServletには”/sample”が記載されています。
これはURLでhttp://ホスト名:ポート番号/プロジェクト名/sampleにアクセスされたときに呼び出されるサーブレットクラスであることを示しています。

URLにアクセスされると上記のサーブレットクラスのdoGet()メソッドの処理が行われます。
request.setAttribute(“msg”,”Hello World”); では HttpServletRequest に msg という変数に Hello World という文字列を 代入してリクエストに乗せています。

this.getServletContext().getRequestDispatcher(“/Sample.jsp”).forward(request, response); では Sample.jsp に対して doGet() で request や response に乗せた値を引数として渡している処理になります。

doPost()では画面からPOSTで送信されてきた場合の処理を記載します。
request.getParameter(“name”);では画面からPOSTで送信されてきた値からnameの値を取得して来ています。

基本的にここらへんの処理を覚えておけばSEで覚えたことを応用しいろいろな処理が行えます。

JSPとは

JSPとはJava Server Pagesの略称でPHPなどと同じようにHTML内にそのままコードが記載できるものです。
簡単にですが説明を行っていきましょう。

基本的にJSPでは<%@  ~  %>か<%  ~  %>で囲まれた部分にコードを記載することができます。

Javaで行うインポート文は<%@ page import=”パッケージ”%>で記載することができ、ほかのクラスのメソッドを使用することもできます。
ほかにも上記のようにJSPの文字コードやエンコーディングを指定することができます。

処理は<%  ~  %>の中に記載し、上記のようにコードの間にHTMLを記載することもできます。

※最新の情報の取得・更新に努めておりますが、掲載内容については、その正確性、完全性、有用性、最新性等についていかなる保証もするものではありません。

タイトルとURLをコピーしました