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

Java用O/Rマッピングソフトについて私が知っている二、三の事柄

Embed Size (px)

DESCRIPTION

CLUB DB2 2014/11/28(金)のライトニングトーク用資料

Citation preview

Page 1: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

@clubdb2

http://ibm.biz/clubdb2

Java用O/Rマッピングソフトについて私が知っている二、三の事柄

2014/11/28 第192回 CLUB DB2

ライトニングトーク

下佐粉昭

Page 2: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#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

注意)調査は手動で行っており、漏れがあるかもしれません。また推測するしかないデータもあるため、正確性は今ひとつです。

Page 3: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#clubdb2

http://ibm.biz/clubdb2

JPAをサポートしているORMの数は?

3

30

7no yes

JPAサポートは?

• JPAをサポートするのは7つ– そもそもJPAに満足しないから作るという側面がありますね

Page 4: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#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

ライセンス種別

Page 5: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#clubdb2

http://ibm.biz/clubdb2

開発がアクティブ・非アクティブの比率

• 1年間以上リリース等のファイル更新がなく、MLのディスカッションの形跡も無いもの(主観です)

– 19:18でほぼ半々でした

5

0

2

4

6

8

10

12

14

16

18

20

アクティブ 非アクティブ

アクティブ・非アクティブ

19 18

Page 6: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#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年から原型はあったらしい

Page 7: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#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

Page 8: Java用O/Rマッピングソフトについて私が知っている二、三の事柄

#clubdb2

http://ibm.biz/clubdb2

おしまい

8

Thank you !