<dependency> <groupId>org.jetbrains</groupId> <artifactId>annotations</artifactId> <version>13.0</version> <scope>provided</scope> </dependency>
然后在我们的java代码里定义变量时可用.
@Language("MySQL") String sql = "SELECT is_valid FROM t_employee_contract WHERE id=1";
这样就可以标识为sql变量的内容是mysql语法的sql. 同时还可以使用 jetbrain idea 的 inject language的编辑及提示功能. 这个会好用.
支持的语言有:(注意区分大小写)
HQL(hibernate hql)
JPAQL(JPA QL)
EQL (eclipselink QL)
EJBQL
HSQLDB
H2
GenericSQL
DB2
AspectJ
MySQL
Oracle
OracleSqlPlus
PostgreSQL
SQL
SQLite
SpEL (spring的表达式语言)
Sybase
TSQL
TypeScript
RegExp(正则表达式, 也可以用 @RegExp)
Groovy
JAVA
CoffeeScript
HTML
CSS
DTD
Cvs
JSON
JSRegexp (javascript正则表达式)
JavaScript
LESS
XHTML
XML
XPath
XPath2
ruby
yaml
SASS
SCSS
VTL (velocity表达式)
ANTLRv4
InjectedFreeMarker
Properties