Saturday, 9 April 2016

Program Insert Rows into a database table using Multithreading in Java

import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Calendar;

public class Publisher implements Runnable {
               
                static int i=1;
                static Connection c;
               
                static Thread t1,t2;
                public static void main(String[] args) {
                                // TODO Auto-generated method stub
                               
                                try {
                                                 c=DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres", "postgres", "oracle");
                                                 
                                                 Publisher p1=new Publisher();
                                                  t1=new Thread(p1);
                                                  t1.setName("A");
                                                  t2=new Thread(p1);
                                                  t2.setName("B");
                                                 t1.start();
                                                 t2.start();
                                               
                                               
                                } catch (SQLException e) {
                                                // TODO Auto-generated catch block
                                                e.printStackTrace();
                                }
                }

                @Override
                public  void run() {
                                // TODO Auto-generated method stub
                                 PreparedStatement pstmt;
                                String ins_into_pub_log="Insert into trx_pub(trx_id,curr_date,pub_code,sub_code)values(nextval('trx_id_1sq'),current_date,?,?);";
                                 
                                               
                                                try {
                                                                pstmt=c.prepareStatement(ins_into_pub_log);
                                while(i<150){
                pstmt.setString(1,Thread.currentThread().getName());                
                pstmt.setString(2, "SUB");          
                                                                i++;
                                                                pstmt.execute();
                                                               
                                }
                               
                                                } catch (SQLException e) {
                                                                // TODO Auto-generated catch block
                                                                e.printStackTrace();
                                                }
                                }
                }



                                                         Output of this program:


No comments:

Post a Comment