/[projects]/dao/FuldDaekningWorker/src/main/java/dk/daoas/fulddaekning/Database.java
ViewVC logotype

Diff of /dao/FuldDaekningWorker/src/main/java/dk/daoas/fulddaekning/Database.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2725 by torben, Tue Sep 29 07:48:48 2015 UTC revision 2743 by torben, Wed Oct 7 18:57:53 2015 UTC
# Line 36  public class Database { Line 36  public class Database {
36                    
37                    
38    
39            DeduplicateHelper<String> vejnavnCache = new DeduplicateHelper<String>();
40          DeduplicateHelper<String> husnrbogstavCache = new DeduplicateHelper<String>();          DeduplicateHelper<String> husnrbogstavCache = new DeduplicateHelper<String>();
41          DeduplicateHelper<String> ruteCache = new DeduplicateHelper<String>();          DeduplicateHelper<String> ruteCache = new DeduplicateHelper<String>();
42                    
# Line 68  public class Database { Line 68  public class Database {
68          }                }      
69                    
70          public void renameResultTables() throws SQLException {          public void renameResultTables() throws SQLException {
71                    if (LookupMain.test_mode == true) {
72                            throw new RuntimeException("Can not rename tables in test mode");
73                    }
74    
75                  Constants consts = Constants.getInstance();                  Constants consts = Constants.getInstance();
76                  String ext = consts.getTableExtension();                  String ext = consts.getTableExtension();
77                                    
# Line 97  public class Database { Line 101  public class Database {
101                                    
102                  logger.info("Henter alle IKKE-daekkede adresser");                  logger.info("Henter alle IKKE-daekkede adresser");
103    
104                  String sql = "SELECT id,a.postnr,adresse,gadeid,husnr,husnrbogstav,latitude,longitude,rute,p.distributor as ho " +                  String sql = "SELECT id,a.postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,rute,p.distributor as ho " +
105                                  "FROM fulddaekning.adressetabel a " +                                  "FROM fulddaekning.adressetabel a " +
106                                  "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +                                  "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +
107                                  "WHERE rute IS NULL " +  //Ingen dækning                                  "WHERE rute IS NULL " +  //Ingen dækning
# Line 106  public class Database { Line 110  public class Database {
110                                  "AND longitude IS NOT NULL " +                                  "AND longitude IS NOT NULL " +
111                                  "AND gadeid IS NOT NULL " +                                  "AND gadeid IS NOT NULL " +
112                                  "AND (a.distributor IS NULL OR a.distributor<>'LUKKET') "                                  "AND (a.distributor IS NULL OR a.distributor<>'LUKKET') "
                                 //"LIMIT 2500"  
113                                  ;                                                ;              
114                    
115                    if (LookupMain.test_mode == true) {
116                            sql = sql + " LIMIT 100 ";
117                    }
118                    
119                  PreparedStatement stmt = conn.prepareStatement(sql);                  PreparedStatement stmt = conn.prepareStatement(sql);
120                  stmt.setInt(1, minPostnr);                  stmt.setInt(1, minPostnr);
121                  stmt.setInt(2, maxPostnr);                  stmt.setInt(2, maxPostnr);
# Line 152  public class Database { Line 160  public class Database {
160                    
161          public int hentAlleDaekkedeAdresser() throws SQLException {          public int hentAlleDaekkedeAdresser() throws SQLException {
162                  if ( alleAdresser == null ) {                  if ( alleAdresser == null ) {
163                          String sql = "SELECT id,a.postnr,adresse,gadeid,husnr,husnrbogstav,latitude,longitude,rute,p.distributor as ho " +                          String sql = "SELECT id,a.postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,rute,p.distributor as ho " +
164                                          "FROM fulddaekning.adressetabel a " +                                          "FROM fulddaekning.adressetabel a " +
165                                          "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +                                          "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +
166                                          "WHERE rute IS NOT NULL " +                                          "WHERE rute IS NOT NULL " +
167                                          "AND latitude IS NOT NULL " +                                          "AND latitude IS NOT NULL " +
168                                          "AND longitude IS NOT NULL " +                                          "AND longitude IS NOT NULL " +
169                                          "AND a.distributor = ? ";                                          "AND a.distributor = ? ";
170    
171                            if (LookupMain.test_mode == true) {
172                                    sql = sql + " AND a.postnr BETWEEN 6000 and 7200 ";
173                            }
174                    
175                          // Forward only + concur_read_only + fetchsize tvinger driver til at hente en række af gangen (bedre performance ved store result sets)                          // Forward only + concur_read_only + fetchsize tvinger driver til at hente en række af gangen (bedre performance ved store result sets)
176                          // Se http://dev.mysql.com/doc/connector-j/en/connector-j-reference-implementation-notes.html                          // Se http://dev.mysql.com/doc/connector-j/en/connector-j-reference-implementation-notes.html
# Line 191  public class Database { Line 203  public class Database {
203                    
204    
205          public synchronized void gemResultat(Adresse orgAdresse, Adresse bedsteAdresse, double bedsteAfstand) throws SQLException {          public synchronized void gemResultat(Adresse orgAdresse, Adresse bedsteAdresse, double bedsteAfstand) throws SQLException {
206                  /*String sql = "INSERT INTO fulddaekning.afstand_anden_rute_thn (orgId,orgPostnr, orgAdresse,orgGadeid,orgHusnr,orgHusnrBogstav,orgLatitude,orgLongitude,orgRute,id,postnr,adresse,gadeid,husnr,husnrbogstav,latitude,longitude,rute,afstand,`timestamp`) "+                  /*String sql = "INSERT INTO fulddaekning.afstand_anden_rute_thn (orgId,orgPostnr, orgVejnavn,orgGadeid,orgHusnr,orgHusnrBogstav,orgLatitude,orgLongitude,orgRute,id,postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,rute,afstand,`timestamp`) "+
207                                  "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, now() )";                                  "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, now() )";
208    
209                  PreparedStatement saveStmt = conn.prepareStatement(sql);*/                  PreparedStatement saveStmt = conn.prepareStatement(sql);*/
210    
211                  saveStmt.setInt(1, orgAdresse.id);                  saveStmt.setInt(1, orgAdresse.id);
212                  saveStmt.setShort(2, orgAdresse.postnr);                  saveStmt.setShort(2, orgAdresse.postnr);
213                  saveStmt.setString(3, orgAdresse.adresse);                  saveStmt.setString(3, orgAdresse.vejnavn);
214                  saveStmt.setInt(4, orgAdresse.gadeid);                  saveStmt.setInt(4, orgAdresse.gadeid);
215                  saveStmt.setShort(5, orgAdresse.husnr);                  saveStmt.setShort(5, orgAdresse.husnr);
216                  saveStmt.setString(6, orgAdresse.husnrbogstav);                  saveStmt.setString(6, orgAdresse.husnrbogstav);
# Line 207  public class Database { Line 219  public class Database {
219    
220                  saveStmt.setInt(8, bedsteAdresse.id);                  saveStmt.setInt(8, bedsteAdresse.id);
221                  saveStmt.setShort(9, bedsteAdresse.postnr);                  saveStmt.setShort(9, bedsteAdresse.postnr);
222                  saveStmt.setString(10, bedsteAdresse.adresse);                  saveStmt.setString(10, bedsteAdresse.vejnavn);
223                  saveStmt.setInt(11, bedsteAdresse.gadeid);                  saveStmt.setInt(11, bedsteAdresse.gadeid);
224                  saveStmt.setShort(12, bedsteAdresse.husnr);                  saveStmt.setShort(12, bedsteAdresse.husnr);
225                  saveStmt.setString(13, bedsteAdresse.husnrbogstav);                  saveStmt.setString(13, bedsteAdresse.husnrbogstav);
# Line 251  public class Database { Line 263  public class Database {
263    
264                          adr.id = res.getInt(1);                          adr.id = res.getInt(1);
265                          adr.postnr = res.getShort(2);                          adr.postnr = res.getShort(2);
266                          adr.adresse = res.getString(3);                          adr.vejnavn = vejnavnCache.getInstance( res.getString(3) );
267                          adr.gadeid = res.getInt(4);                          adr.gadeid = res.getInt(4);
268                          adr.husnr = res.getShort(5);                          adr.husnr = res.getShort(5);
269                          adr.husnrbogstav = husnrbogstavCache.getInstance( res.getString(6) );                          adr.husnrbogstav = husnrbogstavCache.getInstance( res.getString(6) );

Legend:
Removed from v.2725  
changed lines
  Added in v.2743

  ViewVC Help
Powered by ViewVC 1.1.20