IRIS でのクラス定義の作成、ObjectScript でインスタンスの生成と永続化(保存)の方法について解説します。 もくじ 最初~1:55 前回のビデオの学習 1:55~2:45 今回の説明内容解説 2:45~5:15 クラスの種類について 5:15~13:20 作成するクラスの説明、定義説明 13:20~18:44 スタジオでの作成実演 18:44~22:35 VS Codeでの作成実演 22:35~27:40 ObjectScriptでインスタンス生成 27:40~29:38 インスタンス生成~永続化の実演 29:38~34:54 データの確認 34:54~40:13 マルチモデル(永続クラス=テーブル)の確認 40:13~51:25 JSONとXMLアダプタの操作実演 51:25~57:36 クラスメソッドの定義と実行 57:36~最後まで まとめ ※ YouTubeでご覧いただくと「もくじ」の秒数クリックでビデオをジャンプできます。 その他ビデオ一覧は[索引ページ](https://jp.community.intersystems.com/post/%E3%80%90%E3%81%AF%E3%81%98%E3%82%81%E3%81%A6%E3%81%AE-intersystems-iris%E3%80%91%E3%82%BB%E3%83%AB%E3%83%95%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%E3%83%93%E3%83%87%E3%82%AA%E3%80%80%E7%B4%A2%E5%BC%95)をご参照ください。 クラス定義例
/// Personクラス
Class Test.Person Extends %Persistent
{
/// 名前
Property Name As %Library.String;
/// メール
Property Email As %Library.String;
ClassMethod CreateEmail(account As %String) As %String
{
if $get(account)=""{
return ""
}
return account_"@mail.com"
}
インスタンス生成~保存までの実行例
インスタンス生成(Test.Personに継承された%New()メソッドを使用)
プロパティに値を割り当てる(文字列は二重引用符で括ります)
データベースに保存(Test.Personに継承された%Save()メソッドを使用)
保存が成功したかどうかの確認(成功すると 1を返し、失敗すると内部文字列を返します)
保存失敗時のメッセージ確認(システムオブジェクトのStatusクラスを利用します)
CreateEmail()の実行
戻り値がある場合
戻り値がない場合
グローバル変数を直接操作する例
ID=1の Test.Person の名前(Name)とメール(Email)を出力
ID=1 の Test.Person の名前(Name)を更新
JSONアダプタの利用例
Test.Person クラスのスーパークラスに %JSON.Adapter クラスを追加する例(追加後、コンパイルが必要です)
JSONオブジェクトを作成し、JSON アダプタを利用して Test.Person の新規インスタンス生成する例
既存オブジェクトをオープンし(例ではID=1をオープン)JSON文字列に変換
XMLアダプタの使用例
Test.Person クラスのスーパークラスに %XML.Adapter クラスを追加する例(追加後、コンパイルが必要です)
既存オブジェクトをオープンし(例ではID=1をオープン)XMLに変換
出力された XML を任意のファイル名で保存し、名前やメールアドレスを編集し、今度は IRIS から XML を Read します。
読み込んだ XML と Test.Person を関連付けて、Test.Person のインスタンスを生成する
</body></html>