MyBatis的学习记录
MyBatis
什么是MyBatis?
- MyBatis是一款优秀的持久层框架,用于简化JDBC开发
- MyBatis本是Apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并改名为MyBatis。2013年11月迁移至Github
- 官网
持久层
- 负责将数据保存到数据库的那一层代码
- JavaEE三层架构:表现层、业务层、持久层
框架
- 框架就是一个半成品软件,是一套可重用的、通用的、软件基础代码模型
- 在框架的基础上构建软件编写更加高效、规范、通用、可扩展
JDBC缺点
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql:///db1?useSSL = false"; String uname = "root"; String pwd = "1234"; Connection conn = DriverManager.getConnection(url, uname, pwd);
String gender = "男";
String sql = "select * from tb_user where gender = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, gender);
ResultSet rs = pstmt.executeQuery();
User user = null; ArrayList<User> users = new ArrayList<>(); while (rs.next()){ int id = rs.getlnt("id"); String username = rs.getString("username"); String password = rs.getString("password"); user = new User(); user.setId(id); user.setUsername(username); user.setPassword(password); user.setGender(gender); users.add(user); }
|
硬编码(将未来可能变化的字符串信息写到代码里面)
操作繁琐
MyBatis简化
- 硬编码写到配置文件中
- 繁琐的操作自动完成
MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作
目录
- MyBatis快速入门
- Mapper代理开发
- MyBatis核心配置文件
- 配置文件完成增删改查
- 注解完成增删改查
- 动态SQL
MyBatis快速入门
查询user表中所有数据
- 创建user表,添加数据
- 创建模块,导入坐标
- 编写MyBatis核心配置文件 –> 替换连接信息 解决硬编码问题
- 编写SQL映射文件 –> 统一管理sql语句,解决硬编码问题
- 编码
创建user表,添加数据
打开NaviCat,创建一个如下所示的表

并填入测试信息

在idea中新建Maven模块mybatis-demo