SlideShare une entreprise Scribd logo
1  sur  107
Télécharger pour lire hors ligne
A S A K U S A F R A M E W O R K
は じ め の 一 歩 ・ 改
前 提
• Jinrikishaダウンロードページを参考に、Jinrikisha、
Shahu、DmdlEditorX、ToadEditorをインストールして
ください

http://asakusafw.s3.amazonaws.com/documents/
jinrikisha/ja/html/index.html
• Mac OS X 10.9.2、Java 1.6.0_65
• Asakusa Framework 0.6.1
ま ず は プ ロ ジェ ク ト 作 成 で す。
http://www.asakusafw.com/download/
gradle-plugin/template-catalog-
develop.txt
上 記 U R L 入 力 後 「 選 択 」 ボ タ ン を 押 下
空のプロジェクトが作成されました。これまで通り、maven
でプロジェクトを生成すると必ずexampleのソースが入りま
すが、Shafuを使ってGradleでプロジェクト生成すれば、空
のプロジェクトが作れるようになります。
次にデータモデルを定義します。

このヒシダマ印のアイコンをクリックしてください。
最初に商品マスタのモデルを定義します
プロパティを追加していくので、addボタンを押下し
てください
まずは商品ID
続いて同じように商品名
フィールド登録完了です
previewボタンを押下すると、生成されるDMDL定義
を事前に確認することができます
finishボタンでDMDL定義が生成されます
続いて売上明細のモデル定義を作ります
このように3つのプロパティを登録します
DMDLファイルに追記されました
JOIN結果用のモデル定義を作ります。
copyボタン押下でJOIN元のプロパティをそのまま取
り込むことができます
nextでこのダイアログに進むと、結合キーを選択しま
す。まずはitem_masterからitem_idを選択してくだ
さい。
item_idが選択されました
item_idを選択して、editボタンを押下してください
売上明細側のitem_idを選択してください
結合キーの設定が完了です
DMDLファイルに結合モデル定義が追加されました
モデル定義の最後に、出力用の売上明細モデルを作り
ます
結合用モデルのプロパティをそのままcopyします
そこに、flgプロパティを追加します
DMDLファイルに出力用モデルの定義が追加されまし
た
続いて、各モデル定義に、属性を追加していきます。
このアイコンをクリックしてください。
全てのデータモデルを選択してください

(実際にはjoined_salesは選択不要ですが)
デフォルトの選択のまま進みます
付与するアノテーションを選択します
このボタンを押下すると、各属性のデ
フォルト値を設定できます。このボタン
を押下し、出力される属性をそのまま利
用します。
各モデルに属性情報が追加されまし
た
DMDL定義から、実際のモデル用Java
ソースを生成します
ソース生成されました。残念ながらパッ
ケージは自分で定義できないようです。
各Modelのimporter/exporterを作
成します
まずはitem_masterのImporterを作
成します。
まずはitem_masterのImporterが作
成されました
続いて売上明細用のImporterを作成
します
最後に出力明細用のExporterを作成
します
Importer/Exporterが生成されまし
た
続いてJobFlowを作って行きます
インポーターを選択して…
このあたりをクリックしてください
このアイコンをダブルクリックしてください
既存クラスから選択できます
既存データモデルから選択で
きます
同様に売上明細用のImporterを
JobFlowに登録します
ジョブフローのアイコンをダブルク
リックするとこのダイアログが表
示されます
inを選択して、editを押下して、
item_masterからの入力口を定義
してください
addを押して、sales_details用の
入力口を定義してください
outを選択してeditを押下して、出
力明細用の出力口を定義してくだ
さい
二つの入力口と、ひとつの出力口
が定義されました
GUIに戻るとこのようになっていま
す
コネクションを描画するために、
ここをクリックしてください
ふたつのインプットについてコネ
クションを定義します
続いてエクスポーターを登録する
ので、ここをクリックしてください
ジョブフローアイコンの右側に配
置してこのアイコンをダブルクリッ
クしてください
表示されたダイアログにクラスとモ
デルを登録します
コネクションを定義してください
マスター結合演算子をジョブフロー
アイコン内に配置してください
ふたつのインポーターからの接続を定義してく
ださい。この時に、masterとtransactionを
意識して接続してください。
停止演算子を配置して、missedと接
続してください
MasterJoinアイコンをダブルクリックして
オペレータクラスを定義してください
extend演算子を配置してください
joinedの結果から拡張演算子の入り
口に接続してください
update演算子を配置してください
update演算子をダブルクリックしてこのダイアロ
グでオペレータクラスを定義してください
update演算子の前後を接続してください
joinedの出口をダブルクリックして、出力の型を
定義してください
MasterJoinのアイコンを右クリックし
て、このオペレータのソースを生成してく
ださい
Updateのアイコンを右クリックして、
このオペレータのソースを生成してく
ださい
オペレータクラスが生成されました
Update処理内容を実装してください
JobFlowクラスをソース生成します
JobFlowクラスがソース生成されまし
た
続いてBatchプログラムを作成します
右側の「ジョブフロー」をこちらにドラッグ
アンドドロップしてアイコンを配置してくだ
さい
ジョブフローのアイコンをダブルクリックし
て、これまで作ってきたジョブフローを設定
してください
Batchクラスのソースを生成します
Batchクラスのソースが生成されました
テストの準備を始めます
テスト用のテンプレートファイルが生成され
ました
必要なファイルをこちらにコピーします
item_master用のテストデータ
sales_details用のテストデータ
output_sales用のテストデータ
output用のテストデータをどのよ
うに判定するかの定義
テストクラスを実装してください
Junitとしてテストを実行します
テストが通りました
ビルドします
ビルドされました
• cp asakusa-develop/workspace/DemoSample/build/
DemoSample-batchapps.jar $ASAKUSA_HOME/
batchapps/

