[SPARK-2710] [SQL] Build SchemaRDD from a JdbcRDD with MetaData

SPARK-2710 Build SchemaRDD from a JdbcRDD with MetaData

and a small bug fix on JdbcRDD, line 109
it seems conn will never be closed


yep, i tried to do like you said before, but there is no public method or attribute to get ResultSet or Statement from this ```JdbcRDD``` in spark core, so in ```JdbcResultSetRDD``` i have no idea how can we get the metadata from ```JdbcRDD```... otherwise we do something like ```jdbcRDD.head``` then we can get the metadata from first row, but it may execute the whole query at plan phase.