Navázání DB spojení a kontrola databází SQL dotazem.
1.1 --- a/java/abc-drupal-gui/src/cz/frantovo/abcDrupal/Konvertor.java Fri Jan 01 16:44:46 2010 +0100
1.2 +++ b/java/abc-drupal-gui/src/cz/frantovo/abcDrupal/Konvertor.java Fri Jan 01 17:11:36 2010 +0100
1.3 @@ -2,8 +2,13 @@
1.4
1.5 import java.sql.Connection;
1.6 import java.sql.DriverManager;
1.7 +import java.sql.PreparedStatement;
1.8 +import java.sql.ResultSet;
1.9 import java.sql.SQLException;
1.10 +import java.sql.Statement;
1.11 import java.util.Date;
1.12 +import java.util.logging.Level;
1.13 +import java.util.logging.Logger;
1.14
1.15 /**
1.16 * Řídící třída, stará se o konverzi z databáze Drupalu do databáze ABC.
1.17 @@ -11,6 +16,7 @@
1.18 */
1.19 public class Konvertor {
1.20
1.21 + private static final Logger log = Logger.getLogger(Konvertor.class.getSimpleName());
1.22 private PosluchacLogu posluchacLogu;
1.23 private String jdbcZdroj;
1.24 private String jdbcCil;
1.25 @@ -27,19 +33,72 @@
1.26 vypis("Začíná migrace");
1.27
1.28
1.29 + try {
1.30 + nastavDBspojeni();
1.31 + } catch (SQLException e) {
1.32 + vypis("Chyba při připojování k databázím.");
1.33 + log.log(Level.SEVERE, "Chyba při připojování k databázím.", e);
1.34 + vypis("Končím.");
1.35 + return;
1.36 + }
1.37
1.38
1.39 vypis("Migrace dokončena");
1.40 }
1.41 -
1.42 +
1.43 + /**
1.44 + * Připojí databáze a zkontroluje SQL dotazem, že jsou v pořádku.
1.45 + * @throws SQLException
1.46 + */
1.47 private void nastavDBspojeni() throws SQLException {
1.48 - dbZdroj = DriverManager.getConnection("");
1.49 + dbZdroj = DriverManager.getConnection(jdbcZdroj);
1.50 + dbCil = DriverManager.getConnection(jdbcCil);
1.51 +
1.52 + PreparedStatement sqlZdroj = dbZdroj.prepareStatement("SELECT count(*) FROM node");
1.53 + ResultSet rsZdroj = sqlZdroj.executeQuery();
1.54 + rsZdroj.next();
1.55 + int pocetZdroj = rsZdroj.getInt(1);
1.56 + log.log(Level.INFO, "Počet záznamů v tabulce „node“ ve zdrojové DB: " + pocetZdroj);
1.57 + zavri(null, sqlZdroj, rsZdroj);
1.58 +
1.59 + PreparedStatement sqlCil = dbCil.prepareStatement("SELECT count(*) FROM polozka");
1.60 + ResultSet rsCil = sqlCil.executeQuery();
1.61 + rsCil.next();
1.62 + int pocetCil = rsCil.getInt(1);
1.63 + log.log(Level.INFO, "Počet záznamů v tabulce „polozka“ v cílové DB: " + pocetCil);
1.64 + zavri(null, sqlCil, rsCil);
1.65 }
1.66
1.67 -
1.68 private void vypis(String zprava) {
1.69 if (posluchacLogu != null) {
1.70 posluchacLogu.vypis(new Date() + " " + zprava);
1.71 }
1.72 }
1.73 +
1.74 + /**
1.75 + * Zavře všechno
1.76 + * @param spojeni DB spojení
1.77 + * @param prikaz DB dotaz
1.78 + * @param vysledek DB výsledek
1.79 + */
1.80 + protected static void zavri(Connection spojeni, Statement prikaz, ResultSet vysledek) {
1.81 + if (vysledek != null) {
1.82 + try {
1.83 + vysledek.close();
1.84 + } catch (Exception e) {
1.85 + }
1.86 + }
1.87 + if (prikaz != null) {
1.88 + try {
1.89 + prikaz.close();
1.90 + } catch (Exception e) {
1.91 + }
1.92 + }
1.93 + if (spojeni != null) {
1.94 + try {
1.95 + spojeni.close();
1.96 + } catch (Exception e) {
1.97 + }
1.98 + }
1.99 + }
1.100 }
2.1 --- a/java/abc-drupal-gui/src/cz/frantovo/abcDrupal/gui/HlavniOkno.form Fri Jan 01 16:44:46 2010 +0100
2.2 +++ b/java/abc-drupal-gui/src/cz/frantovo/abcDrupal/gui/HlavniOkno.form Fri Jan 01 17:11:36 2010 +0100
2.3 @@ -109,6 +109,7 @@
2.4 <Property name="text" type="java.lang.String" value="Nahrát data"/>
2.5 </Properties>
2.6 <Events>
2.7 + <EventHandler event="mouseWheelMoved" listener="java.awt.event.MouseWheelListener" parameters="java.awt.event.MouseWheelEvent" handler="nahratDataMouseWheelMoved"/>
2.8 <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="nahratDataActionPerformed"/>
2.9 </Events>
2.10 </Component>
3.1 --- a/java/abc-drupal-gui/src/cz/frantovo/abcDrupal/gui/HlavniOkno.java Fri Jan 01 16:44:46 2010 +0100
3.2 +++ b/java/abc-drupal-gui/src/cz/frantovo/abcDrupal/gui/HlavniOkno.java Fri Jan 01 17:11:36 2010 +0100
3.3 @@ -75,6 +75,11 @@
3.4 jScrollPane1.setViewportView(vystup);
3.5
3.6 nahratData.setText("Nahrát data");
3.7 + nahratData.addMouseWheelListener(new java.awt.event.MouseWheelListener() {
3.8 + public void mouseWheelMoved(java.awt.event.MouseWheelEvent evt) {
3.9 + nahratDataMouseWheelMoved(evt);
3.10 + }
3.11 + });
3.12 nahratData.addActionListener(new java.awt.event.ActionListener() {
3.13 public void actionPerformed(java.awt.event.ActionEvent evt) {
3.14 nahratDataActionPerformed(evt);
3.15 @@ -123,9 +128,16 @@
3.16
3.17 private void nahratDataActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_nahratDataActionPerformed
3.18 Konvertor k = new Konvertor(jdbcZdroj.getText(), jdbcCil.getText(), this);
3.19 + nahratData.setEnabled(false);
3.20 + nahratData.setToolTipText("Pokud chcete spustit migraci ještě jednou, pootočte kolečkem myši :-)");
3.21 k.konvertuj();
3.22 }//GEN-LAST:event_nahratDataActionPerformed
3.23
3.24 + private void nahratDataMouseWheelMoved(java.awt.event.MouseWheelEvent evt) {//GEN-FIRST:event_nahratDataMouseWheelMoved
3.25 + nahratData.setEnabled(true);
3.26 + nahratData.setToolTipText(null);
3.27 + }//GEN-LAST:event_nahratDataMouseWheelMoved
3.28 +
3.29 /**
3.30 * @param args the command line arguments
3.31 */