【Tomcat5 と eclips と MySQL4.1 を使ってる】


■Webアプリケーションルート 例 C:\eclipse\workspace\sampleApplication

|

+■WEB-INF

| |

|  +■classes クラスファイル *.class

| |

|  +■lib ライブラリファイル、データベースにアクセスするJDBCドライバ

| |

|  +■tags タグファイル(カスタムタグを定義するためのもの)

| |

|  +■src ソースプログラム *.java

| |

|  +■tld TLDファイル(カスタムタグを定義するためのもの)

| |

| + web.xml (設定ファイル)

|

+■image 画像ファイル

|

+■view 見た目をつくるファイル *.jsp *.html


          ■は、J2EEで構成が決まっている部分


★web.xml には、こんなことを書く 

--web.xml--

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee "
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
version="2.4">

<jsp-config>
<taglib>
<taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
</taglib>
</jsp-config>

<servlet>
<servlet-name>MainController</servlet-name>
<servlet-class>ecsite.MainController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MainController</servlet-name>
<url-pattern>/mainController</url-pattern>
</servlet-mapping>


</web-app>


★コンテキスト記述子 (sampleapplicationという名前のWebアプリケーションの登録をする)

C:\Tomcat5\conf\Catalina\localhost\sampleapplication.xml

----------

<Context path="/sampleapp"
docBase="C:\eclipse\workspace\mvcExample" reloadable="true">
<Resource
name="jdbc/mydata"
auth="Container"
type="javax.sql.DataSource"
username="root"
password="mysql"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/ecsite?useUnicode=true&amp;characterEncoding=UTF-8"/>
</Context>
----------

JavaとMySQLを取り持つドライバ MySQL Connector/J 3.1 (mysql-connector-java-3.1.14-bin.jar) をインストールした。

http://dev.mysql.com/downloads/connector/j/3.1.html


JDBCドライバ

・Javaプログラムからデータベースサーバへ接続/切断する

・SQL文を組み立て、データベースサーバで実行させる

・データベースサーバが処理した結果を取り出す

・データベースの情報、処理結果に関する情報を取り出す

・データベースによる差異は、JDBCドライバが吸収してくれる


■インストール

mysql-connector-java-3.1.14-bin.jar を Eclipse でつかうには

1)Webアプリケーションルートフォルダ\WEB-INF\lib\mysql-connector-java-3.1.14-bin.jar を配置

2)Eclipseを起動 プロジェクトを右クリックして[更新]

3)プロジェクトを右クリックして[プロパティ]開く

4)[Javaのビルドパス]、[ライブラリ]、[JARの追加]でmysql-connector-java-3.1.14-bin.jarを選ぶ

■配列

要素数 : 不変、最初に決定したまま

格納できる値 : 決まったデータ型

基本データ型の格納 : できる


■コレクションフレームワーク

要素数 : 可変、追加削除により変化

格納できる値 : オブジェクト型ならなんでもOK

基本データ型の格納 : できない

JavaBeans必須


・引数のないコンストラクタ

・publicなフィールド変数は作らない

・各プロパティを読み書きするメソッド(アクセスメソッド)を用意する


--User.java--

package ecsite;


//** ユーザークラス **//
public class User {

//データベースuserテーブルを使う
private String userid;//ユーザーID
private String password;//パスワード
private String username;//ユーザーの名前
private String address;//ユーザーの住所
public boolean registeredUser;//ユーザーDBにuseridとpassword登録のあればtrue

//コンストラクタ 引数なし
public User(){}

//コンストラクタ
public User(String userid, String password, String name, String address){
this.userid = userid;
this.password = password;
this.username = name;
this.address = address;

}

//各フィールド変数の読み取り、書き込み用メソッド
public String getUserid(){return userid;}
public void setUserid(String userid){this.userid = userid;}

public String getPassword(){return password;}
public void setPassword(String password){this.password = password;}

public String getUserame(){return username;}
public void setUserame(String username){this.username = username;}

public String getAddress(){return address;}
public void setAddress(String address){this.address = address;}

public boolean isRegisteredUser(){return registeredUser;}

}


C:\JAVA_LESSON\src\lib\javalesson\TestA.java

C:\JAVA_LESSON\src\lib\javalesson\TestB.java

C:\JAVA_LESSON\src\lib\javalesson\TestC.java

この3つをJARファイルにまとめる


例 こんなパッケージ宣言されてるとする

--TestA.java--

package lib.javalesson;

public class TestA{
   //なんか処理記述
}

-------------


コマンドプロンプトを起動

----------

C:\JAVA_LESSON>javac -d classes ser/lib/javalesson/Test*.java

----------

めんどくさいから * をつかってまとめてコンパイル。

C:\JAVA_LESSON\classes\lib\javalesson\TestA.class

C:\JAVA_LESSON\classes\lib\javalesson\TestB.class

C:\JAVA_LESSON\classes\lib\javalesson\TestC.class ができる。

 ※別に、クラスファイル以外でもjarにまとめられるけど


コマンドプロンプトでカレントディレクトリを移動してから jarコマンド

----------

C:\JAVA_LESSON\classes>jar cvf javalessonlib.jar lib

----------

libの中に入ってるものが全部 javalessonlib.jar という名前のJARファイルにまとめられる

c JARファイルを新規作成する

v 詳細な情報を画面に出力する

f ファイル名を指定


C:\JAVA_LESSON\classes\javalessonlib.jarができる

META-INF\MANIFEST.MFも自動的に作られる、マニフェストファイルにはメタ情報が入ってるだな。

直接起動できるjarにしたい時には、MANIFEST.MFに、書く。

実行するには javalessonlib.jar を C:\JAVA_LESSON\lib へ移動 


コマンドプロンプトでカレントディレクトリを移動してから javaコマンド

----------

C:\JAVA_LESSON>java -cp lib/javalesson.jar lib.javalesson.TestA

----------

※jarファイルの中にも、パッケージと同じ階層ができるようにする

※実行するときは、パッケージの中に同じ階層があるから、そこをズバリ指定して実行する


■参考サイト

http://www.fk.urban.ne.jp/home/kishida/kouza/old/javajar.html