|
1 | 1 | package org.fugerit.java.query.export.tool; |
2 | 2 |
|
3 | | -import java.io.BufferedWriter; |
4 | | -import java.nio.charset.StandardCharsets; |
5 | | -import java.nio.file.Files; |
6 | | -import java.nio.file.Paths; |
| 3 | +import java.io.FileOutputStream; |
7 | 4 | import java.sql.Connection; |
8 | | -import java.sql.ResultSet; |
9 | | -import java.sql.ResultSetMetaData; |
10 | | -import java.sql.Statement; |
11 | 5 | import java.util.Properties; |
12 | 6 |
|
13 | 7 | import org.fugerit.java.core.cli.ArgUtils; |
14 | 8 | import org.fugerit.java.core.db.connect.ConnectionFactory; |
15 | 9 | import org.fugerit.java.core.db.connect.ConnectionFactoryImpl; |
16 | 10 | import org.fugerit.java.core.io.FileIO; |
17 | 11 | import org.fugerit.java.core.util.PropsIO; |
| 12 | +import org.fugerit.java.query.export.facade.QueryExportConfig; |
18 | 13 | import org.fugerit.java.query.export.facade.QueryExportFacade; |
19 | 14 | import org.slf4j.Logger; |
20 | 15 | import org.slf4j.LoggerFactory; |
21 | 16 |
|
22 | | -import com.opencsv.CSVWriter; |
23 | | - |
24 | 17 | public class QueryExportToolMain { |
25 | 18 |
|
26 | 19 | public static final String ARG_DB_CONFIG = "db-config"; |
@@ -53,16 +46,21 @@ public static void main(String[] args) { |
53 | 46 | Properties props = PropsIO.loadFromFile(dbConfig); |
54 | 47 | ConnectionFactory cf = ConnectionFactoryImpl.newInstance(props); |
55 | 48 | Connection conn = cf.getConnection(); |
| 49 | + FileOutputStream fos = new FileOutputStream( outputFile ); |
56 | 50 | try { |
57 | | - BufferedWriter writer = Files.newBufferedWriter( Paths.get( outputFile ), StandardCharsets.UTF_8 ); |
58 | 51 | String sql = FileIO.readString( queryFile ); |
59 | | - |
| 52 | + String csvSeparator = params.getProperty( ARG_CSV_SEPARATOR, "," ); |
| 53 | + QueryExportConfig exportConfig = QueryExportConfig.newConfigCSV( fos, conn, sql, csvSeparator.charAt( 0 ) ); |
| 54 | + QueryExportFacade.export( exportConfig ); |
60 | 55 | } catch (Exception e) { |
61 | 56 | throw e; |
62 | 57 | } finally { |
63 | 58 | if (conn != null) { |
64 | 59 | conn.close(); |
65 | 60 | } |
| 61 | + if ( fos != null ) { |
| 62 | + fos.close(); |
| 63 | + } |
66 | 64 | } |
67 | 65 | } |
68 | 66 | } catch (Exception e) { |
|
0 commit comments