ぶっちゃけここはお任せなので、めんどくさい人は1カラムでもいいでしょう。VARCHAR(1000)これでデータベース側は準備完了です。以下の大半の処理はデータベースを以下に効率的に処理するかという観点になってます。EEが元々設計されていることに由来します。EEがある現代は恵まれた世界だなと思います。今回作成するパッケージはは3つ。CRUDを行うDAOと、ビジネスロジックを記述するLogic、および、データベースの写像としてのEntityです。LogicとDAOをごっちゃにして作る人がいますがやめたほうがいいでしょう。Queryの記述がメインのDAOはあくまでDAOとして分けておかないと、数年後に破綻する羽目に陥る気がします。以下NetBeansを使っていますが、一点だけお勧めの設定変更があります。NewやConsolaなど英字等幅フォントにに変更すると非常に見やすくなります。Colorsからどうぞ。6からWARにEJBを入れられるようになったので、今回もそれを活用します。Mavenのプロジェクトを選択して下さい。ここで間違って後で地獄を見る系の人が多いです。NetBeansのオリジナルプロジェクトファイルは廃止していいんじゃないかなと思うのですが・・・プロジェクトは適当に。「advent-jee7」としておきます。Web」を選択します。ちなみにこれはWebプロファイルであり、Fullプロファイルをここで選択できないのはNetBeansのバグですね。Finishして、生成されたプロジェクトファイルを手作業で修正します。pom.xmlを開き、「javaee-web-api」を「javaee-api」に変更して保存し、プロジェクトをビルドすれば完了です。これを・・・こんな感じに。これでEJBがWAR内でフルに使えるようになります。ここから開始しましょう。EEだとJPA一択です。元ネタのHibernateと一緒なので、大体誰でも理解できると思いますが、要は「テーブルの1行=Javaクラスの1インスタンス」で処理するだけの単純明快な標準フレームワークです、と書けばいいでしょうか。業務システム構築では、こういうところをセコセコ手作業してたらやってられないわけですので、Databaseのテーブルからちゃっちゃか自動生成してしまいます。Database」を選択し、MySQLの接続を選択して、JNDIデータソース名「jdbc/advent」を指定して、上で作成した「Customer」テーブルを選択します。あとはデフォルト値で進めれば・・・はい、DB接続設定が含まれたpersistence.xmlと、「Customer」テーブルに対応付いた「Customer」クラスが作成されます。