生成されたビルドファイルをコピー
• cd $ASAKUSA_HOME/batchapps/
• ll ~/target/testing/directio/sample/in/

入力ファイルを確認
• $ASAKUSA_HOME/yaess/bin/yaess-batch.sh DemoBatch

バッチを実行

Contenu connexe

En vedette

Red5 デモ オープンソースカンファレンスIn広島
Red5 デモ オープンソースカンファレンスIn広島Red5 デモ オープンソースカンファレンスIn広島
Red5 デモ オープンソースカンファレンスIn広島
Susumu Arai
 
Asakusa fw勉強会2014冬
Asakusa fw勉強会2014冬Asakusa fw勉強会2014冬
Asakusa fw勉強会2014冬
鉄平 土佐
 
LIMIT 付きで UPDATE を行うと何故怒られるか
LIMIT 付きで UPDATE を行うと何故怒られるかLIMIT 付きで UPDATE を行うと何故怒られるか
LIMIT 付きで UPDATE を行うと何故怒られるか
Yuya Takeyama
 
Stay foolish, stay hanger
Stay foolish, stay hangerStay foolish, stay hanger
Stay foolish, stay hanger
Shogo Hasegawa
 
201402 ITのおくすり#11
201402 ITのおくすり#11201402 ITのおくすり#11
201402 ITのおくすり#11
良威 日野
 
Hbase meetup introduction
Hbase meetup introductionHbase meetup introduction
Hbase meetup introduction
Tatsuo Kawasaki
 
Red5勉強会 20100424
Red5勉強会 20100424Red5勉強会 20100424
Red5勉強会 20100424
Susumu Arai
 
Annex 3 ´´I feel because...´´
Annex 3   ´´I feel because...´´Annex 3   ´´I feel because...´´
Annex 3 ´´I feel because...´´
Margarita
 
ヘビメタの歴史と音楽的特徴
ヘビメタの歴史と音楽的特徴ヘビメタの歴史と音楽的特徴
ヘビメタの歴史と音楽的特徴
Yuki Kudo
 
プログラマとしてのキャリア形成
プログラマとしてのキャリア形成プログラマとしてのキャリア形成
プログラマとしてのキャリア形成
PoohKid
 

En vedette (20)

Red5 デモ オープンソースカンファレンスIn広島
Red5 デモ オープンソースカンファレンスIn広島Red5 デモ オープンソースカンファレンスIn広島
Red5 デモ オープンソースカンファレンスIn広島
 
サロンヘアカラー用ランプ
サロンヘアカラー用ランプサロンヘアカラー用ランプ
サロンヘアカラー用ランプ
 
Moon
MoonMoon
Moon
 
Hachioji pm 21
Hachioji pm 21Hachioji pm 21
Hachioji pm 21
 
山口県下松市Facebookセミナーin下松商工会議所
山口県下松市Facebookセミナーin下松商工会議所山口県下松市Facebookセミナーin下松商工会議所
山口県下松市Facebookセミナーin下松商工会議所
 
Asakusa fw勉強会2014冬
Asakusa fw勉強会2014冬Asakusa fw勉強会2014冬
Asakusa fw勉強会2014冬
 
LIMIT 付きで UPDATE を行うと何故怒られるか
LIMIT 付きで UPDATE を行うと何故怒られるかLIMIT 付きで UPDATE を行うと何故怒られるか
LIMIT 付きで UPDATE を行うと何故怒られるか
 
