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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1255 - (hide annotations) (download)
Mon Apr 4 10:56:44 2011 UTC (13 years, 1 month ago) by torben
File size: 2947 byte(s)
Move database related classes to it's own package
1 torben 961 package dk.thoerup.traininfoservice;
2    
3    
4     import java.io.IOException;
5     import java.sql.Connection;
6     import java.sql.ResultSet;
7     import java.sql.SQLException;
8     import java.sql.Statement;
9     import java.util.ArrayList;
10     import java.util.List;
11    
12     import javax.servlet.ServletException;
13     import javax.servlet.annotation.WebServlet;
14     import javax.servlet.http.HttpServlet;
15     import javax.servlet.http.HttpServletRequest;
16     import javax.servlet.http.HttpServletResponse;
17    
18 torben 1255 import dk.thoerup.traininfoservice.db.DBConnection;
19 torben 961
20 torben 1255
21 torben 961 @WebServlet(urlPatterns={"/SavedStatistics"})
22     public class SavedStatistics extends HttpServlet {
23     private static final long serialVersionUID = 1L;
24    
25    
26     protected SavedStatBean convertRow(ResultSet res) throws SQLException {
27     SavedStatBean bean = new SavedStatBean();
28    
29 torben 964 bean.label = res.getString(1);
30 torben 961 bean.station = res.getString(2);
31     bean.location = res.getString(3);
32     bean.name = res.getString(4);
33     bean.favorites = res.getString(5);
34     bean.departure = res.getString(6);
35     bean.depcache = res.getString(7);
36     bean.deperror = res.getString(8);
37     bean.timetable = res.getString(9);
38     bean.timecache = res.getString(10);
39     bean.timeerror = res.getString(11);
40    
41     return bean;
42    
43     }
44    
45    
46     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
47    
48     Connection conn = null;
49     try {
50     conn = DBConnection.getConnection();
51     Statement stmt = conn.createStatement();
52     List<SavedStatBean> stats = new ArrayList<SavedStatBean>();
53    
54    
55     String sqlAvg = "SELECT count(*) AS count, round(avg(location+name+favorites),1) AS station, round(avg(location),1) as location, round(avg(name),1) as name, round(avg(favorites),1) as favorites, " +
56     "round(avg(departure),1) as departure, round(avg(depcache),1) as depcache, round(avg(deperror),1) as deperror, " +
57     "round(avg(timetable),1) as timetable, round(avg(timecache),1) as timecache, round(avg(timeerror),1) as timeerror " +
58 torben 968 "FROM trainstatistics " +
59     "WHERE statisticsdate <> now()::date ";
60 torben 961
61     ResultSet resAvg = stmt.executeQuery(sqlAvg);
62     resAvg.next();
63     SavedStatBean avgBean = convertRow(resAvg);
64    
65     ////////////////////////////////////////////////
66    
67     String SQL = "SELECT statisticsdate, location+name+favorites AS station, location,name,favorites,departure,depcache,deperror,timetable,timecache,timeerror " +
68     "FROM trainstatistics ORDER BY statisticsdate DESC limit 14";
69    
70    
71     ResultSet res = stmt.executeQuery(SQL);
72    
73    
74    
75    
76     while (res.next()) {
77     SavedStatBean bean = convertRow(res);
78     stats.add(bean);
79    
80     }
81 torben 967
82     conn.close();
83 torben 961
84    
85 torben 962 request.setAttribute("avg", avgBean);
86 torben 961 request.setAttribute("stats", stats);
87     request.getRequestDispatcher("/savedstatistics.jsp").forward(request, response);
88    
89    
90     } catch (SQLException e) {
91     try {
92     if (conn != null) conn.close();
93     } catch (SQLException se) {}
94     throw new ServletException(e);
95     }
96     }
97    
98     }

  ViewVC Help
Powered by ViewVC 1.1.20