增删改查功能怎么实现的(增删改查功能是什么)

增删改查功能怎么实现的(增删改查功能是什么)MyBatis 是一种持久层框架 它可以简化 Java 开发人员与 数据 库之间的交互 MyBatis 提供了一种将 SQL 语句与 Java 代码分离的方法 使得代码更加易于维护和升级 下面 我将 详细 介绍 MyBatis 如何 实现 数据 库的 增删改查 操作 首先 需要在项目中引入 MyBatis 的依赖 可以在 Maven 中添加以下依赖 xml dependency groupid org mybatis lt groupid dependency



MyBatis

是一种持久层框架,它可以简化 Java 开发人员与

数据

库之间的交互。

MyBatis

提供了一种将 SQL 语句与 Java 代码分离的方法,使得代码更加易于维护和升级。下面,我将

详细

介绍

MyBatis

如何

实现数据

库的

增删改查

操作。

首先,需要在项目中引入

MyBatis

的依赖。可以在 Maven 中添加以下依赖:

```xml

<dependency>

<groupId>org.

mybatis

</groupId>

<artifactId>

mybatis

</artifactId>

<version>3.5.6</version>

</dependency>

```

接下来,需要配置

MyBatis

的配置文件,这个配置文件包括了

数据

源、事务管理器、mapper 映射文件等信息。

MyBatis

的配置文件通常命名为 `

mybatis

-config.xml`,示例配置如下:

```xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE configuration PUBLIC "-//

mybatis

.org//DTD Config 3.0//EN"

"http://

mybatis

.org/dtd/

mybatis

-3-config.dtd">

<configuration>

<environments default="development">

<environment id="development">

<transactionManager type="JDBC" />

<dataSource type="POOLED">

<property name="driver" value="com.mysql.jdbc.Driver" />

<property name="url" value="jdbc:mysql://localhost:3306/test" />

<property name="username" value="root" />

<property name="password" value="123456" />

</dataSource>

</environment>

</environments>

<mappers>

<mapper resource="com/example/mapper/UserMapper.xml" />

</mappers>

</configuration>

```

上述配置中,定义了

数据

源的信息,包括

数据

库驱动、URL、用户名和密码。同时,还定义了一个 `UserMapper.xml` 文件,该文件用于映射 SQL 语句。

然后,就可以创建一个 mapper 接口,使用注解或 XML 文件映射 SQL 语句,示例代码如下:

```java

public interface UserMapper {

@Select("SELECT * FROM user WHERE id = #{id}")

User getUserById(int id);

@Insert("INSERT INTO user(name, age) VALUES(#{name}, #{age})")

@Options(useGeneratedKeys = true, keyProperty = "id")

int addUser(User user);

@Update("UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id}")

int updateUser(User user);

@Delete("DELETE FROM user WHERE id = #{id}")

int deleteUser(int id);

}

```

上述代码定义了一个 `UserMapper` 接口,其中使用了 `@Select`、`@Insert`、`@Update` 和 `@Delete` 四个注解,分别对应查询、插入、更新和删除操作。注解中的 SQL 语句可以直接写在注解中,也可以使用 XML 文件来映射 SQL 语句。

最后,在代码中使用 `SqlSessionFactory` 和 `SqlSession` 对象来执行 SQL 语句,示例代码如下:

```java

SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("

mybatis

-config.xml"));

SqlSession session = sessionFactory.openSession();

UserMapper userMapper = session.getMapper(UserMapper.class);

User user = new User();

user.setName("张三");

user.setAge(25);

userMapper.addUser(user);

session.commit();

User user2 = userMapper.getUserById(user.getId());

System.out.println(user2);

user.setName("李四");

user.setAge(30);

userMapper.updateUser(user);

session.commit();

userMapper.deleteUser(user.getId());

session.commit();

session.close();

```

上述代码中,首先创建了一个 `SqlSessionFactory` 对象,然后调用 `openSession()` 方法创建一个 `SqlSession` 对象。接着,通过 `session.getMapper(UserMapper.class)` 方法获取到一个 `UserMapper` 对象,然后就可以使用 `UserMapper` 接口中定义的方法执行 SQL 语句。

最后,需要调用 `session.commit()` 方法提交事务,并通过 `session.close()` 方法关闭 `SqlSession` 对象。

编程小号
上一篇 2024-12-03 12:30
下一篇 2025-03-06 15:21

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/33616.html