2. Mybatis案例(查询)

案例1:两个以上sql 参数

数据库:
drop database if exists mybatisdemo;
create  database mybatisdemo;
use mybatisdemo;
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id`         int(11) NOT NULL AUTO_INCREMENT,
  `username`  varchar(32) NOT NULL COMMENT '用户名称',
  `birthday`  date DEFAULT NULL COMMENT '生日',
  `sex`       char(1) DEFAULT NULL COMMENT '性别',
  `address`   varchar(256) DEFAULT NULL COMMENT '地址',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8;
INSERT INTO `user` VALUES ('1', '张三', '2018-07-10', '1', '北京');
INSERT INTO `user` VALUES ('2', '李四', '2018-07-10', '0', '上海');
INSERT INTO `user` VALUES ('3', '王五', '2018-07-10', '1', '广州');
INSERT INTO `user` VALUES ('4', '王六', '2018-07-10', '1', '深圳');
INSERT INTO `user` VALUES ('5', '王八', '2018-07-10', '1', '上海');

create table employee(
	id varchar(255) primary key,
	name varchar(255)
)

场景: 查在上海的女人

select * from user whrere sex = ? and address = ?

1. 通过Map 的方式

  • Mapper 接口方法
List<User> selectUserByAddrAndSexA(Map<String,Object> map);
  • Mapper 映射文件
<select id="selectUserByAddrAndSexA" parameterType="map" resultMap="userMap">
        select * from user where sex = #{sex} and address = #{address}
 </select>
  • 测试代码
   Map<String,Object> map = new HashMap<>();
   map.put("sex",0);
   map.put("address","上海");
   List<User> userList = userMapper.selectUserByAddrAndSexA(map);

2. 通过java Bean 的方式

  • Mapper 接口方法
List<User> selectUserByAddrAndSexB(User user);
  • Mapper 映射文件
<select id="selectUserBy

相关推荐

  1. 2. Mybatis案例查询

    2023-12-31 18:16:01       64 阅读
  2. MyBatis之关联查询

    2023-12-31 18:16:01       52 阅读
  3. Mybatis多表查询

    2023-12-31 18:16:01       56 阅读
  4. MyBatis 流式查询

    2023-12-31 18:16:01       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-31 18:16:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-31 18:16:01       101 阅读
  3. 在Django里面运行非项目文件

    2023-12-31 18:16:01       82 阅读
  4. Python语言-面向对象

    2023-12-31 18:16:01       91 阅读

热门阅读

  1. Git 命令拉取分支、忽略已经提交的文件

    2023-12-31 18:16:01       58 阅读
  2. img 跨域 和 缓存

    2023-12-31 18:16:01       60 阅读
  3. 39. 组合总和

    2023-12-31 18:16:01       47 阅读
  4. pyqt的qlabel样式调整办法

    2023-12-31 18:16:01       58 阅读
  5. CJ系列D-Net使用手册

    2023-12-31 18:16:01       50 阅读
  6. VIM8 文本实战学习

    2023-12-31 18:16:01       52 阅读