Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.fitbank.formuploader;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.InputStream;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.Date;
- import java.sql.PreparedStatement;
- import java.sql.SQLException;
- import java.sql.Timestamp;
- import java.util.Collection;
- import javax.swing.JOptionPane;
- import java.io.ByteArrayInputStream;
- import java.util.Properties;
- import org.apache.commons.io.IOUtils;
- import com.FitBank.xml.Formas.Formulario;
- import com.FitBank.xml.Parser.ParserFormulario;
- import com.FitBank.xml.Parser.ParserGeneral;
- import com.fitbank.util.Debug;
- import com.fitbank.util.ListaArchivos;
- import com.fitbank.webpages.WebPage;
- import com.fitbank.webpages.WebPageXml;
- public class Main {
- private final int cia;
- private final Connection conn;
- public Main(int cia) {
- this.cia = cia;
- this.conn = openDB();
- }
- public void subirFormulario(InputStream is) throws Exception {
- byte[] contenido = IOUtils.toByteArray(is);
- Formulario formulario = ParserFormulario.parse(ParserGeneral.
- parseStringDoc(new String(contenido, "ISO-8859-1")));
- System.out.println("\t\tSubiendo el formulario " + formulario.getSubs() + formulario.
- getTran() + "...");
- upload(new String(contenido, "ISO-8859-1"), formulario.getIdioma(),
- formulario.getSubs(), formulario.getTran(),
- formulario.getVersion(), Formulario.class.getName());
- System.out.println("\t\tSe subio el formulario exitosamente.");
- }
- public void subirWebPage(InputStream is) throws Exception {
- byte[] contenido = IOUtils.toByteArray(is);
- WebPage webPage = WebPageXml.parse(new ByteArrayInputStream(contenido));
- System.out.println("\t\tSubiendo el WebPage " + webPage.getSubsystem()
- + webPage.getTransaction() + "...");
- upload(new String(contenido, "UTF-8"), webPage.getLanguage(),
- webPage.getSubsystem(), webPage.getTransaction(), "01",
- WebPage.class.getName());
- System.out.println("\t\tSe subio el WebPage exitosamente.");
- }
- /**
- * Método que inserta o actualiza formularios sobre la tabla TFORMATOXML
- *
- * @throws java.io.IOException
- * @throws java.sql.SQLException
- */
- public void upload(String contenido, String cidioma, String csubsistema,
- String ctransaccion, String versiontransaccion, String tipoformato)
- throws Exception {
- Date expire = Date.valueOf("2999-12-31");
- Timestamp now = new Timestamp(new java.util.Date().getTime());
- // Caduca el registro
- PreparedStatement ps1 = conn.prepareStatement("UPDATE tformatoxml set fhasta=?"
- + " WHERE cidioma=? AND cpersona_compania=? AND csubsistema=?"
- + " AND ctransaccion=? AND versiontransaccion=? and fhasta=?");
- ps1.setTimestamp(1, now);
- ps1.setString(2, cidioma);
- ps1.setString(3, String.valueOf(cia));
- ps1.setString(4, csubsistema);
- ps1.setString(5, ctransaccion);
- ps1.setString(6, versiontransaccion);
- ps1.setDate(7, expire);
- ps1.executeUpdate();
- ps1.close();
- // Inserta la info del nuevo webPage con el CLOB en nulo
- PreparedStatement ps2 = conn.prepareStatement("INSERT INTO tformatoxml"
- + " (cidioma, cpersona_compania, csubsistema, ctransaccion, "
- + " versiontransaccion, formatoxml, tipoformato, fhasta, fdesde)"
- + " VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?)");
- System.out.println("Contenido: " + contenido.length());
- ps2.setString(1, cidioma);
- ps2.setString(2, String.valueOf(cia));
- ps2.setString(3, csubsistema);
- ps2.setString(4, ctransaccion);
- ps2.setString(5, versiontransaccion);
- ps2.setString(6, contenido);
- ps2.setString(7, tipoformato);
- ps2.setDate(8, expire);
- ps2.setTimestamp(9, now);
- ps2.execute();
- ps2.close();
- }
- private static Connection openDB() {
- try {
- Class.forName("oracle.jdbc.OracleDriver");
- Properties props = new Properties();
- props.put("user", "fitaustro");
- props.put("password", "fitaustro");
- props.put("SetBigStringTryClob", "true");
- return DriverManager.getConnection("jdbc:oracle:thin:@10.1.1.227:1521:fitaustro", props);
- } catch (SQLException ex) {
- Debug.error(ex);
- System.exit(1);
- } catch (ClassNotFoundException ex) {
- Debug.error(ex);
- System.exit(1);
- }
- return null;
- }
- public static void main(String args[])
- throws com.FitBank.xml.Parser.ExcepcionParser {
- Collection<File> files = ListaArchivos.getLista(Main.class,
- "xml", "wpx");
- int cia = (Integer) JOptionPane.showInputDialog(null, "Compania",
- "Ingrese el codigo de compania",
- JOptionPane.QUESTION_MESSAGE, null, new Integer[] { 2, 3,
- 4, 5, 6, 7, 8, 9, 10 }, 0);
- Main fu = new Main(cia);
- for (File file : files) {
- try {
- if (file.getName().endsWith(".wpx")) {
- fu.subirWebPage(new FileInputStream(file));
- } else {
- fu.subirFormulario(new FileInputStream(file));
- }
- } catch (Exception e) {
- Debug.error(e);
- }
- }
- System.exit(0);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement