SlideShare a Scribd company logo
1 of 36
Download to read offline
Smart! Jiemamy
 DB
            2009.06.13




   Seasar Conference 2009 Spring
•             (id:daisuke-m)

 • http://friendfeed.com/dai0304
• Jiemamy Project

          Seasar Conference 2009 Spring
Activity
• Seasar Conference
 • 2009 White - DIJiemamy
 • 2008 Autumn -
• java-ja
•            IT-PRESS

• @IT - DB
          Seasar Conference 2009 Spring
Activity




Seasar Conference 2009 Spring
Agenda
• Jiemamy
• Jiemamy
• Jiemamy
• Jiemamy API
•
         Seasar Conference 2009 Spring
Seasar Conference 2009 Spring
Seasar Conference 2009 Spring
NO!
Seasar Conference 2009 Spring
Seasar Conference 2009 Spring
•
•
 • Jiemamy
 • maven plugin,
•                API


          Seasar Conference 2009 Spring
DB
•Evolutional Database Design
               — Martin Fowler, 2003
  DB                           →

  DB                         →




            Seasar Conference 2009 Spring
Smart
                Model


 Smart
                                          Smart
Version
Control                                   Build
          Seasar Conference 2009 Spring
A

    Smart Build


     Seasar Conference 2009 Spring
• Web             SVN




        DB




             Seasar Conference 2009 Spring
Maven
• Apache
• co     pom.xml

    "mvn package"

•


            Seasar Conference 2009 Spring
B
    Smart
Version Control


    Seasar Conference 2009 Spring
rev1000


•           revision
                           rev1001
    DB
                           rev1002
•
                           rev1003



•                          rev1004



                           rev1005




         Seasar Conference 2009 Spring
C

    Smart Model


      Seasar Conference 2009 Spring
DRY
     Don't Repeat Yourself.
•
•           ...

 •
 •
 •
        Seasar Conference 2009 Spring
DB
• DB                             1


•                           (             )   3



 P                               2



                             (            )




          Seasar Conference 2009 Spring
Seasar Conference 2009 Spring
DB
•                               rev1000

    SQL
                                rev1001



                                rev1002
    ER    (             )
                                rev1003



    …                           rev1004



    DRY                         rev1005




              Seasar Conference 2009 Spring
Seasar Conference 2009 Spring
Jiemamy


     Seasar Conference 2009 Spring
Jiemamy

•       ER

 • AmaterasERD, Clay, DBDesigner4,
   ERWin, SI Object Browser, JUDE...


• Jiemamy

            Seasar Conference 2009 Spring
Demo
 Seasar Conference 2009 Spring
Jiemamy API


  Seasar Conference 2009 Spring
Jiemamy Model API
•             XML




                                      SQL



     Java


      Seasar Conference 2009 Spring
XML → Java model


• Jiemamy
•
• InputStream
          Seasar Conference 2009 Spring
Java model → XML




•      JiemamySerializer

• OutputStream
          Seasar Conference 2009 Spring
Java model → SQL



• SqlExporter     new

•
• exportModel
          Seasar Conference 2009 Spring
DB → Java model



• DatabaseImporter            new

•
• importModel
          Seasar Conference 2009 Spring
Javadoc




  Seasar Conference 2009 Spring
•
 •          (ServletFilter                  )

           DB                Web

•                         CREATE/DROP

     Web


            Seasar Conference 2009 Spring
• Jiemamy
•      Jiemamy

•
•

         Seasar Conference 2009 Spring
Seasar Conference 2009 Spring

More Related Content

Similar to Seasar Conference 2009 Spring - Jiemamy

Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...
Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...
Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...
Kyle Adams
 
DevelopersSummit2011 【17-E-1】 DBも変化せよ - Jiemamy
DevelopersSummit2011 【17-E-1】 DBも変化せよ - JiemamyDevelopersSummit2011 【17-E-1】 DBも変化せよ - Jiemamy
DevelopersSummit2011 【17-E-1】 DBも変化せよ - Jiemamy
都元ダイスケ Miyamoto
 
Railswaycon 2009 - Summary
Railswaycon 2009 - SummaryRailswaycon 2009 - Summary
Railswaycon 2009 - Summary
daniel.mattes
 
クラウドを支えるハードウェア・ソフトウェア基盤技術
クラウドを支えるハードウェア・ソフトウェア基盤技術クラウドを支えるハードウェア・ソフトウェア基盤技術
クラウドを支えるハードウェア・ソフトウェア基盤技術
Ryousei Takano
 
