Advertisement
angiris

Untitled

May 15th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.35 KB | None | 0 0
  1. import java.io.BufferedWriter;
  2. import java.io.FileWriter;
  3. import java.io.IOException;
  4. import java.sql.*;
  5.  
  6. public class schemaCheck {
  7.  
  8.     private static String server = ""; //задается в параметре запуска
  9.     private static String port = "5432";
  10.     private static String username = "postgres";
  11.     private static String password = "postgres";
  12.     private static String dbName = "postgres";
  13.     private static String driverName = "org.postgresql.Driver";
  14.     private static Boolean programTask = Boolean.valueOf(true);
  15. //Проверка входных параметров
  16. //Если их нет то заменяет на заданные по умолчанию
  17.     public static void main(String[] arrstring) throws ClassNotFoundException {
  18.         if (!arrstring[0].equals("")) {
  19.             server = arrstring[0];
  20.         }
  21.  
  22.         if (!arrstring[1].equals("")) {
  23.             port = arrstring[1];
  24.         }
  25.  
  26.         if (!arrstring[2].equals("")) {
  27.             username = arrstring[2];
  28.         }
  29.  
  30.         if (!arrstring[3].equals("")) {
  31.             password = arrstring[3];
  32.         }
  33.  
  34.         if (arrstring.length == 6) {
  35.             if (!arrstring[4].equals("")) {
  36.                 dbName = arrstring[4];
  37.             }
  38.  
  39.             programTask = Boolean.valueOf(false);
  40.         }
  41.         String string = "jdbc:postgresql://" + server + ":" + port + "/";
  42.         connect(string + dbName, driverName, username, password);
  43.     }
  44.  
  45.     private static void connect(String string, String string2, String string3, String string4) throws ClassNotFoundException {
  46.         Class.forName(string2);
  47.  
  48.         try {
  49.             Connection var12 = DriverManager.getConnection(string, string3, string4);
  50.             Statement statement = var12.createStatement();
  51.             String string8;
  52.             if (programTask.booleanValue()) {
  53.                 string8 = "select datname from pg_database where datname not like 'postgres' and datname not like 'template%' order by datname;";
  54.                 ResultSet resultSet = statement.executeQuery(string8);
  55.  
  56.                 try {
  57.                     BufferedWriter var11 = new BufferedWriter(new FileWriter(server + ".txt"));
  58.                     var11.write(String.format("Параметры для подключения к БД: \n", new Object[0]));
  59.                     var11.write(String.format("azk.db.url=%-30s <ИМЯ БД> \n", new Object[]{string}));
  60.                     var11.write(String.format("azk.db.user=postgres \n", new Object[0]));
  61.                     var11.write(String.format("azk.db.password=postgres \n\n", new Object[0]));
  62.                     var11.write(String.format("Доступные БД \n", new Object[0]));
  63.                     var11.write(String.format("%-30s %-30s \n", new Object[]{"<ИМЯ БД>", "<ВЕРСИЯ>"}));
  64.  
  65.                     while (resultSet.next()) {
  66.                         String string6 = resultSet.getString("datname");
  67.                         var11.write(String.format("%-30s\n", new Object[]{string6}));
  68.                     }
  69.  
  70.                     var12.close();
  71.                     var11.close();
  72.                 } catch (IOException var111) {
  73.                     var111.printStackTrace();
  74.                 }
  75.             }
  76.         } catch (SQLException var121) {
  77.             System.out.println(var121.toString());
  78.         }
  79.  
  80.     }
  81.  
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement