🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
BaseService支持使用sql(String sql)方法直接传入sql字符串,然后执行sql语句。 ``` public void t12() { BaseService service = Application.getService(); service.sql("SQL语句"); List<HashMap<String, Object>> result = service.getResult(); Vardump.print(result); } ``` >[info] 复杂的查询如多表联查, union合并,可以使用BaseService的sql方法,当然也可以使用mybaits自带的xml注入mapper来实现。 > xml方法有个优点就是便于sql的统一管理,但是哥哥用经验告诉你,统一管理的想法实在是too young too simple sometimes native。mybatis可能为了提升访问速度,所有的mapper都是扫描到内存里面,而不是用的时候去读,导致的结果就是,我以前接手过一个大项目,光扫描mapper就要好几分钟,在本地上调试项目,内存瞬间爆到90%,然而,许多dao层里面的接口已经被删除了,IDE不能自动识别,导致xml里面的sql还留着,冗余废弃的sql语句一大堆,没人敢删,于是越累越多。 所以我个人不建议大型项目使用过多mapper,会非常吃内存。