Stay foolish, stay hanger
Stay foolish, stay hangerStay foolish, stay hanger
Stay foolish, stay hanger
 
Cloud show 141017fin2
Cloud show 141017fin2Cloud show 141017fin2
Cloud show 141017fin2
 
福島県須賀川市Facebookセミナーin須賀川商工会議所
福島県須賀川市Facebookセミナーin須賀川商工会議所福島県須賀川市Facebookセミナーin須賀川商工会議所
福島県須賀川市Facebookセミナーin須賀川商工会議所
 
201402 ITのおくすり#11
201402 ITのおくすり#11201402 ITのおくすり#11
201402 ITのおくすり#11
 
Hbase meetup introduction
Hbase meetup introductionHbase meetup introduction
Hbase meetup introduction
 
【Interop Tokyo 2015】 真のビジネスアジリティを実現するSDNソリューションとは? Contrail SDN controller 最新...
【Interop Tokyo 2015】 真のビジネスアジリティを実現するSDNソリューションとは? Contrail SDN controller 最新...【Interop Tokyo 2015】 真のビジネスアジリティを実現するSDNソリューションとは? Contrail SDN controller 最新...
【Interop Tokyo 2015】 真のビジネスアジリティを実現するSDNソリューションとは? Contrail SDN controller 最新...
 
Red5勉強会 20100424
Red5勉強会 20100424Red5勉強会 20100424
Red5勉強会 20100424
 
Annex 3 ´´I feel because...´´
Annex 3   ´´I feel because...´´Annex 3   ´´I feel because...´´
Annex 3 ´´I feel because...´´
 
ヘビメタの歴史と音楽的特徴
ヘビメタの歴史と音楽的特徴ヘビメタの歴史と音楽的特徴
ヘビメタの歴史と音楽的特徴
 
研究発表会講演資料20121029
研究発表会講演資料20121029研究発表会講演資料20121029
研究発表会講演資料20121029
 
デジタル教科書概要・公開版
デジタル教科書概要・公開版デジタル教科書概要・公開版
デジタル教科書概要・公開版
 
プログラマとしてのキャリア形成
プログラマとしてのキャリア形成プログラマとしてのキャリア形成
プログラマとしてのキャリア形成
 
2013メディアサイエンス研究所発表会資料
2013メディアサイエンス研究所発表会資料2013メディアサイエンス研究所発表会資料
2013メディアサイエンス研究所発表会資料
 

Similaire à Asakusa fwはじめの一歩・改

ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
Hiroh Satoh
 
aws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたaws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみた
kokuboyuichi
 

Similaire à Asakusa fwはじめの一歩・改 (20)

サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
 
Asakusa fwはじめの一歩 0.7.0
Asakusa fwはじめの一歩 0.7.0Asakusa fwはじめの一歩 0.7.0
Asakusa fwはじめの一歩 0.7.0
 
oF勉強会資料(図形)
oF勉強会資料(図形)oF勉強会資料(図形)
oF勉強会資料(図形)
 
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevioいるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
 
JAMstackは眠らない
JAMstackは眠らないJAMstackは眠らない
JAMstackは眠らない
 
20201107 jjug ccc Spring Boot ユーザーのための Quarkus 入門
20201107 jjug ccc Spring Boot ユーザーのための Quarkus 入門20201107 jjug ccc Spring Boot ユーザーのための Quarkus 入門
20201107 jjug ccc Spring Boot ユーザーのための Quarkus 入門
 
Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門
 
Driverについて
DriverについてDriverについて
Driverについて
 
cloudstack devcloud
cloudstack devcloudcloudstack devcloud
cloudstack devcloud
 
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
 
Hudson (JJUG CCCにて)
Hudson (JJUG CCCにて)Hudson (JJUG CCCにて)
Hudson (JJUG CCCにて)
 
JAWSUG初心者向けトラック 【Deploy&Ops】
JAWSUG初心者向けトラック 【Deploy&Ops】JAWSUG初心者向けトラック 【Deploy&Ops】
JAWSUG初心者向けトラック 【Deploy&Ops】
 
Ppl
PplPpl
Ppl
 
Scalaコーディングの準備
Scalaコーディングの準備Scalaコーディングの準備
Scalaコーディングの準備
 
OpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かすOpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かす
 
Android01_開発環境導入
Android01_開発環境導入Android01_開発環境導入
Android01_開発環境導入
 
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorksAWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
 
aws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたaws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみた
 