Use Amo To Customize Olap In Project Server
Use Amo To Customize Olap In Project ServerUse Amo To Customize Olap In Project Server
Use Amo To Customize Olap In Project Server
Phuong Nguyen
 

Similar to Seasar Conference 2009 Spring - Jiemamy (20)

SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBASolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
 
MySQL Latest News
MySQL Latest NewsMySQL Latest News
MySQL Latest News
 
Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...
Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...
Alfresco Summit 2013 - Ignite Talk - HTML5 Previews Using Snowbound's Virtual...
 
DevelopersSummit2011 【17-E-1】 DBも変化せよ - Jiemamy
DevelopersSummit2011 【17-E-1】 DBも変化せよ - JiemamyDevelopersSummit2011 【17-E-1】 DBも変化せよ - Jiemamy
DevelopersSummit2011 【17-E-1】 DBも変化せよ - Jiemamy
 
Railswaycon 2009 - Summary
Railswaycon 2009 - SummaryRailswaycon 2009 - Summary
Railswaycon 2009 - Summary
 
Barug 2014-10-16
Barug 2014-10-16Barug 2014-10-16
Barug 2014-10-16
 
The Modern Java Web Developer - Denver JUG 2013
The Modern Java Web Developer - Denver JUG 2013The Modern Java Web Developer - Denver JUG 2013
The Modern Java Web Developer - Denver JUG 2013
 
MariaDB Prez by Joffrey Michaie
MariaDB Prez by Joffrey MichaieMariaDB Prez by Joffrey Michaie
MariaDB Prez by Joffrey Michaie
 
Where The Cloud Things Are
Where The Cloud Things AreWhere The Cloud Things Are
Where The Cloud Things Are
 
SCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud Infrastructure
SCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud InfrastructureSCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud Infrastructure
SCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud Infrastructure
 
20151015 zagreb spark_notebooks
20151015 zagreb spark_notebooks20151015 zagreb spark_notebooks
20151015 zagreb spark_notebooks
 
Cloud Computing & Scaling Web Apps
Cloud Computing & Scaling Web AppsCloud Computing & Scaling Web Apps
Cloud Computing & Scaling Web Apps
 
Evolve 19 | Jayan Kandathil | Running AEM Workloads on Microsoft Azure
Evolve 19 | Jayan Kandathil | Running AEM Workloads on Microsoft AzureEvolve 19 | Jayan Kandathil | Running AEM Workloads on Microsoft Azure
Evolve 19 | Jayan Kandathil | Running AEM Workloads on Microsoft Azure
 
Scaling Up Machine Learning Experimentation at Tubi 5x and Beyond
Scaling Up Machine Learning Experimentation at Tubi 5x and BeyondScaling Up Machine Learning Experimentation at Tubi 5x and Beyond
Scaling Up Machine Learning Experimentation at Tubi 5x and Beyond
 
AWS SAM(Serverless Application Model) 을 이용한 백오피스 마이그레이션 (현창훈, HBSmith) :: AWS...
AWS SAM(Serverless Application Model) 을 이용한 백오피스 마이그레이션 (현창훈, HBSmith) :: AWS...AWS SAM(Serverless Application Model) 을 이용한 백오피스 마이그레이션 (현창훈, HBSmith) :: AWS...
AWS SAM(Serverless Application Model) 을 이용한 백오피스 마이그레이션 (현창훈, HBSmith) :: AWS...
 
ITAM AUS 2017 ITAM in a cloud era
ITAM AUS 2017 ITAM in a cloud era ITAM AUS 2017 ITAM in a cloud era
ITAM AUS 2017 ITAM in a cloud era
 
クラウドを支えるハードウェア・ソフトウェア基盤技術
クラウドを支えるハードウェア・ソフトウェア基盤技術クラウドを支えるハードウェア・ソフトウェア基盤技術
クラウドを支えるハードウェア・ソフトウェア基盤技術
 
Running Business Critical Workloads on AWS – Nam Je Cho
Running Business Critical Workloads on AWS – Nam Je ChoRunning Business Critical Workloads on AWS – Nam Je Cho
Running Business Critical Workloads on AWS – Nam Je Cho
 
Use Amo To Customize Olap In Project Server
Use Amo To Customize Olap In Project ServerUse Amo To Customize Olap In Project Server
Use Amo To Customize Olap In Project Server
 
