Slide 1

Slide 1 text

@clubdb2 http://ibm.biz/clubdb2 Java用O/Rマッピングソフトについて 私が知っている二、三の事柄 2014/11/28 第192回 CLUB DB2 ライトニングトーク 下佐粉 昭

Slide 2

Slide 2 text

#clubdb2 http://ibm.biz/clubdb2 2 オープンソースのJava O/Rマッピングソフトって すごく多いですよね? • 毎年数えているんですが… – 「オープンソースJava O/Rマッピングソフト一覧(2014年1月版)」 – http://db2.jugem.cc/?eid=2598 • 37種類!(Webで確認可能な範囲) • 今回はそれらを調査して、グラフにしてみました ActiveObjects amber Ammentos Apache Cayenne Apache ObJectRelationalBridge Apache OpenJPA Apache Torque Athena for Java beankeeper Butterfly Persistence Caster DataNucleus DBFlute Doma Ebean ORM Persistence Layer EclipseLink Hermes ORM Hibernate ORM iciql Java Ultra-Lite Persistence (JULP) JaQu Jaxor JDBCPersistence JoSQL KeyAccess Mr Persister MyBatis orbroker Oracle TopLink Foundation pBeans 2 Persistence Layer Persistent Applications Toolkit Prevayler PriDE Speedo TriActive JDO Ujorm XORM 注意)調査は手動で行っており、漏れがあるかもし れません。また推測するしかないデータもあるため、 正確性は今ひとつです。

Slide 3

Slide 3 text

#clubdb2 http://ibm.biz/clubdb2 JPAをサポートしているORMの数は? 3 30 7 no yes JPAサポートは? • JPAをサポートするのは7つ – そもそもJPAに満足しないから作るという側面がありますね

Slide 4

Slide 4 text

#clubdb2 http://ibm.biz/clubdb2 ライセンス分類 • Apache License(旧ASL)強し – それだけApache FoundationがJavaに与えた影響・貢献が大きいとい うことだと思います 4 0 5 10 15 20 25 Apache BSD GPL LGPL MIT Mozilla Oracle ライセンス種別

Slide 5

Slide 5 text

#clubdb2 http://ibm.biz/clubdb2 開発がアクティブ・非アクティブの比率 • 1年間以上リリース等のファイル更新がなく、MLのディスカッ ションの形跡も無いもの(主観です) – 19:18でほぼ半々でした 5 0 2 4 6 8 10 12 14 16 18 20 アクティブ 非アクティブ アクティブ・非アクティブ 19 18

Slide 6

Slide 6 text

#clubdb2 http://ibm.biz/clubdb2 最も長生きなのは? • 現在開発がアクティブなORMの中で、生まれが早い順 • 1位はTopLink。1990年代にSmallTalk用として作成。1996~ 1998年ごろにJava版リリース。OSS化は2006年 • 2番手は詳細なデータが取れないため微妙…Hibernateかな? TorqueもMyBatis(iBatis)もほぼ同じぐらいです 6 ランキング ORM 生まれ年 #1 TopLink 1996~1998ぐらい #2 Hibernate 2001年(V2は2003年) #3 Torque 2002年ごろ?(Turbineからスピンオフ) #4 MyBatis 2002年ごろ。ただし2001年から原型はあったらしい

Slide 7

Slide 7 text

#clubdb2 http://ibm.biz/clubdb2 そして…DB2のサポートを明示しているのは? • アクティブなプロジェクト(19個)のうち… – ドキュメントにDB2と一言でも記載があるもの – 実際は明示していなくても動くものが多いし、RDBの指定をしていな い”JDBCラッパー”的なライトフレームワークも多いです 7 11 8 あり なし DB2サポート明記あり・なし Apache Cayenne Apache OpenJPA Caster DataNucleus DBFlute Doma Ebean ORM EclipseLink Hibernate ORM MyBatis Oracle TopLink

Slide 8

Slide 8 text

#clubdb2 http://ibm.biz/clubdb2 おしまい 8 Thank you !