WordBench Saitama vol.6
WordBench Saitama vol.6WordBench Saitama vol.6
WordBench Saitama vol.6
 
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
 

Plus de 鉄平 土佐

Asakusa Framework 勉強会 2014 夏
Asakusa Framework 勉強会 2014 夏Asakusa Framework 勉強会 2014 夏
Asakusa Framework 勉強会 2014 夏
鉄平 土佐
 
Asakusa Framework はじめの一歩 ( ver 0.6.2 )
Asakusa Framework はじめの一歩 ( ver 0.6.2 )Asakusa Framework はじめの一歩 ( ver 0.6.2 )
Asakusa Framework はじめの一歩 ( ver 0.6.2 )
鉄平 土佐
 
Scala稟議の通し方(公開版)
Scala稟議の通し方(公開版)Scala稟議の通し方(公開版)
Scala稟議の通し方(公開版)
鉄平 土佐
 

Plus de 鉄平 土佐 (19)

GraphX によるグラフ分析処理の実例と入門
GraphX によるグラフ分析処理の実例と入門GraphX によるグラフ分析処理の実例と入門
GraphX によるグラフ分析処理の実例と入門
 
Reactテストに役立つ実装の工夫
Reactテストに役立つ実装の工夫Reactテストに役立つ実装の工夫
Reactテストに役立つ実装の工夫
 
GraphX Advent Calendar Day17
GraphX Advent Calendar Day17GraphX Advent Calendar Day17
GraphX Advent Calendar Day17
 
GraphX Advent Calendar Day15
GraphX Advent Calendar Day15GraphX Advent Calendar Day15
GraphX Advent Calendar Day15
 
GraphX Advent Calendar Day 14
GraphX Advent Calendar Day 14GraphX Advent Calendar Day 14
GraphX Advent Calendar Day 14
 
GraphX Advent Calendar Day 13
GraphX Advent Calendar Day 13GraphX Advent Calendar Day 13
GraphX Advent Calendar Day 13
 
GraphX Advent Calendar Day12 : Pregel概要
GraphX Advent Calendar Day12 : Pregel概要GraphX Advent Calendar Day12 : Pregel概要
GraphX Advent Calendar Day12 : Pregel概要
 
Spark GraphXについて @Spark Meetup 2014/9/8
Spark GraphXについて @Spark Meetup 2014/9/8Spark GraphXについて @Spark Meetup 2014/9/8
Spark GraphXについて @Spark Meetup 2014/9/8
 
「Asakusa0.7の新機能で、テストデータをどうドキュメントするのか的な実用的なアレ」 by @okachimachiorz1
「Asakusa0.7の新機能で、テストデータをどうドキュメントするのか的な実用的なアレ」 by @okachimachiorz1「Asakusa0.7の新機能で、テストデータをどうドキュメントするのか的な実用的なアレ」 by @okachimachiorz1
「Asakusa0.7の新機能で、テストデータをどうドキュメントするのか的な実用的なアレ」 by @okachimachiorz1
 
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
 
GraphX is the blue ocean for scala engineers @ Scala Matsuri 2014
GraphX is the blue ocean for scala engineers @ Scala Matsuri 2014GraphX is the blue ocean for scala engineers @ Scala Matsuri 2014
GraphX is the blue ocean for scala engineers @ Scala Matsuri 2014
 
Asakusa fw演算子チートシートについて
Asakusa fw演算子チートシートについてAsakusa fw演算子チートシートについて
Asakusa fw演算子チートシートについて
 
Asakusa fw勉強会2014真夏
Asakusa fw勉強会2014真夏Asakusa fw勉強会2014真夏
Asakusa fw勉強会2014真夏
 
Asakusa Framework 勉強会 2014 夏
Asakusa Framework 勉強会 2014 夏Asakusa Framework 勉強会 2014 夏
Asakusa Framework 勉強会 2014 夏
 
Asakusa Framework はじめの一歩 ( ver 0.6.2 )
Asakusa Framework はじめの一歩 ( ver 0.6.2 )Asakusa Framework はじめの一歩 ( ver 0.6.2 )
Asakusa Framework はじめの一歩 ( ver 0.6.2 )
 
Scala稟議の通し方(公開版)
Scala稟議の通し方(公開版)Scala稟議の通し方(公開版)
Scala稟議の通し方(公開版)
 
Scala active record
Scala active recordScala active record
Scala active record
 
はてブちう
はてブちうはてブちう
はてブちう
 
Moviecall
MoviecallMoviecall
Moviecall
 

Dernier

Dernier (10)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

Asakusa fwはじめの一歩・改