Introduction to Padrino
Introduction to PadrinoIntroduction to Padrino
Introduction to Padrino
 

More from 都元ダイスケ Miyamoto

AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
都元ダイスケ Miyamoto
 
20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編
20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編
20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編
都元ダイスケ Miyamoto
 
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
都元ダイスケ Miyamoto
 
20121206 VOYAGE LT - 名前重要って言うけどさ
20121206 VOYAGE LT - 名前重要って言うけどさ20121206 VOYAGE LT - 名前重要って言うけどさ
20121206 VOYAGE LT - 名前重要って言うけどさ
都元ダイスケ Miyamoto
 
20120830 DBリファクタリング読書会第三回
20120830 DBリファクタリング読書会第三回20120830 DBリファクタリング読書会第三回
20120830 DBリファクタリング読書会第三回
都元ダイスケ Miyamoto
 
java-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategy
java-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategyjava-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategy
java-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategy
都元ダイスケ Miyamoto
 
DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻
都元ダイスケ Miyamoto
 

More from 都元ダイスケ Miyamoto (20)

認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
 
アプリケーション動作ログ、
ERRORで出すか? WARNで出すか? #cmdevio2019
アプリケーション動作ログ、
ERRORで出すか? WARNで出すか? #cmdevio2019アプリケーション動作ログ、
ERRORで出すか? WARNで出すか? #cmdevio2019
アプリケーション動作ログ、
ERRORで出すか? WARNで出すか? #cmdevio2019
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
クラスメソッドにおける Web API エンジニアリングの基本的な考え方と標準定義 - Developers.IO 2018 (2018-10-05)
クラスメソッドにおける Web API エンジニアリングの基本的な考え方と標準定義 - Developers.IO 2018 (2018-10-05)クラスメソッドにおける Web API エンジニアリングの基本的な考え方と標準定義 - Developers.IO 2018 (2018-10-05)
クラスメソッドにおける Web API エンジニアリングの基本的な考え方と標準定義 - Developers.IO 2018 (2018-10-05)
 
AWSクラウドデータストレージ総論
AWSクラウドデータストレージ総論AWSクラウドデータストレージ総論
AWSクラウドデータストレージ総論
 
20170312 F.K様向け ライフパートナーM.M様のご提案
20170312 F.K様向け ライフパートナーM.M様のご提案20170312 F.K様向け ライフパートナーM.M様のご提案
20170312 F.K様向け ライフパートナーM.M様のご提案
 
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
 
マイクロWebアプリケーション - Developers.IO 2016
マイクロWebアプリケーション - Developers.IO 2016マイクロWebアプリケーション - Developers.IO 2016
マイクロWebアプリケーション - Developers.IO 2016
 
Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座
 
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
20150908 ”時間の流れ” という無限リストを扱うAWS Lambda
 
体で覚えるSQS! DEVIO-MTUP11-TOKYO-007
体で覚えるSQS! DEVIO-MTUP11-TOKYO-007体で覚えるSQS! DEVIO-MTUP11-TOKYO-007
体で覚えるSQS! DEVIO-MTUP11-TOKYO-007
 
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
 
20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編
20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編
20140315 JAWS DAYS 2014 ACEに聞け! CloudFormation編
 
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
 
20130516 cm課外授業8-aws
20130516 cm課外授業8-aws20130516 cm課外授業8-aws
20130516 cm課外授業8-aws
 
20121215 DevLOVE2012 Mahout on AWS
20121215 DevLOVE2012 Mahout on AWS20121215 DevLOVE2012 Mahout on AWS
20121215 DevLOVE2012 Mahout on AWS
 
20121206 VOYAGE LT - 名前重要って言うけどさ
20121206 VOYAGE LT - 名前重要って言うけどさ20121206 VOYAGE LT - 名前重要って言うけどさ
20121206 VOYAGE LT - 名前重要って言うけどさ
 
20120830 DBリファクタリング読書会第三回
20120830 DBリファクタリング読書会第三回20120830 DBリファクタリング読書会第三回
20120830 DBリファクタリング読書会第三回
 
java-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategy
java-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategyjava-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategy
java-ja 第1回 チキチキ『( ゜ェ゜)・;'.、ゴフッ』 - Strategy
 
DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻
 

Recently uploaded

Recently uploaded (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Seasar Conference 2009 Spring - Jiemamy