プログラミング中、あった問題 14
・JSPがクラスから直接にメソッドを呼びます。
クラス名.メソッド名();
・メソッドを呼ぶ時、値をもらいます。
value=クラス名.メソッド名();
・メソッドを呼ぶ時、staticで定義します。
public static データ型 メソッド名
・メソッドがstaticで定義したら、エラーになります。
原因は同じクラスの変数を使っています。
結論:JSPがクラスからメソッドを呼べません。
・新しいメソッドを作ります。
public static データ型 メソッド名
・新しいメソッドが既存の値をもらう方法
(既存の値はDataBaseからもらった値です。)
メソッドを呼ぶ時、値を入れます。
クラス名.メソッド名(値);
・どこから入れる値をもらいます。
JSP
String 変数名 = (String) request.getAttribute("変数名");
クラス名.メソッド名(値);
Beans
クラス名.メソッド名(値);
結論:JSPで値を渡すなら、一度Beansから値をもらうことが必要です。
Beansで渡すなら、新しいメソッドは何を処理したほうがいいですか?
そして、JSPは同じBeansから値をもらいます。
新しいメソッドを作ることが必要ないと思います。
・値をもらう方法
String 変数名 = (String) request.getAttribute("変数名");
・上記の方法でメソッドをもらいます。
できないと思います。
・複数メソッドを作ります。
コードが長くなって、値も一つ一つもらいます。
結論:明確に特定の値を処理するのはいいですが、似ているメソッドが存在するのは必要ないと思います。
配列の配列
複数の配列をまとめることができます。
しかし、デバッグで検査する時、配列は長くなります。
この問題について、新しい変数を作って、
何番目の配列を指定するなら、検査することが簡単になります。
ArrayList<ArrayList<String>> 配列名 = new ArrayList<>();
配列名.add(配列1);
配列名.add(配列2);
配列名.add(配列3);
配列名.get(0);
結論:JSPで新しい変数を定義することが必要ないです。
以前はBeansとJSPが新しい変数を追加しなければなりません。
今はBeansで新しい変数を作って、JSPでその配列を指定すると、結果を出ます。
・Spring Frameworkとは
フレームワークは自身で実行することができません。開発者のコードと一緒にのは完全なアプリケーションです。フレームワークは共通のプログラムをまとめので、再利用するのは可能です。フレームとは枠です。開発者たちがこの枠の下にプログラミングします。枠に開発のスビートが早くて、開発者のコードも一致性が高いです。将来に修正することが簡単になります。しかし、フレームワークの仕様要件を超えるなら(拡充機能がない場合)、修正することが難しくなります。本来、フレームワークの自体が制限であることです。
・Frameworkの利点
変更に強い
テストが簡単
拡張性が高い
保守性が高い
再利用性が高い