mybatis 实现数据的增删改查小demo
![preview](https://csdnimg.cn/release/downloadcmsfe/public/img/white-bg.ca8570fa.png)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使你更好地将关注点集中在使用 SQL 来获取数据上。在这个“mybatis 实现数据的增删改查小demo”中,我们将深入探讨如何使用 MyBatis 进行基本的数据库操作。 我们需要理解 MyBatis 的核心组件:SqlSessionFactory 和 SqlSession。SqlSessionFactory 是一个用于创建 SqlSession 的对象,而 SqlSession 是与数据库交互的会话,它提供了执行 SQL 语句和管理事务的方法。 1. **配置 MyBatis**: - 创建 MyBatis 的配置文件 `mybatis-config.xml`,其中包含数据库连接信息、映射文件的位置等。 - 创建 `pom.xml` 文件,添加 MyBatis 相关依赖。 2. **实体类(Entity)**: - 建立一个简单的实体类,例如 `User.java`,对应数据库中的表结构。 3. **Mapper 接口(Mapper Interface)**: - 定义一个接口,如 `UserMapper.java`,包含增删改查方法。每个方法都对应一个 SQL 语句。 4. **Mapper XML 文件(Mapper XML)**: - 创建与接口对应的 XML 文件,如 `UserMapper.xml`,在其中编写 SQL 语句并绑定到接口方法上。 5. **SqlSessionFactory 和 SqlSession**: - 使用 `SqlSessionFactoryBuilder` 创建 `SqlSessionFactory`。 - 通过 `SqlSessionFactory` 创建 `SqlSession` 实例,通过 `SqlSession` 执行 SQL 语句。 6. **增(Insert)**: - 在 `UserMapper.xml` 中定义插入用户的 SQL 语句,使用 `<insert>` 标签。 - 在 `UserMapper` 接口中定义对应的方法,并使用 `@Insert` 注解(如果使用注解方式)。 7. **删(Delete)**: - 定义删除用户的 SQL 语句,使用 `<delete>` 标签,参数可以通过 `${}` 或 `<bind>` 标签传递。 - 在接口中定义对应的方法。 8. **改(Update)**: - 编写更新用户信息的 SQL 语句,使用 `<update>` 标签。 - 接口中定义相应方法。 9. **查(Select)**: - 定义查询用户的 SQL 语句,可以是单条记录(使用 `<select>` 标签的 `resultType` 或 `resultMap`),也可以是多条记录(使用 `<select>` 标签的 `collection`)。 - 接口中定义对应的方法,返回类型为 List 或单个对象。 10. **事务管理**: - 在使用 SqlSession 的过程中,需要管理事务。通常,增删改操作需要在一个事务中进行,确保数据一致性。可以使用 `SqlSession.commit()` 提交事务,或在异常情况下回滚 `SqlSession.rollback()`。 11. **使用示例**: - 创建一个测试类,初始化 `SqlSessionFactory` 和 `SqlSession`,然后调用接口方法执行 SQL 操作。 - 记得在每次操作完成后关闭 `SqlSession`,以释放资源。 在这个小 demo 中,我们将体验到 MyBatis 的简洁和灵活性,通过编写 SQL 语句直接操作数据库,同时避免了手动处理 JDBC 代码的繁琐。虽然这个例子没有集成 Spring,但 MyBatis 可以无缝地与 Spring 结合,提供更高效和便捷的开发体验。在实际项目中,推荐使用 Spring Boot 结合 MyBatis,以便更好地管理数据库连接和事务。
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
- 1
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/e8210ba8da334bc6930224557ad01c56_u010746642.jpg!1)
- 粉丝: 1
- 资源: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)