Difference between local and global transaction ?



Difference between local and global transaction ?..

Answer / prakash sah

Here is the defination and example in case of spring:

Local Vs Global Transaction:

Local transactions are transactions associated with a
particalar data source (means they are resource-specific).
the most common example would be a transaction associated
with a JDBC connection. While Global Transactions provide
the ability to work with multiple transactional resources
(typically relational databases and message queues).

Example of Local transaction :

<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName"
value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>

<bean id="txManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>

DataSourceTransactionManager : takes the datasource as one
of its properties.

even HibarnateTransactionManager takes sessionfactory which
in turn uses datasource as a property or it also takes
datasource as one of the property.


Example of Global transaction :

If we use JTA in a J2EE container, as in the
'dataAccessContext-jta.xml' file from the same sample
application, we use a container DataSource, obtained via
JNDI, in conjunction with Spring's
JtaTransactionManager. The JtaTransactionManager doesn't
need to know about the DataSource, or any
other specific resources, as it will use the container's
global transaction management infrastructure.


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jee="http://www.springframework.org/schema/jee"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/jee
http://www.springframework.org/schema/jee/spring-jee-2.5.xsd">
<jee:jndi-lookup id="dataSource" jndi-name="jdbc/jpetstore"/>
<bean id="txManager"
class="org.springframework.transaction.jta.JtaTransactionManager"
/>
<!-- other <bean/> definitions here -->
</beans>

Is This Answer Correct ?    10 Yes 3 No

Post New Answer

More Core Java Interview Questions

String and stringbuffer both represent string objects. Can we compare string and stringbuffer in java?

0 Answers  


When try and catch block is used ?

6 Answers  


How to invoke external process in java.

0 Answers  


What is difference between next () and nextline () in java?

0 Answers  


How can you avoid serialization in child class if the base class is implementing the serializable interface?

0 Answers  






Are the equals() and hashCode() protected methods of object class?

1 Answers   Avaya,


Can u overload main()method.Give with example.

6 Answers   IBM, Schimatic Technologies,


Can we override static methods?

18 Answers   Bally Technologies,


What is a Wrapper class?

14 Answers  


What is the difference between a choice and a list?

0 Answers  


Why destructor is not used in java?

0 Answers  


What differences exist between iterator and listiterator?

0 Answers  


Categories