0

I am started with doing some searches for a transaction manager which could be used in JAVA, I stumbled upon JTA and hibernate as well as JOTM, however - when I search after Java Transaction ... well I mainly see results from JTA - which seems to be the most dominant transaction manager, do you guys now any other Transaction Managers?

Dan D.
  • 73,243
  • 15
  • 104
  • 123
theXs
  • 437
  • 8
  • 25

2 Answers2

2

JTA is a standard API for transaction management in Java. There are many implementations of this API (basically, each Java EE server has its own implementation, and there are other ones, like JOTM, Bitronix, Atomikos for example).

Having a standard API allows developing a transactional application which is portable across transaction managers/application servers. A transaction manager which would not respect this API would shoot itself in the foot, because nobody would use it.

See Atomikos vs JOTM vs Bitronix vs?

Community
  • 1
  • 1
JB Nizet
  • 678,734
  • 91
  • 1,224
  • 1,255
1

When selecting any technology, always go for what has been out in the public for long and is extremely popular. That, and what has a lot of support out there. That is hibernate as far as persistence is concerned. JTA is simply Java Transaction API. There are a number of implementations of it. Popular opensource ones are:

JBossTS

Atomikos TransactionsEssentials

Bitronix JTA

Hibernate plays well with all popular JTA's. I too was hesitant of hibernate at first but it's well worth the effort of setting up and learning. What JTA you wish to use depends on a number of factors. I would concentrate on:

  • What best suits your needs. This means it really depends on the type of project you are doing and your experience in JTA.
  • Are you using a Application Server? does it provide an implementation of JTA?
  • What has the best documentation for you needs.

Hope this helps.

Ali
  • 12,354
  • 9
  • 54
  • 83