Mybatis 增删改查等操作的返回值 |
您所在的位置:网站首页 › 返回修改材料是什么意思 › Mybatis 增删改查等操作的返回值 |
Mybatis 增删改查等操作的返回值
之前一篇文章 mybatis 传递参数的7种方法 讲了mybatis中传递入参的7中方式,这节讲下增删改查等操作的返回值都代表什么意思,以及怎么使用这些返回值 1.更新 updateupdate: 返回值为匹配数据库的条数(不论最终是否对数据进行了修改,只要某条记录符合匹配条件,返回值就加1) 2.插入 insertinsert:如果成功返回值为插入数据库的条数,失败返回的是exception,所以需要对异常进行处理 public int insertDept(Department department) { try{ return departmentMapper.insertAutoId(department); }catch (Exception e ) { return -1; } } @ApiOperation(value = "新增部门") @PostMapping("new") public ResultMsg newDepartment(@RequestBody Department department) { department.setId(idWorker.nextId()); int result = departmentService.insertDept(department); return ResultMsg.getStrMsg(result > 0 ? "SUCCESS" : "FAILED"); } 3.删除 deletedelete:返回值为删除的数据条数 4. 查询 select四种基本操作中,以查询操作的返回值最为多样化 Mybatis中,通过resultType或resultMap指定返回值 3.1返回一般数据类型即返回Java基本的数据类型,如String Long int mapper String getDeptName(Long id);xml select dept_name from department where id = #{id,jdbcType=BIGINT} 3.2返回javaBean类型也可直接返回实体类,resultType指定实体类的路径 mapper Department getDeptById(Long id);xml select * from department where id = #{id,jdbcType=BIGINT}当实体类字段与数据库字段不一致时,可以使用resultMap select * from department where id = #{id,jdbcType=BIGINT}resultType方式:当使用resulType做返回结果处理时,SQL所查询的字段必须与相应的pojo中的字段相对应;因此对于单表查询用resultType是最合适的。 resultMap方式:当javabean和数据库表字段不一致时,可使用resultMap指定返回结果类型;一个Mapper文件可定义多个resultMap 在一个查询中,resultType跟resultMap不能同时存在 3.3返回List类型当返回数据有多条时,可通过List方式返回 mapper List selectAll();xml select * from department 3.4 返回Map类型该类型返回值可分为两种方式: 1.返回单条数据,map对应表中字段 Map getDeptAsMap(Long id); select * from department where id = #{id,jdbcType=BIGINT}2.返回多条数据 以Map形式返回多条数据,map中每一条记录对应一条查询记录,(该方式与List返回值类似,不过是数据的组织方式不同而已),这里需要指定使用哪个属性作为Map主键 mapper @MapKey("id") //指定Map的主键为返回结果的id Map getDeptAsMaps();xml select * from department 3.5返回JSONObject以JSONObject的形式返回查询结果,多用于查询结果列数不定的情况(就是说查询结果是动态的) controller @ApiOperation(value = "返回JSONObject") @PostMapping("findJSONObject") public ResultMsg findJSONObject( ) { return ResultMsg.getMsg(employeeMapper.findJSONResult()); }mapper JSONArray findJSONResult();xml SELECT * from employee 总结:好了至此,mybatis中增删改查请求参数的方式,以及返回结果各种形式及含义就算是讲完了,弄懂了这些,在平时开发中我们就可以在做增删改查操作时,从容的选择入参和出参。 下节我讲下Mybatis中如何实现一对一和一对多的查询操作 一对一查询 assocation 一对多查询collection |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |