首页 > 技术文章 > java.lang.reflect.InvocationTargetException: null(已解决)

zhulei2 2020-09-19 17:48 原文

如下图,错误一大堆,一脸懵逼,找了半天

 

 

 

 

 

 首先sql运行在SQLyog端查询没有任何问题,但在项目中mybatisPlus报错了。

主要还是mybatisPlus没有SQLyog那么智能,错误sql:

 

SELECT or.entity_id,or.orders_no,
           u.realname apply_realname,
           ord.total_count,
           ord.receive_count,or.apply_time,or.notice_time,
           or.finish_time,or.status,
           s.name stockroomName,
           (SELECT GROUP_CONCAT(depart_name) FROM sys_depart d, sys_user_depart ud
        WHERE u.entity_id=ud.user_id
        AND ud.dep_id=d.entity_id) depart_name,
           (SELECT u.realname
        FROM sys_depart sd,sys_user_depart sud
            WHERE sud.user_id=u.entity_id
            AND sd.entity_id=sud.dep_id
            AND sd.valid_flag = '1' AND sud.valid_flag = '1'
            AND u.depart_ids LIKE CONCAT('%',sd.entity_id,'%')) depart_admin_name
            FROM tm_orders_receipt `or`, sys_user u,
                tm_orders_receipt_detail ord, tm_stockroom s
        WHERE or.receipt_uid=u.entity_id
            AND ord.orders_id=or.entity_id
            AND s.entity_id = or.stockroom_id
            AND u.valid_flag='1'

 

我们在给表重命名上,我一般取首字母缩写,但如果缩写是关键字,如“or”,此时我们就需要加特殊符号处理`or`。

如果在SQLyog上面,查询此表字段,可以直接or.xxx,但是实际项目中需要加上特殊字符处理`or`.xxx。否则就会出现以上报错。

 

推荐阅读