How to Design this Class while Reding a Csv File.
i want to make this more Design orinted. This code is for reading A csv file and scnning it for Duplicate data in that Csv file.public Vector upLoadCsv(String csvFile)throws Exception
{
boolean flag =false;
Connection conn=null;
PreparedStatement stmt=null;
Vector upload_data=new Vector();
patternMapDescs =new Vector();
patternFroms=new Vector();
patternTos=new Vector();
oprNetIds=new Vector();
circleIds=new Vector();
ldcaIds=new Vector();
sdcaIds=new Vector();
try{
fileOut =new FileOutputStream(patrnBulkFailureFilePath,true);
patternMapList=readFile(csvFile);
System.out.println("PatternMapList is "+patternMapList);
Vector Patter_From=(Vector)patternMapList.get(0);
Vector Pattern_To=(Vector)patternMapList.get(1);
Vector Opr_Net_Id=(Vector)patternMapList.get(2);
Vector Circle_Id=(Vector)patternMapList.get(3);
Vector Ldca_Id=(Vector)patternMapList.get(4);
Vector Sdca_Id=(Vector)patternMapList.get(5);
Vector Msc_Id=(Vector)patternMapList.get(6);
Vector Cell_Id=(Vector)patternMapList.get(7);
Vector Pattern_Desc=(Vector)patternMapList.get(8);
try
{
conn = DBHelper.getConnection();
System.out.println("Size is "+Patter_From.size());
for(int i=0;i<Patter_From.size();i++)
{
try
{
int result = 0;
System.out.println("Count value is "+i);
stmt = conn.prepareStatement("update lcorating.PATTERN_MAP set PATTERN_FROM=?,PATTERN_TO=?,OPR_NET_ID=?,CIRCLE_ID=?,LDCA_ID=?,SDCA_ID=?,MSC_ID=?,CELL_ID=?,PATTERN_DESC=? where pattern_from=? and pattern_to=?");
stmt.setString(1,(String)Patter_From.get(i));
stmt.setString(2,(String)Pattern_To.get(i));
stmt.setString(3,(String)Opr_Net_Id.get(i));
stmt.setString(4,(String)Circle_Id.get(i));
stmt.setString(5,(String)Ldca_Id.get(i));
stmt.setString(6,(String)Sdca_Id.get(i));
stmt.setString(7,(String)Msc_Id.get(i));
stmt.setString(8,(String)Cell_Id.get(i));
stmt.setString(9,(String)Pattern_Desc.get(i));
stmt.setString(10,(String)Patter_From.get(i));
stmt.setString(11,(String)Pattern_To.get(i));
result = stmt.executeUpdate();
System.out.println("result is "+result +"for "+(String)Patter_From.get(i));
if(result==1)
{
upload_data.add((String)Patter_From.get(i));
upload_data.add((String)Pattern_To.get(i));
upload_data.add((String)Opr_Net_Id.get(i));
upload_data.add((String)Circle_Id.get(i));
upload_data.add((String)Ldca_Id.get(i));
upload_data.add((String)Sdca_Id.get(i));
upload_data.add((String)Msc_Id.get(i));
upload_data.add((String)Cell_Id.get(i));
upload_data.add((String)Pattern_Desc.get(i));
patternFroms.add((String)Patter_From.get(i));
patternTos.add((String)Pattern_To.get(i));
oprNetIds.add((String)Opr_Net_Id.get(i));
circleIds.add((String)Circle_Id.get(i));
ldcaIds.add((String)Ldca_Id.get(i));
sdcaIds.add((String)Sdca_Id.get(i));
patternMapDescs.add((String)Pattern_Desc.get(i));
}
if(result==0)
{
stmt = conn.prepareStatement("insert into lcorating.PATTERN_MAP values(?,?,?,?,?,?,?,?,?)");
stmt.setString(1,(String)Patter_From.get(i));
stmt.setString(2,(String)Pattern_To.get(i));
stmt.setString(3,(String)Opr_Net_Id.get(i));
stmt.setString(4,(String)Circle_Id.get(i));
stmt.setString(5,(String)Ldca_Id.get(i));
stmt.setString(6,(String)Sdca_Id.get(i));
stmt.setString(7,(String)Msc_Id.get(i));
stmt.setString(8,(String)Cell_Id.get(i));
stmt.setString(9,(String)Pattern_Desc.get(i));
stmt.executeUpdate();
upload_data.add((String)Patter_From.get(i));
upload_data.add((String)Pattern_To.get(i));
upload_data.add((String)Opr_Net_Id.get(i));
upload_data.add((String)Circle_Id.get(i));
upload_data.add((String)Ldca_Id.get(i));
upload_data.add((String)Sdca_Id.get(i));
upload_data.add((String)Msc_Id.get(i));
upload_data.add((String)Cell_Id.get(i));
upload_data.add((String)Pattern_Desc.get(i));
}
}
catch(Exception e)
{
System.out.println("Exception entry "+i);
String strFailure = (String)Patter_From.get(i) +","+
(String)Pattern_To.get(i) +","+
(String)Opr_Net_Id.get(i) +","+
(String)Circle_Id.get(i) +","+
(String)Ldca_Id.get(i) +","+
(String)Sdca_Id.get(i) +","+
(String)Msc_Id.get(i) +","+
(String)Cell_Id.get(i) +","+
(String)Pattern_Desc.get(i)+"," +new java.util.Date()+"\n";
System.out.println("writing "+ (String)Patter_From.get(i));
fileOut.write(strFailure.getBytes());
continue;
}
}
}catch(Exception e)
{
System.out.println("Excepion is "+e);
}
flag=true;
}
catch(Exception e)
{
flag=false;
System.out.println("Exception in Reading File===>"+e);
}
System.out.println("Uploaded data is ");
System.out.println(upload_data);
return upload_data;
}
// This method "readFile" Reads the CSV file in the form of StringToken
private List readFile(String fileName)
{
BufferedReaderbr;
Stringrecord;
StringTokenizerst;
VectorvPatternFrom=new Vector();
Vector vectorPatternFrom=new Vector();
Vector vectorPatternTo=new Vector();
Vector vectorOpertorNetworkId=new Vector();
Vector vectorCircleId=new Vector();
Vector vectorLdcaId=new Vector();
Vector vectorSdcaId=new Vector();
Vector vectorMscId=new Vector();
Vector vectorCellId=new Vector();
Vector vectorPatternDesc=new Vector();
ArrayList totalList=new ArrayList();
boolean isExist=false;
boolean duplicateOrgNUmFlag=false;
try
{
br =new BufferedReader(new InputStreamReader(new FileInputStream(fileName)));
while ((record = br.readLine()) !=null)
{
st =new StringTokenizer(record,",");
try
{
while (st.hasMoreTokens())
{
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
vPatternFrom.add(st.nextToken());
}
}
catch(NoSuchElementException nseex)
{
System.out.println("Record without valid data :: " + record);
}
}
}
catch(FileNotFoundException fnfex)
{
System.out.println("exception is"+fnfex.toString());
}
catch (IOException ioex)
{
System.out.println("exception is"+ioex.toString());
}
catch(Exception e){
System.out.println("praveen is stupid");
}
System.out.println("vPatternFrom"+vPatternFrom);
int noOfRecords = vPatternFrom.size();
//System.out.println("Size of record is "+noOfRecords);
for(int i=0;i<vPatternFrom.size();i=i+9)
{
String sPatternFrom=(String)vPatternFrom.get(i);
vectorPatternFrom.add(sPatternFrom);
String sPatternTo=(String)vPatternFrom.get(i+1);
vectorPatternTo.add(sPatternTo);
String sOpertorNetworkId=(String)vPatternFrom.get(i+2);
vectorOpertorNetworkId.add(sOpertorNetworkId);
String sCircleId=(String)vPatternFrom.get(i+3);
vectorCircleId.add(sCircleId);
String sLdcaId=(String)vPatternFrom.get(i+4);
vectorLdcaId.add(sLdcaId);
String sSdcaId=(String)vPatternFrom.get(i+5);
vectorSdcaId.add(sSdcaId);
String sMscId=(String)vPatternFrom.get(i+6);
vectorMscId.add(sMscId);
String sCellId=(String)vPatternFrom.get(i+7);
vectorCellId.add(sCellId);
String sPatternDesc =(String)vPatternFrom.get(i+8);
vectorPatternDesc.add(sPatternDesc);
}
totalList.add(vectorPatternFrom);
totalList.add(vectorPatternTo);
totalList.add(vectorOpertorNetworkId);
totalList.add(vectorCircleId);
totalList.add(vectorLdcaId);
totalList.add(vectorSdcaId);
totalList.add(vectorMscId);
totalList.add(vectorCellId);
totalList.add(vectorPatternDesc);
ArrayList rrList=new ArrayList();
try{
rrList=verifyTotalPatternData(totalList);
}catch(Exception e){
System.out.println("excpetion is bothering");
}
return rrList;
}
public ArrayList verifyTotalPatternData(ArrayList totalList)
{
Vector pattern_from=(Vector)totalList.get(0);
Vector pattern_to=(Vector)totalList.get(1);
Vector opr_net_id=(Vector)totalList.get(2);
Vector circle_id=(Vector)totalList.get(3);
Vector ldca_id=(Vector)totalList.get(4);
Vector sdca_id=(Vector)totalList.get(5);
Vector msc_id=(Vector)totalList.get(6);
Vector cell_id=(Vector)totalList.get(7);
Vector pattern_desc=(Vector)totalList.get(8);
String strFailure ="";
for(int i=0;i<pattern_from.size();i++){
for(int j=i+1;j<pattern_from.size();j++){
if((pattern_from.get(j)).equals(pattern_from.get(i))){
if((pattern_to.get(j)).equals(pattern_to.get(i))){
try{
strFailure=(String)pattern_from.get(i) +","+
(String)pattern_to.get(i) +","+
(String)opr_net_id.get(i) +","+
(String)circle_id.get(i) +","+
(String)ldca_id.get(i) +","+
(String)sdca_id.get(i) +","+
(String)msc_id.get(i) +","+
(String)cell_id.get(i) +","+
(String)pattern_desc.get(i) +"," +new java.util.Date()+"\n";
//System.out.println("writing "+ (String)pattern_from.get(i));
fileOut.write(strFailure.getBytes());
}
catch(Exception e)
{
System.out.println("Exception while adding entry in bulkFailureData.csv "+e);
}
pattern_from.removeElementAt(j);
pattern_to.removeElementAt(j);
opr_net_id.removeElementAt(j);
circle_id.removeElementAt(j);
ldca_id.removeElementAt(j);
sdca_id.removeElementAt(j);
msc_id.removeElementAt(j);
cell_id.removeElementAt(j);
pattern_desc.removeElementAt(j);
j--;
}
}
}
}
ArrayList ret_list =new ArrayList();
ret_list.add(pattern_from);
ret_list.add(pattern_to);
ret_list.add(opr_net_id);
ret_list.add(circle_id);
ret_list.add(ldca_id);
ret_list.add(sdca_id);
ret_list.add(msc_id);
ret_list.add(cell_id);
ret_list.add(pattern_desc);
//System.out.println("The filtered list is "+ret_list);
return ret_list;
}
>

