Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.SQLException;
- import java.sql.PreparedStatement;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- import java.io.BufferedReader;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.net.HttpURLConnection;
- import java.net.URL;
- public class ETL_ZTM_PG {
- public static void main(String[] args){
- System.out.println("Hello world!");
- int it = 6;
- String sql = "insert into public.t_ztm_snapshot(line_id, brigade_id, lon, lat, time_string) values (?,?,?,?,?)";
- try(Connection con = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres", "postgres", "postgres")){
- PreparedStatement pst = con.prepareStatement(sql);
- try{
- URL url = new URL ("https://hackaton.vavel.waw.pl/api/hackathon/v1/vehicles/raw/?line=1,2,3,4,6,7,9,10,11,13,14,15,17,18,20,22,23,24,25,26,27,28,31,33,35,102,103,104,105,107,108,109,110,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,139,140,141,142,143,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,217,218,219,220,221,222,225,227,228,239,240,245,249,250,251,255,256,262,264,300,303,304,305,308,311,317,318,320,323,326,328,331,332,334,338,339,340,345,365,376,379,380,397,401,402,409,411,412,414,500,501,502,503,504,507,509,511,512,514,516,517,518,519,520,521,522,523,525,527,702,703,704,705,706,707,709,710,711,712,713,714,715,716,717,719,720,721,722,723,724,727,728,729,730,731,733,734,735,736,737,738,739,741,742,743,750,800,900");
- String token = "0dbdbb55f05a9df07cd6cb0e5ba93d9b8ccdbe6e";
- HttpURLConnection connection = (HttpURLConnection) url.openConnection();
- connection.setRequestMethod("GET");
- connection.setDoOutput(true);
- connection.setRequestProperty ("Authorization", "Token " + token);
- InputStream content = (InputStream)connection.getInputStream();
- BufferedReader in = new BufferedReader(new InputStreamReader(content));
- String line, transformedLine;
- while ((line = in.readLine()) != null) {
- if(line.contains("brigade")){
- it = 1;
- pst.setInt(2, Integer.parseInt(line.substring(35, line.length()-7)));
- }
- else if(it < 6){
- transformedLine = line.replaceAll("[^0-9T.]", "");
- //System.out.println(transformedLine);
- switch(it){
- case 1: pst.setInt(1, Integer.parseInt(transformedLine));
- break;
- case 2: pst.setString(5, transformedLine);
- break;
- case 3: pst.setDouble(3, Double.parseDouble(transformedLine));
- break;
- case 4: pst.setDouble(4, Double.parseDouble(transformedLine));
- break;
- case 5: pst.executeUpdate();
- break;
- }
- it = it + 1;
- }
- }
- } catch(Exception e){
- e.printStackTrace();
- }
- } catch(SQLException ex){
- Logger lgr = Logger.getLogger(ETL_Hadoop_PG.class.getName());
- lgr.log(Level.SEVERE, ex.getMessage(), ex);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement