DBFlute IntroでDatabaseのスキーマをコメントをつけて管理しようという話
DBFlute IntroͰ ؾܰʹDBίϝϯτมߋ2017/11/26 #DBFluteFes @deco
View Slide
Agenda• ࣗݾհ• DBFlute-introͱ• DBίϝϯτʹ͓͚Δ՝• DBFlute-introͰͲ͏ղܾ͢Δ͔• σϞ• ػೳՃ༧ఆ• Q&A
ࣗݾհ
ࣗݾհ• ໊લ : Ӭߊ࢙ @deco• ৬छ : AndroidɺiPhoneΤϯδχΞ DBFlute-introίϛολʔ
DBFlute-introͱ
DBFlute-introͱ• Javaͷ࣮ߦڥ͑͋͞Εར༻Ͱ͖Δπʔϧ• ΞϓϦͷ֎ଆͰ׆༂͢ΔDBFluteͷػೳΛɺGUI͚ͩͰ࣮ߦͰ͖Δπʔϧ• ຊόʔδϣϯ0.1.3ΛϦϦʔε͠·ͨ͠ɻhttps://github.com/dbflute/dbflute-intro/releases
DBFlute-introͱ• Github https://github.com/dbflute/dbflute-intro• ֓ཁ http://dbflute.seasar.org/ja/manual/function/helper/intro/index.html https://www.slideshare.net/nakamu0718/dbflute-intro-69599954?ref=https://connpass.com/event/43457/presentation/
DBίϝϯτʹ͓͚Δ՝
࣭• DBมߋΛߦ͏ػೳՃΛߦͬͨ͜ͱ͋Γ·͔͢ʁ• DBมߋ࣌ʹίϝϯτ͕ͳͯ͘ࠔͬͨ͜ͱ͋Γ·ͤΜ͔ʁ
എܠ• ͳΜͰ͜Μͳ͜ͱ͕ى͖Δͷ͔ʁ• ߟ͑ͯΈ·ͨ͠ɻ(ओ؍)
αʔϏεϦϦʔεޙ
αʔϏεϦϦʔεޙ• ςʔϒϧ20ະຬ• ։ൃऀ1~2໊• ͦΕͧΕςʔϒϧͷҙຯΛѲ͍ͯ͠Δ
ϦϦʔεޙ1ඇެ։
αʔϏεޙ1• ςʔϒϧ50ະຬ• ։ൃऀ1~10໊• ଞͷ։ൃऀ͕࡞ͬͨςʔϒϧ͕ѲͰ͖ͳ͘ͳͬͯ͘Δ• ։ൃऀ͕ଟ͘ͳ͍ͷͰɺฉ͚୭͔͕͍ͬͯΔ
ϦϦʔεޙ10ޙඇެ։
αʔϏεޙ10• ςʔϒϧ300Ҏ্• ։ൃऀ30໊~• Α͘Θ͔Βͳ͍ɺࣅͨΑ͏ͳςʔϒϧଟ• ࡞ͬͨਓࣾʹ͍ͳ͍͜ͱ͕ଟ͍• ༗ࣝऀࢄ͍ͯͯ͠୭ʹฉ͚͍͍͔Θ͔Βͳ͍
՝• ίϝϯτ͕ͳ͍͔ΒɺαʔϏεಛ༗ͷཕΛ౿Ήएख͕ଓग़ɻ• ίϝϯτΛॻ͜͏ͱͯ͠ɺERMϑΝΠϧΛมߋ͢ΔͨΊ͕͔͔࣌ؒΓΓ͕ͨΒͳ͍ਓ͕ଟ͍ɻʢDBFluteͷ߹ʣ
DBFlute-introͰͲ͏ղܾ͢Δ͔
DBFlute-introͰͲ͏ղܾ͢Δ͔• DBͷใΛݟΔͷERਤ͔schema.html͕΄ͱΜͲɻ -> schema.html্ͷDBίϝϯτΛมߋͰ͖ΔΑ͏ʹ͠Α͏ʂʂ
Ͳ͏࣮ͬͯݱ͢Δͷ͔
DBίϝϯτͷอଘॲཧͷྲྀΕscheme.html DBFlute-intro dfmap
DBίϝϯτͷөॲཧͷྲྀΕscheme.html DBFlute-intro dfmapϑΝΠϧΛ։͍ͨλΠϛϯάͰintroʹϦΫΤετ
DBίϝϯτͷөॲཧͷྲྀΕscheme.html DBFlute-intro dfmapdfmapϑΝΠϧΛಡΈࠐΉ
DBίϝϯτͷөॲཧͷྲྀΕschema.html DBFlute-intro dfmapϚʔδ݁ՌΛJSONʹมJSON݁Ռ͔Βschema.htmlΛDOMૢ࡞
͍ํ• DBFlute-introΛμϯϩʔυ• ىಈ• schema.html͔ΒίϝϯτΛฤू
͍ํ• ֤։ൃऀ͕ࣗͷ࡞ۀϒϥϯνͰίϝϯτฤू• developϒϥϯνʹϚʔδ͞ΕΔɻ• ࠶࡞ۀϒϥϯνΛΔͱଞͷ։ൃऀͷίϝϯτΛ֬ೝ͢Δ͜ͱ͕Ͱ͖Δɻ
σϞ
ػೳͷઆ໌• ࠷৽ͷίϝϯτΛͲͷΑ͏ʹఆ͍ͯ͠Δͷ͔• ίϯϑϦΫτͷఆͲͷΑ͏ʹ͍ͯ͠Δͷ͔
ػೳͷઆ໌• ίϝϯτ͝ͱʹϋογϡɺҰͭલͷϋογϡΛ࣋ͨͤΔ
࠷৽ͷίϝϯτͷఆํ๏code: hogeprevious: nullcode: fugaprevious: hogecode: fooprevious: fugacode: barprevious: fuga
ίϯϑϦΫτΛHTML্ʹө
ίϯϑϦΫτͷղফcode: hogeprevious: nullcode: fugaprevious: hogecode: fooprevious: fugacode: barprevious: fugacode: endprevious: foo, bar
ػೳՃ༧ఆ
ػೳՃ༧ఆ• ݱঢ়ColumnίϝϯτͷΈରԠ͍ͯ͠ΔͷͰTableίϝϯτରԠͰ͖ΔΑ͏ʹ͢Δ• IntroΛ͍ͬͯͳ͍ਓͰίϝϯτΛදࣔͰ͖ΔΑ͏ʹ͢Δ• ERFluteͱͷ࿈ܞͯ͠ERMϑΝΠϧʹࣗಈөͰ͖ΔΑ͏ʹ͢Δ
Q&A
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