Skip to main content

Transaction Management in JDBC | JDBC Tutorial

 

Transaction Management in JDBC


For explanation watch video ::




Code::


import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.Scanner;


public class OracleConn {

public static void main(String[] args) {

String url = "jdbc:oracle:thin:@localhost:1521:orcl";

String uname = "system";

String pwd = "tiger";

// take source account number and dest acc number from user

Scanner scn = new Scanner(System.in);

System.out.println("Enter source acc no: ");

long srcAcNo = scn.nextLong();

System.out.println("Enter dest acc no: ");

long destAcNo = scn.nextLong();


// take the amt to transfer

System.out.println("Enter amt to transfer: ");

long amt = scn.nextLong();

try (Connection con = DriverManager.getConnection(url, uname, pwd); 

Statement st = con.createStatement();) {

// Begin Tx

if (con != null)

con.setAutoCommit(false);


if (st != null) {

// add queries to the batch (executing queries in the batch)

// for withdraw opeation

st.addBatch("update acc set balance=balance-" + amt + " where accno=" + srcAcNo);//1

// for deposite opeation

st.addBatch("update acc set balance=balance+" + amt + "where accno=" + destAcNo);//0

// execut the batch

int result[] = st.executeBatch();

//result = {1,1}


// process the results from TxMgmt

boolean flag = true;

for (int i = 0; i < result.length; ++i) {

if (result[i] == 0) {

flag = false;

break;

}

}

if (flag == true) {

con.commit(); // commit the Transaction

System.out.println("Tx Commited Money Transfered");

} else {

con.rollback(); // rollback the Transaction

System.out.println("Tx rolledback Money  not Transfered");

}

}

} catch (SQLException se) {

System.out.println(se.getMessage());

se.printStackTrace();

} catch (Exception e) {

System.out.println(e.getMessage());

e.printStackTrace();

}

}

}



Comments

Popular posts from this blog

Servlet Project Book Shop Application in eclipse

 Servlet Project Book Shop Application in eclipse  For explanation watch video::: Note :: In this Project you must configure web server (for example tomcat) with eclipse ide Download Bootstrap  from ::         https://getbootstrap.com/docs/4.3/getting-started/download/ Download mysql jar file from :: https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.22 adding MySQL Connector/J jar file in eclipse ide for jdbc video :: video link : https://youtu.be/4Fyd-k3eG_I Directory Structure:: web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">   <welcome-file-list>     <welcome-file>home.html</welcome-file>   </welcome-file-list>   <display-...

JDBC basic example For Select Query

JDBC basic example For Select Query  For explanation watch video:  For Creating Table:: SQL> create table emp60(srno int,fname varchar2(10)); Table created. SQL> desc emp60;  Name                                      Null?    Type  ----------------------------------------- -------- ----------------------------  SRNO                                               NUMBER(38)  FNAME                                              VARCHAR2(10) SQL> insert into emp60 values(1,'allu'); 1 row created. SQL> insert into emp60 values(2,'vijay'); 1 row created. SQL> insert into emp60 values(3,'rajni'); 1 row created. SQL...

JDBC Program to access table data from mysql database

 import java.sql.*; class MysqlCon  { public static void main(String[] args)  { try{ Connection con = DriverManager.getConnection("jdbc:mysql:///new","root","root"); Statement st = con.createStatement(); String query = "select * from login"; ResultSet rs = st.executeQuery(query); while(rs.next()){ System.out.println(rs.getString(1)+" "+rs.getString(2)); } con.close(); }catch(SQLException e){ System.out.println("Error"); }catch(Exception e){ } } }