GlassFish v3 Study 環境構築

Beginning Java EE 6 with GlassFish 3 (Expert's Voice in Java Technology)

Beginning Java EE 6 with GlassFish 3 (Expert's Voice in Java Technology)

洋書『Beggining Java EE 6 Platform with GlassFish 3』を通じて、最新JavaEE技術であるJava EE 6を学んで行こうかと。まずは環境構築(Chapter 1:Java EE 6 at a Glance)から。

進めていく上で必要となる環境は以下。

JDK/JUnit4/GlassFish v3はEclipseで導入済&これまでのエントリで粗方カバーしているので割愛。
また、書籍ではIntelliJ IDEAをベースに進めていくような記述があったけど、ここも割愛...とりあえずインストールはしてみたけれど(IntelliJ IDEA Communitiy Edition 9)、メニューが日本語化されないというのもあり挫折…環境自体の不慣れ(ここまでIntelliJ IDEA利用経験無)もありますし、Eclipseベースで行けるとこまで行ってみようかと。



Maven 2

環境そのものと、Maven関連プラグインを導入。

Microsoft Windows [Version 6.0.6000]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\>mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-07 04:16:01+0900)
Java version: 1.6.0_20
Java home: C:\jdk1.6.0_20\jre
Default locale: ja_JP, platform encoding: MS932
OS name: "windows vista" version: "6.0" arch: "x86" Family: "windows"
C:\>


  • 上記ページを参考にeclipse.iniに以下の記述を追加。相変わらずダイアログが表示されているけど、これはこれで良いのか?
-vm C:\jdk1.6.0_20\jre\bin\javaw

Derby

  • 公式サイトからアーカイブファイルを入手、解凍。(db-derby-10.6.1.0-bin.zip => C:\db-derby-10.6.1.0)
  • 必要な環境変数を各々設定。
    • DERBY_HOME C:\db-derby-10.6.1.0
    • JAVA_HOME C:\jdk1.6.0_20
    • PATH %DERBY_HOME%\bin (※追加)
  • コマンドプロンプト起動、[sysinfo]で以下の情報が表示されればOK。
Microsoft Windows [Version 6.0.6000]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\>sysinfo
------------------ Java 情報 ------------------
Java バージョン:       1.6.0_20
Java ベンダー:         Sun Microsystems Inc.
Java ホーム:           C:\jdk1.6.0_20\jre
Java クラスパス:       .;C:\jre1.6.0_17\lib\ext\QTJava.zip;C:\db-derby-10.6.1.0/
lib/derby.jar;C:\db-derby-10.6.1.0/lib/derbynet.jar;C:\db-derby-10.6.1.0/lib/der
byclient.jar;C:\db-derby-10.6.1.0/lib/derbytools.jar
OS 名:                 Windows Vista
OS アーキテクチャー:   x86
OS バージョン:         6.0
Java ユーザー名:       xxxx
Java ユーザー・ホーム: C:\Users\xxxx
Java ユーザー dir:     C:\Users\xxxx
java.specification.name: Java Platform API Specification
java.specification.version: 1.6
java.runtime.version: 1.6.0_20-b02
--------- Derby 情報 --------
JRE - JDBC: Java SE 6 - JDBC 4.0
[C:\db-derby-10.6.1.0\lib\derby.jar] 10.6.1.0 - (938214)
[C:\db-derby-10.6.1.0\lib\derbytools.jar] 10.6.1.0 - (938214)
[C:\db-derby-10.6.1.0\lib\derbynet.jar] 10.6.1.0 - (938214)
[C:\db-derby-10.6.1.0\lib\derbyclient.jar] 10.6.1.0 - (938214)
------------------------------------------------------
----------------- ロケール情報 ----------------
現行ロケール :  [日本語/日本 [ja_JP]]
ロケールのサポートが見つかりました: [cs]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [de_DE]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [es]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [fr]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [hu]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [it]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [ja_JP]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [ko_KR]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [pl]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [pt_BR]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [ru]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [zh_CN]
         バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [zh_TW]
         バージョン: 10.6.1.0 - (938214)
  • ネットワーク接続を行う場合、別途起動させる必要がある。bin/startNetworkServer.bat を実行。
C:\db-derby-10.6.1.0\bin>startNetworkServer.bat
2010-09-03 19:09:01.203 GMT : セキュリティーマネージャーが Basic サーバーセキュリティーポリシーを使用してインストールさ
れました。
2010-09-03 19:09:02.937 GMT : Apache Derby Network Server - 10.6.1.0 - (938214) が起動し、ポート 1527 で接続の受け入れ準
備が完了しました
  • 別ウインドウでログインを試み、色々操作を試してみる。環境へは[ij]で入る事が出来る。※OracleにおけるSQL*Plus的なニュアンス?
Microsoft Windows [Version 6.0.6000]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\>ij
ij バージョン 10.6
ij> connect 'jdbc:derby://localhost:1527/Chapter01DB;create=true';
ij> create table customer (
>       custId int primary key,
>       firstname varchar(20),
>       lastname varchar(20));
0 行が挿入/更新/削除されました
ij>
;
ij> describe customer;
COLUMN_NAME         |TYPE_NAME|DEC&|NUM&|COLUM&|COLUMN_DEF|CHAR_OCTE&|IS_NULL&
------------------------------------------------------------------------------
CUSTID              |INTEGER  |0   |10  |10    |NULL      |NULL      |NO
FIRSTNAME           |VARCHAR  |NULL|NULL|20    |NULL      |40        |YES
LASTNAME            |VARCHAR  |NULL|NULL|20    |NULL      |40        |YES

3 行が選択されました
ij> insert into customer values (1, 'Fred', 'Chene');
1 行が挿入/更新/削除されました
ij> insert into customer values (2, 'Sylvain', 'Verin');
1 行が挿入/更新/削除されました
ij> insert into customer values (3, 'Robin', 'Riou');
1 行が挿入/更新/削除されました
ij> commit;
ij> ;
ij> select count(*) from customer;
1
-----------
3

1 行が選択されました
ij> select count(*) as count from customer;
COUNT
-----------
3

1 行が選択されました
ij> select * from customer where custid=3;
CUSTID     |FIRSTNAME           |LASTNAME
-----------------------------------------------------
3          |Robin               |Riou

1 行が選択されました
ij>
  • dblookなるコマンドで色々情報を見ることも出来る。
C:\>dblook -d 'jdbc:derby://localhost:1527/Chapter01DB'
-- タイム・スタンプ: 2010-09-04 04:16:57.365
-- ソース・データベース: Chapter01DB
-- 接続 URL: jdbc:derby://localhost:1527/Chapter01DB
-- appendLogs: false

-- ----------------------------------------------
-- 表用の DDL ステートメント
-- ----------------------------------------------

CREATE TABLE "APP"."CUSTOMER" ("CUSTID" INTEGER NOT NULL, "FIRSTNAME" VARCHAR(20), "LASTNAME" VARCHAR(20));

-- ----------------------------------------------
-- キー用の DDL ステートメント
-- ----------------------------------------------

-- primary/unique
ALTER TABLE "APP"."CUSTOMER" ADD CONSTRAINT "SQL100904041230490" PRIMARY KEY ("CUSTID");

C:\>


Derbyは導入から利用まで手間も少なく、簡単に使えて良いですねぇ。
次章からそれぞれの技術について踏み込んで行く形になります。