潍坊网页模板建站,韶关手机网站建站,珠海网站建设兼职,c 做的博客网站MyBatis 增删改查 引言
MyBatis 是一个优秀的持久层框架#xff0c;它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射#xff0c;将接口和 Java 的 POJOs (…MyBatis 增删改查 引言
MyBatis 是一个优秀的持久层框架它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射将接口和 Java 的 POJOs (Plain Old Java Objects, 普通的 Java 对象)映射成数据库中的记录。
在本博客中我们将通过一系列示例来介绍如何使用 MyBatis 框架结合 MySQL 数据库进行基本的增删改查CRUD操作。
环境准备 安装 MySQL确保你已经在你的机器上安装了 MySQL并创建了一个数据库例如 mybatis_demo以及一个表例如 user。 添加 MyBatis 依赖如果你使用 Maven 构建项目可以在 pom.xml 中添加 MyBatis 和 MySQL JDBC 驱动的依赖。 dependencies dependency groupIdorg.mybatis/groupId artifactIdmybatis/artifactId version3.5.6/version /dependency dependency groupIdmysql/groupId artifactIdmysql-connector-java/artifactId version8.0.23/version /dependency
/dependencies配置 MyBatis在 src/main/resources 目录下创建 mybatis-config.xml 文件配置数据库连接信息和 MyBatis 的相关设置。 ?xml version1.0 encodingUTF-8 ?
!DOCTYPE configuration PUBLIC -//mybatis.org//DTD Config 3.0//EN http://mybatis.org/dtd/mybatis-3-config.dtd
configuration environments defaultdevelopment environment iddevelopment transactionManager typeJDBC/ dataSource typePOOLED property namedriver valuecom.mysql.cj.jdbc.Driver/ property nameurl valuejdbc:mysql://localhost:3306/mybatis_demo?serverTimezoneUTC/ property nameusername valueroot/ property namepassword valuepassword/ /dataSource /environment /environments mappers mapper resourceorg/mybatis/example/UserMapper.xml/ /mappers
/configuration创建 User 实体类
在 Java 项目中创建一个简单的 User 实体类来映射数据库中的 user 表。
public class User { private Integer id; private String name; private Integer age; // 省略构造方法、getter 和 setter
}编写 Mapper 接口和 XML 创建 Mapper 接口定义 User 的操作方法。 public interface UserMapper { User selectUserById(Integer id); int insertUser(User user); int updateUser(User user); int deleteUser(Integer id);
}编写 Mapper XML在 src/main/resources 目录下创建 UserMapper.xml编写 SQL 语句。 !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespaceorg.mybatis.example.UserMapper select idselectUserById resultTypeorg.mybatis.example.User SELECT id, name, age FROM user WHERE id #{id} /select insert idinsertUser parameterTypeorg.mybatis.example.User INSERT INTO user (name, age) VALUES (#{name}, #{age}) /insert update idupdateUser parameterTypeorg.mybatis.example.User UPDATE user SET name #{name}, age #{age} WHERE id #{id} /update delete iddeleteUser parameterTypeint DELETE FROM user WHERE id #{id} /delete
/mapper使用 MyBatis 进行 CRUD 操作
在 Java 代码中你可以通过 MyBatis 的 SqlSession 来执行 Mapper 接口中定义的方法。
try (SqlSession session sqlSessionFactory.openSession()) { UserMapper mapper session.getMapper(UserMapper.class); // 查询 User user mapper.selectUserById(1); System.out.println(user); // 插入 User newUser new User(); newUser.setName(New User); newUser.setAge(30); mapper.insertUser(newUser); session.commit(); // 不要忘记提交事务 // 更新 newUser.setName(Updated User); mapper.updateUser(newUser); session.commit(); // 删除 mapper.deleteUser(newUser.getId()); session.commit();
}总结
以上示例展示了如何使用 MyBatis 框架结合 MySQL 数据库进行基本的增删改查操作。通过定义 Mapper 接口和 XML 映射文件MyBatis 使得数据库操作变得简洁而高效。在实际项目中可以根据需要扩展 Mapper 接口和 XML 文件实现更复杂的业务逻辑。