Example函数使用
1.业务中想要的SQL语句如下:
SELECT
worker_id,
worker_code,
worker_name,
worker_phone,
worker_card_num,
worker_photo,
worker_role_state,
gu_id
FROM
all_staff_workers
WHERE
( ( is_enabled = ? and is_deleted = ? and sys_id = ? and (worker_card_num = ? or worker_phone = ? )and all_staff_worker_id <> ? ) )
下面直接上代码:
Example example = new Example(AllStaffWorkers.class);
Example.Criteria criteria1 = example.createCriteria();
criteria1.orEqualTo("workerCardNum",workerCardNum).orEqualTo("workerPhone",workerPhone);
Example exe = new Example(AllStaffWorkers.class); //表示实例化同时传递了一个对象给构造方法, 这个对象是一个Class对象
Example.Criteria criteria = exe.createCriteria();
criteria.andEqualTo("isEnabled", CmnConstants.IS_ENABLED_YES); //是否有效:1、有效;2、无效
criteria.andEqualTo("isDeleted", CmnConstants.IS_DELETED_NO); //是否删除:1、未删除;2、已删除
criteria.andEqualTo("sysId", workers.getSysId());
criteria.andNotEqualTo("allStaffWorkerId",workers.getAllStaffWorkerId());
exe.and(criteria1);
List<AllStaffWorkers> workList = this.allStaffWorkersMapper.selectByExample(exe);
这样子问题就解决了!