IDEA高亮sql语句
https://www.jetbrains.com/help/idea/using-language-injections.html
目标
-
使用 JdbcTemplate 等方法时, IDEA 会自动提示相关sql(
如果有配置Database
), 没有配置则为高亮sql代码, 效果如下
-
如果自定义工具类, 传入sql, 里面调用 JdbcTemplate 时, sql高亮代码将无效, 例如
public static <T> List<T> queryEntity(JdbcTemplate jdbcTemplate, String sql, Class<T> clazz) {
BeanPropertyRowMapper<T> beanPropertyRowMapper = new BeanPropertyRowMapper<>(clazz);
return jdbcTemplate.query(sql, beanPropertyRowMapper);
}
- 最终效果图
步骤
- 在maven的pom.xml文件中引入jar包
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
- 自定义的方法, sql参数前添加
@Language("sql")
public static <T> List<T> queryEntity(JdbcTemplate jdbcTemplate, @Language("sql") String sql, Class<T> clazz) {
BeanPropertyRowMapper<T> beanPropertyRowMapper = new BeanPropertyRowMapper<>(clazz);
return jdbcTemplate.query(sql, beanPropertyRowMapper);
}