这种情况可能是因为在设置数据库的时候,没有配置数据库的方言,导致sql语句无法被识别。
例如在配置Jfinal的配置文件的时候
如果不配置数据库的方言,默认下它是MySQL的,当使用oracle数据库的时候,就会抛出异常:
java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符
同理在使用Jfinal的Generator的时候,不配置数据的方言也会出现该异常,如下图
总结:排除了自己的sql语言的错误的同时,如果出现
java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符的异常
很可能就是数据库方言配置错误,或者根本就没有配置。