title: What's the difference between cachePrepStmts and useServerPrepStmts in MySQL JDBC Driver
body: <p>The MySQL JDBC Driver defines these two properties as:</p>
  
  <blockquote>
    <ul>
    <li><p>useServerPrepStmts - Use server-side prepared statements if the server supports them? </p></li>
    <li><p>cachePrepStmts - Should the driver cache the parsing stage of  PreparedStatements of client-side prepared statements, the "check" for
    suitability of server-side prepared and server-side prepared
    statements themselves?</p></li>
    </ul>
  </blockquote>
  
  <p>Is the client-side prepared statement a way to reuse the <code>PreparedStatements</code> objects?</p>
  
  <p>If the <code>useServerPrepStmts</code> is enabled, what is exactly being cached, since MySQL doesn't have an <a href="http://use-the-index-luke.com/blog/2011-07-16/planning-for-reuse" rel="noreferrer">execution plan cache anyway</a>?</p>