その22016年05月18日Yura(22)7この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。前回の続きとなります。複合主キーの場合と、テーブル結合した検索方法ついてです。前回よりも少しだけ面倒ではございますが、難しくはないと思います。前回作ったデータベースに、顧客テーブルと売上テーブルを追加します。sales_detail_no));適当に検索用のデータも入れておきましょう。複合主キーを持つテーブルを扱う顧客テーブルの検索は前回と同じような手順で作れるはずなので割愛します。売上テーブの検索はsales_id、sales_detail_noの複合主キーとなっていますので一手間必要となります。以下の用に@Idアノテーションを複数つけるだけでは、アプリケーション起動時に例外が発生します。JPAのEntityで複合主キーを扱いたい場合、別途キーをまとめたクラスを作成する必要があります。フィールド名はEntityのフィールド名と同じにして、Serializable実装クラスとして作成します。salesDetailNo;}作成したら、以下のように、Entityに@IdClassアノテーションを付けてあげてください。{検索用のRepositoryのジェネリクスの第二引数には、先ほど作成したIdクラスを指定します。{}これだけできれば、前回と同じようにデータの取得が簡単にできます。顧客名、商品名は顧客テーブル、商品テーブルと結合して取得します。結合の方法なのですが、以下のような形で、売上テーブルのEntityに顧客テーブルのEntityと商品テーブルのEntityをフィールドとして持たせてあげればよいです。テーブルのリレーションによっては@OneToOneアノテーションだけではなく、@OneToManyとか@ManyToOneとか使えるようです。@JoinColumnアノテーションで結合するカラム名を指定してあげます。goods;検索画面やJava側の処理は、前回とほぼ同じような感じになりますが、ソースコードは残しておきます。'COMMA')}"で数字を3桁ずつカンマ区切りしてくれる。日付型をフォーマットしてくれる。mav;}}動かしてみるアプリケーションを起動し、http://localhost:8080/salesに接続する。実際に検索条件に合わせて、検索ができることが確認できればOKです。JPAは奥が深そうです。いえ、慣れてしまえば難しくはないような感じもしますので、もう少し触ってみて慣れていきたいと思います。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。濱田孝治253re:Invnetの動画検索でもめちゃくちゃ便利ですが、その他ブログやホワイトペーパーやGitHubも横断検索できるので、是非一度使ってみてください。CAFEの他、NTTデータとセブンイレブンの取り組みや、サインポスト、Zippinなどの各社と流通・小売業との連携を業界マップに作成してみました。PolicyのConditionにaws:CalledViaというキーが追加されました。いったキーなのかご説明します。夏目祐樹409こんにちは、CX事業本部の夏目です。MacのタッチバーのタッチIDが非常に便利なのですが、Terminalでsudoを叩かないと行けないときに使えたらなぁと思ったので、情報を共有します。臼田佳祐295ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。洋介256SnowflakeがAWSの東京リージョン上で稼働するようになりました。データを日本に置けます。濱田孝治253re:Invnetの動画検索でもめちゃくちゃ便利ですが、その他ブログやホワイトペーパーやGitHubも横断検索できるので、是非一度使ってみてください。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。