Mybatis中select返回类型 您所在的位置:网站首页 mybatis查询返回值 Mybatis中select返回类型

Mybatis中select返回类型

2023-12-27 02:24| 来源: 网络整理| 查看: 265

Mybatis中select返回类型 单一数据 ,数值类型,字符类型(字符串) ,布尔类型等等返回一个对象(pojo ,vo等)返回一个集合(类型都是List 集合)

1 select可以返回单一 一个值:

// 单一数据用resultType属性 属性值用包装类写全称路径 ,尽量代码规范 SELECT max(t.count_sum) as max_count FROM ( SELECT count(1) AS count_sum FROM xxoperation_class_course_line xccl, xxoperation_class_header xch, xxoperation_stu_choose_course xscc WHERE xccl.CLASS_HEADER_ID = xch.CLASS_HEADER_ID AND xscc.CLASS_ID = xch.CLASS_HEADER_ID AND xscc.STUDENT_ID = #{studentId} AND xscc.CLASS_ID = #{classId} GROUP BY xccl.COURSE_ID ) t Long validateChooseMore(StuChooseCourse stuChooseCourse);

2 返回一个对象(vo ,pojo):

SELECT houb.UNIT_ID AS unitId, houb.PARENT_ID AS parentId, houb.UNIT_CODE AS unitCode, houb.NAME AS name, houb.UNIT_TYPE AS unitType FROM hr_org_unit_b houb WHERE houb.UNIT_ID = #{parentId} HrOrgUnit findParentOrgUnitByCode(Long parentId);

3 返回一个集合(类型都是List 集合) resultType 自动匹配对应的值

//resultType 自动映射 SELECT he.EMPLOYEE_ID AS employeeId, he.EMPLOYEE_CODE AS employeeCode, he.NAME AS name, he.BORN_DATE AS bornDate, he.EMAIL AS email, he.MOBIL AS mobil, he.JOIN_DATE AS joinDate, he.GENDER AS gender, he.CERTIFICATE_ID AS certificateId, he.STATUS AS status, he.ATTRIBUTE3, he.ATTRIBUTE4 FROM hr_employee he, hr_employee_assign hea, hr_org_position_b hop LEFT JOIN xxmd_per_jobs xpj ON xpj.JOB_ID = hop.ATTRIBUTE1 where hea.EMPLOYEE_ID = he.EMPLOYEE_ID AND hea.PRIMARY_POSITION_FLAG = 'Y' AND hea.ENABLED_FLAG = 'Y' List findAppropriateEmployees(List list, Long classHeaderId);

自定义返回类型 resultMap属性值

SELECT xcc.*, xpj.JOB_NAME AS position_name, xmh.COURSE_NAME as pre_course_name, (SELECT scvb.TAG FROM sys_code_b scb,sys_code_value_b scvb WHERE scb.CODE = 'XXCOURSE_ENTRY_TERM'AND scb.CODE_ID = scvb.CODE_ID AND scvb.VALUE = xcc.ENTRY_TERM) AS ENTRY_TERM_DESC FROM xxoperation_class_condition xcc LEFT JOIN xxmd_per_jobs xpj ON xcc.POSITION_ID = xpj.JOB_ID LEFT JOIN xxcourse_management_header xmh on xmh.COURSE_ID = xcc.PRE_COURSE_ID xcc.CLASS_HEADER_ID = #{classHeaderId} List findConditionsInfo(ClassCondition dto);

至于 insert ,delete update 返回的都是数值类型 () insert 插入成功后 返回成功的数目 ,否则为-1 delete 删除成功后 返回成功的数目 ,否则为-1 update 删更改成功后 返回成功的数目 ,否则为-1

DELETE FROM xxoperation_class_condition WHERE CLASS_HEADER_ID = #{classHeaderId} Integer deleteByClassHeaderId(Long classHeaderId); update SET CLASS_HEADER_NAME=#{classHeaderName} FROM xxoperation_class_condition WHERE CLASS_HEADER_ID = #{classHeaderId} Integer updateByClassHeaderId(Long classHeaderId); ```java insert into xxoperation_class_condition(CLASS_HEADER_ID,CLASS_HEADER_NAME) values ( #{classHeaderId}, #{classHeaderName}) Integer saveClassHeaderId(Long classHeaderId);


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有