/[projects]/android/TrainInfoService/src/dk/thoerup/traininfoservice/LoadStations.java
ViewVC logotype

Annotation of /android/TrainInfoService/src/dk/thoerup/traininfoservice/LoadStations.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1255 - (hide annotations) (download)
Mon Apr 4 10:56:44 2011 UTC (13 years, 2 months ago) by torben
File size: 2395 byte(s)
Move database related classes to it's own package
1 torben 301 package dk.thoerup.traininfoservice;
2    
3     import java.io.IOException;
4     import java.io.PrintWriter;
5     import java.sql.Connection;
6     import java.sql.PreparedStatement;
7     import java.sql.ResultSet;
8     import java.sql.SQLException;
9    
10     import javax.servlet.ServletException;
11 torben 958 import javax.servlet.annotation.WebServlet;
12 torben 301 import javax.servlet.http.HttpServlet;
13     import javax.servlet.http.HttpServletRequest;
14     import javax.servlet.http.HttpServletResponse;
15    
16 torben 1255 import dk.thoerup.traininfoservice.db.DBConnection;
17    
18 torben 958 @Deprecated
19     @WebServlet(urlPatterns={"/LoadStations"})
20 torben 301
21     public class LoadStations extends HttpServlet {
22     private static final long serialVersionUID = 1L;
23    
24     public LoadStations() {
25     super();
26     }
27    
28     protected void insertOrUpdate(Connection conn, String type, String code, String name) throws SQLException{
29     String sql = "SELECT id FROM trainstations WHERE stationcode=?";
30     PreparedStatement stmt = conn.prepareStatement(sql);
31     stmt.setString(1, code);
32    
33     ResultSet rs = stmt.executeQuery();
34    
35     boolean stog = type.equalsIgnoreCase("S2");
36    
37     if (rs.next()) {
38     int id = rs.getInt(1);
39     stmt = conn.prepareStatement("UPDATE trainstations SET name=?, stog=?, updated=now() WHERE id=?");
40     stmt.setString(1, name);
41     stmt.setBoolean(2, stog);
42     stmt.setInt(3, id);
43     stmt.execute();
44     } else {
45     stmt = conn.prepareStatement("INSERT INTO trainstations (name,stationcode,stog,updated) VALUES (?,?,?,now())");
46     stmt.setString(1, name);
47     stmt.setString(2, code);
48     stmt.setBoolean(3, stog);
49     stmt.execute();
50     }
51    
52     }
53    
54 torben 425 @Override
55 torben 301 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
56     String url = "http://rafiki.t-hoerup.dk/tog/stations.php";
57    
58     String stationStr = DownloadUtil.getContentString(url, 5000, "ISO-8859-1");
59    
60     String stations[] = stationStr.split("\n");
61     Connection conn = null;
62     try {
63     conn = DBConnection.getConnection();
64     for (String stationLine : stations) {
65     String fields[] = stationLine.split(";");
66    
67    
68     insertOrUpdate(conn, fields[0], fields[1], fields[2]);
69     }
70     } catch (Exception e) {
71     throw new ServletException(e);
72     } finally {
73     try {
74     if (conn != null && !conn.isClosed())
75     conn.close();
76     } catch (SQLException e) {}
77     }
78     PrintWriter out = resp.getWriter();
79     out.print("ok");
80     }
81    
82     }

  ViewVC Help
Powered by ViewVC 1.1.20