Does jdbcTemplate.update support a sub select in insert queries?
JDBC Template doesn't care what SQL you use... this is just passed to the database to process - so if your database supports the syntax (which you should try outside java in your database's shell)
What the problem, as @talex points out, is that you are not defining any bind variables in your SQL statement
Change your statement from:
String myInsert = "INSERT INTO myTable(col1, col2, col3,) values( val1, (SELECT thisVal from mySecondTable where myColumn = val2), val3)"
to
String myInsert = "INSERT INTO myTable(col1, col2, col3,) values( ?, (SELECT thisVal from mySecondTable where myColumn = ?), ?)"
This your program should work. See this tutorial: https://www.baeldung.com/spring-jdbc-jdbctemplate#1-basic-queries (many others exist)