1.第一种方式:通过在实体类中添加字段
实体类
@Data
public class Person {
private String id;
/**
* 返回的字段
*/
@TableField(exist = false)
private Integer okFlag;
}
xml文件
<select id="test" resultType="java.lang.Integer" parameterType="entity.Person" statementType="CALLABLE">
{call test(#{id,mode=IN},#{okFlag,mode=OUT,jdbcType=INTEGER})}
</select>
Dao层
@Mapper
public class PersonDao extends baseMapper<Person>{
Integer test(Person person);
}
业务层获取返回值
Person person=new Person();
person.setId(1);
baseMapper.test(person);
person.getOkFlag();
第2种方式:通过HashMap
实体类
@Data
public class Person {
private String id;
}
xml文件
<select id="test" parameterType="java.util.HashMap" statementType="CALLABLE">
{call test(#{id,mode=IN},#{okFlag,mode=OUT,jdbcType=INTEGER})}
</select>
Dao层
@Mapper
public class PersonDao extends baseMapper<Person>{
Integer test(HashMap<String,Object> map);
}
业务层获取返回值
HashMap<String,Object> map=new HashMap<>();
map.put("id",1);
baseMapper.test(map);
(Integer)map.get("okFlag");