executeQuery(String)は呼び出さないでください PreparedStatementで 、executeQuery()を呼び出す必要があります 代わりは。これはJDBCAPIによって明示的に禁止されていますが、MySQL Connector / Jで偶然に(構文エラーのために)うまくいかないだけです。
現在のクエリは次と同等であることに注意してください:
select * from matrix where metric_name = ?
INを使用する理由がわかりません ここ。