1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
| public void lancerImport() {
File repertoire = new File("a_traiter");
FilenameFilter extension = GestionFichiers.avecExtension(".sql");
List<File> fichiers = GestionFichiers.listeRepertoire(repertoire,
extension);
try {
for (File f : fichiers) {
FileHandler handler = new FileHandler("logs/import/"+f.getName().replace("script_insertion_", "import_").replace(".sql", "")+".log");
handler.setFormatter(new SimpleFormatter());
logger.addHandler(handler);
logger.log(Level.INFO, "MOVE du fichier de a_traiter --> en_cours\t\t"+DateUtils.getFormattedDateToLog());
GestionFichiers.move("a_traiter/" + f.getName(), "en_cours/" + f.getName());
if (f.toString().contains("DTM_IAMBE")) {
connexionCible = new ConnexionOracleViaJdbc(
"HDD_DTM_IAMBE", "HDD_DTM_IAMBE",
Lanceur.prop.getProperty("URL_ORACLE_CIBLE"));
} else if (f.toString().contains("DWH")) {
connexionCible = new ConnexionOracleViaJdbc("HDD_DWH_PR",
"HDD_DWH_PR",
Lanceur.prop.getProperty("URL_ORACLE_CIBLE"));
} else if (f.toString().contains("ODS")) {
connexionCible = new ConnexionOracleViaJdbc("HDD_ODS_PR",
"HDD_ODS_PR",
Lanceur.prop.getProperty("URL_ORACLE_CIBLE"));
} else {
connexionCible = new ConnexionOracleViaJdbc(
Lanceur.prop.getProperty("USER_CIBLE"),
Lanceur.prop.getProperty("PASSWORD_CIBLE"),
Lanceur.prop.getProperty("URL_ORACLE_CIBLE"));
}
connexionCible.ouvrir();
int cp = 0;
logger.log(Level.INFO, "DEBUT\tparcours du fichier sql\t\t"+DateUtils.getFormattedDateToLog());
System.out.println("debut "+DateUtils.getFormattedDateToLog());
for (String s : GestionFichiers.getInstance().lireFichierScanner(
"en_cours/" + f.getName())) {
if (!s.startsWith("/*")) {
String insert = s.replaceAll(";$", "");
try {
Statement pstmt = connexionCible.getConnexion()
.createStatement();
pstmt.setFetchSize(10000);
pstmt.executeUpdate(insert);
pstmt.getConnection().commit();
pstmt.close();
} catch (Exception e) {
logger.log(Level.SEVERE, "Ligne " + cp
+ " " + e.toString() + "\n" + insert);
e.printStackTrace();
}
}
cp++;
}
System.out.println("fin "+DateUtils.getFormattedDateToLog());
System.out.println("fin "+DateUtils.getFormattedDateToLog());
logger.log(Level.INFO, "FIN\tparcours du fichier sql\t\t"+DateUtils.getFormattedDateToLog());
logger.log(Level.INFO, "MOVE du fichier de en_cours --> traite\t\t"+DateUtils.getFormattedDateToLog());
GestionFichiers.move("en_cours/" + f.getName(),
"traite/" + f.getName());
connexionCible.fermer();
}
} catch (FichierException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} |
Partager