import java.sql.ResultSet;\r
import java.sql.SQLException;\r
import java.sql.Statement;\r
+import java.util.Objects;\r
import java.util.SortedSet;\r
import java.util.TreeSet;\r
\r
DB db = new DB();\r
@SuppressWarnings("resource")\r
Connection conn = db.getConnection();\r
- Statement stmt = conn.createStatement();\r
- ResultSet rs = stmt.executeQuery("select FROMNODE, TONODE, VIANODE from NETWORK_ROUTES");\r
- while (rs.next()) {\r
- int fromnode = rs.getInt("FROMNODE");\r
- int tonode = rs.getInt("TONODE");\r
- int vianode = rs.getInt("VIANODE");\r
- set.add(new NetworkRoute(fromnode, tonode, vianode));\r
+ try(Statement stmt = conn.createStatement()) {\r
+ try(ResultSet rs = stmt.executeQuery("select FROMNODE, TONODE, VIANODE from NETWORK_ROUTES")) {\r
+ while (rs.next()) {\r
+ int fromnode = rs.getInt("FROMNODE");\r
+ int tonode = rs.getInt("TONODE");\r
+ int vianode = rs.getInt("VIANODE");\r
+ set.add(new NetworkRoute(fromnode, tonode, vianode));\r
+ }\r
+ }\r
}\r
- rs.close();\r
- stmt.close();\r
db.release(conn);\r
} catch (SQLException e) {\r
e.printStackTrace();\r
e.printStackTrace();\r
} finally {\r
try {\r
- ps.close();\r
+ if(ps!=null) {\r
+ ps.close();\r
+ }\r
} catch (SQLException e) {\r
e.printStackTrace();\r
}\r
e.printStackTrace();\r
} finally {\r
try {\r
- ps.close();\r
+ if(ps!=null) {\r
+ ps.close();\r
+ }\r
} catch (SQLException e) {\r
e.printStackTrace();\r
}\r
e.printStackTrace();\r
} finally {\r
try {\r
- ps.close();\r
+ if(ps!=null) {\r
+ ps.close();\r
+ }\r
} catch (SQLException e) {\r
e.printStackTrace();\r
}\r
return (fromnode == on.fromnode) && (tonode == on.tonode) && (vianode == on.vianode);\r
}\r
\r
+ @Override\r
+ public int hashCode() {\r
+ return Objects.hash(fromnode, tonode, vianode);\r
+ }\r
+\r
@Override\r
public int compareTo(NetworkRoute o) {\r
if (this.fromnode == o.fromnode) {\r