Skip to main content

JDBC FAQ Part15

33:What is meant by Transaction? How it is possible to maintain Transactions in JDBC applications?
  • Transaction is nothing but an unit of work performed by the applications.
  • Every transaction should have the following properties.
  • Atomicity
  • Consistency
  • Isolation
  • Durability
  • Where atomicity is nothing but perform all the operations or not to perform all the operations in a transaction. That is every transaction must be in either success state or failure state.
  • As part of the jdbc applications when we establish a connection automatically the connection should have a default nature called as “auto commit”.
  • Auto commit in the sense when we send an sql query to the connection then connection will carry that to the DBE and make the DBE to execute provided sql query and store the results on the database permanently.
  • The connections default auto commit nature violates the transactions atomicity property.
  • To preserve transactions atomicity property we should change the connections auto commit nature to non-auto commit nature, for this we will use the following method.

Public void setAutoCommit(Boolean b)
Where b=true    connection is in auto commit
And b=false      connection not in auto commit.
  • If we use connections non auto commit nature in our jdbc applications then we must use either commit or rollback operations explicitily as part of the transactions.
Public void commit()
Public void rollback()
The following example demonstrates how to maintain the transactions with atomicity property in the jdbc applications.
import java.sql.*;
public class TransactionEx
{
      public static void main(String[] args)throws Exception
      {
                  Connection con = null;
                  try
                  {
                              Class.forName(“sun.jdbc.odbd.JdbcOdbcDriver”);
Con = DriverMadoeer.getConnection(“jdbc:odbc:doe”,”system”,”jhon”);
con.setAutoCommit(“false”);
Statement st = con.createStatement();
st.executeUpdate(“insert into emp1 values(888,’fff’,8000,’hhh’)”);
st.executeUpdate(“update emp1 set esal = esal-500 where esal>= ‘abc’ “);
st.executeUpdate(“delete emp1 where esal<7000”);
con.commit();
                        }
                        catch(Exception e)
                        {
                                    con.rollback();
                                    System.out.println(e);
                        }
            }
      }
34:What is meant by SavePoint?How to use Savepoints in JDBC applications?
  • Save point is a concept introduced by jdbc 3.0 which can be used to block a set of instructions execution in the transactions committing operation.
  • To set a save point we will use the following method.
public SavePoint setSavePoint()
  • To block a set of sql queries execution prior to the save point we will use the following method.
public void rollback(savepoint s)
  • To release a savepoint we will use the following method
public void releaseSavePoint();
  • SavePoint concept could not be supported be type1 driver, it could be supported by type4 driver.
  • Even type 4 driver is supporting up to setSavePoint() and rollback() , not releaseSavepoint();
    
      Eg: 
      import java.sql.*;
public class SavePointEx
{
      public static void main(String[] args)throws Exception
      {
                  Connection con = null;
                  try
                  {
                              Class.forName(“oracle.jdbc.driver.OracleDriver”);
con = DriverMadoeer.getConnection(“jdbc:oracle:thin:@locajhost:1521:xe”,”system”,”jhon”);
con.setAutoCommit(“false”);
Statement st = con.createStatement();
st.executeUpdate(“insert into emp1 values(111,’fff’,8000,’hhh’)”);
savepoint sp= con.Savepoint();
st.executeUpdate(“insert into emp1 values(222,’ggg’,7000,’iii’) “);
con.rollback(sp);
st.executeUpdate(“insert into emp1 values(333,’hhh’,9000,’jjj’)”);
con.commit();
                        }
                        catch(Exception e)
                        {
                                    con.rollback();
                                    System.out.println(e);
                        }
            }
      }

Comments

  1. merit casino【VIP】VIP】lenny gourmet food
    【nba sports betting】,Url:⚡【WG98.VIP】⭐️, mvp 메리트 카지노 고객센터 betting today,free slot machines,totak tumbling rb88 casino,lenny online fun88 soikeotot casino,vegas

    ReplyDelete

Post a Comment

Popular posts from this blog

Applications of Insulating Materials

All electrical systems require some kind of insulation to prevent short circuits and leaking currents. 3 forms of insulators: solid, liquid and gaseous Performance of these insulators depend on the temperature Classification according to their temperature rating. Impregnation: Letting the solid material absorb some liquid With the advent of new materials, the classification has been modified by International Electrotechnical Commission: The transformer insulation: (a) conductor or turn-to-turn insulation, (b) coil-to-coil insulation, (c) low voltage coil-to-earth insulation, (d) high voltage coil-to-low voltage coil insulation, and (e) high voltage coil-to-ground insulation. Transformer oil -- provides the required dielectric strength and insulation -- cools the transformer by circulating itself through the core and the coil structure. -- should be in the liquid state over the complete operating range of temperatures between -40°C and+50°C. -- gets o...

JSTL-JSP Standard Tag Library part 2

Evolution of JSTL-JSP Standard Tag Library As JSP grew in popularity, it became clear that different sites' custom tags fell into familiar, frequently used patterns. For example, many pages needed to loop over data to print tables and lists. Vendors of JSP containers and members of the open-source community tried to address these needs by providing collections of tags --tag libraries--that solved common problems. While many JSP page authors used these libraries, nothing tied them together. To address this fragmentation, the Java Community Process --the same group that now maintains and standardizes JSP itself --decided to offer a standard tag library. JSTL 1.0, to include tags for the following common tasks:          •Looping over data to produce tables, lists, etc.          •Conditional operations          •Importing and processing data from other web pages         ...

PV/GENSET HYBRID

Introduction: PV and genset systems do not have much in common. It is precisely for this reason that they can be mated to form a hybrid system that goes far in overcoming the drawbacks to each technology. Table 10.1 lists the respective advantages and disadvantages. As the sun is a variable energy source, PV system designs are increased in size (and therefore cost) to allow for a degree of system autonomy. Autonomy is required to allow for provision of reliable power during "worst case" situations, which are usually periods of adverse weather, seasonally low solar insulation values or an unpredicted increased demand for power. The addition of autonomy to the system is accomplished by increasing the size of the PV array and its requisite energy storage system (the battery). When a genset is added, additional battery charging and direct AC load supply capabilities are provided. The need to build in system autonomy is therefore greatly reduced. When energy demands cannot b...