Advertisement
Guest User

Untitled

a guest
Nov 12th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.17 KB | None | 0 0
  1. import java.sql.Connection;
  2. import java.sql.DriverManager;
  3. import java.sql.SQLException;
  4. import java.sql.PreparedStatement;
  5. import java.util.logging.Level;
  6. import java.util.logging.Logger;
  7. import java.io.BufferedReader;
  8. import java.io.InputStream;
  9. import java.io.InputStreamReader;
  10. import java.net.HttpURLConnection;
  11. import java.net.URL;
  12.  
  13. public class ETL_ZTM_PG {
  14. public static void main(String[] args){
  15. System.out.println("Hello world!");
  16. int it = 6;
  17. String sql = "insert into public.t_ztm_snapshot(line_id, brigade_id, lon, lat, time_string) values (?,?,?,?,?)";
  18. try(Connection con = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres", "postgres", "postgres")){
  19. PreparedStatement pst = con.prepareStatement(sql);
  20. try{
  21. 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");
  22. String token = "0dbdbb55f05a9df07cd6cb0e5ba93d9b8ccdbe6e";
  23. HttpURLConnection connection = (HttpURLConnection) url.openConnection();
  24. connection.setRequestMethod("GET");
  25. connection.setDoOutput(true);
  26. connection.setRequestProperty ("Authorization", "Token " + token);
  27. InputStream content = (InputStream)connection.getInputStream();
  28. BufferedReader in = new BufferedReader(new InputStreamReader(content));
  29. String line, transformedLine;
  30. while ((line = in.readLine()) != null) {
  31. if(line.contains("brigade")){
  32. it = 1;
  33. pst.setInt(2, Integer.parseInt(line.substring(35, line.length()-7)));
  34. }
  35. else if(it < 6){
  36. transformedLine = line.replaceAll("[^0-9T.]", "");
  37. //System.out.println(transformedLine);
  38. switch(it){
  39. case 1: pst.setInt(1, Integer.parseInt(transformedLine));
  40. break;
  41. case 2: pst.setString(5, transformedLine);
  42. break;
  43. case 3: pst.setDouble(3, Double.parseDouble(transformedLine));
  44. break;
  45. case 4: pst.setDouble(4, Double.parseDouble(transformedLine));
  46. break;
  47. case 5: pst.executeUpdate();
  48. break;
  49. }
  50. it = it + 1;
  51. }
  52. }
  53. } catch(Exception e){
  54. e.printStackTrace();
  55. }
  56. } catch(SQLException ex){
  57. Logger lgr = Logger.getLogger(ETL_Hadoop_PG.class.getName());
  58. lgr.log(Level.SEVERE, ex.getMessage(), ex);
  59. }
  60. }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement