おっかなびっくりプロジェクト始動

<< 戻る   トップ >>

さて、術式をはじめよう。当面の目標は、MySQL 上の鴨乃嘴南蛮 blog の記事を表示するウェブアプリケーション作りである。ちなみに、次の目標は MySQL 上のデータを Derby に移植することだ。

NetBean 3.7 を起動したのはいいのだが、もうここで困ってしまう。「Beginning Java EE 6」を見ながらスタートする。作るべきプロジェクトは Java Web の Web アプリケーションプロジェクトだ。プロジェクト名は "Sesto-P1"、サーバは GlassFish 3.1.2 で Java EE 6 Web を使う。すでに一世代古くはなっているが、まずはテキスト完備の組み合わせでスタートだ。からっぽのプロジェクトをテスト実行する。問題無し。

次に、データベース接続のための JPA エンティティを作成する。まずは、"# service mysqld start" でMySQL サーバを動かしておこう。続いて、NetBean でプロジェクト右クリック⇨新規⇨その他... ⇨持続性⇨データベースからのエンティティクラスを選択。ここまでは教科書「Beginning Java EE6」のシナリオ通りだが、ここからが未知の領域だ。データソースを指定するのだが、教科書では jdbc/sample という既存の練習用のデータベースに接続するのだが、かわりに新しいデータソースを作る必要がある。「新しいデータソース」で JNDI 名を "jdbc/mysql/nanban_web" とし (仮名: 正しいお作法に則っているかは疑問)、データベース接続を新規接続にする。ドライバの選択肢には幸い MySQL(Connector/J driver) があるので、これを選択。ホスト (localhost) やデータベース名、ユーザ・パスワードなど必要事項を設定して念のため接続テストをして接続を確認した。スキーマがどうたら、というがわからないので先に進めると、接続用の名前が "jdbc:mysql://localhost:3306/nanban_web?zeroDateTimeBehavior=convertToNull [デフォルト・スキーマの(略)]" となる。このまま新規接続ウィザードを終了する。これで「データソースを作成」のデータベース接続にさきほどの接続用の名前が入力される。新規接続ウィザードを完了。ようやく教科書の既知の領域に帰還できたので、使用するテーブル article を選択し、生成されるエンティティクラスのパッケージ名を sesto.entities として完了。sesto.entities.Article クラスが自動生成された。

確認すると、persisitence.xml ファイルが作られていた。

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="Sesto-P1PU" transaction-type="JTA">
    <jta-data-source>jdbc/mysql/nanban_web</jta-data-source>
    <exclude-unlisted-classes?>false>/exclude-unlisted-classes>
    <properties/>
  </persistence-unit>
</persistence>

ユーザ名とパスワードは隠蔽したのではなく、ここには記されていない。いいのかな?と思いつつ本日はここまで。次は article データベースにアクセスする EJB をつくろう。


作成: 2013-07-01 14:52:45.0更新: 2013-07-01 14:52:45.0
http://museo-anonimo.jp/nanban/?id=1215,http://museo-anonimo.jp/nanban/tr/1215