title: Java, ResultSet.close(), PreparedStatement.close() -- what for?
body: <p>In my web-application, i make extensive use of a database. </p>
  
  <p>I have an abstract servlet, from which all the servlets that need a database connection, inherit. That abstract servlet creates a database connection, calls the abstract method which must be overriden by the inheriting servlets to do their logic, and then closes the connection. I do not use connection pooling, because my application will have a very limited number of users and operations. </p>
  
  <p>My question is, what's the worst that can happen if i don't ever close the <code>ResultSet</code>s, <code>PreparedStatement</code>s and <code>Statement</code>s that my inheriting servlets create, if the <code>Connection</code>s that create them are always closed?</p>