mybatis 插入实体类
时间: 2024-12-19 20:04:56 浏览: 4
在MyBatis中,插入实体类的操作通常通过Mapper接口和XML映射文件来实现。以下是一个简单的示例,展示了如何在MyBatis中插入一个实体类。
首先,定义一个实体类:
```java
public class User {
private Integer id;
private String name;
private String email;
// Getters and Setters
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
```
接下来,定义一个Mapper接口:
```java
public interface UserMapper {
int insertUser(User user);
}
```
然后,配置对应的XML映射文件(UserMapper.xml):
```xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mapper.UserMapper">
<insert id="insertUser" parameterType="com.example.model.User" useGeneratedKeys="true" keyProperty="id">
INSERT INTO users (name, email) VALUES (#{name}, #{email})
</insert>
</mapper>
```
在这个示例中,`insertUser`方法用于插入一个`User`实体类到数据库中。`useGeneratedKeys="true"`和`keyProperty="id"`用于自动获取插入后的主键。
最后,在你的应用程序中使用这个Mapper:
```java
public class MyBatisExample {
public static void main(String[] args) {
SqlSession session = MyBatisUtil.getSqlSessionFactory().openSession();
try {
UserMapper mapper = session.getMapper(UserMapper.class);
User newUser = new User();
newUser.setName("John Doe");
newUser.setEmail("john.doe@example.com");
int result = mapper.insertUser(newUser);
session.commit();
System.out.println("Inserted User ID: " + newUser.getId());
} finally {
session.close();
}
}
}
```
在这个示例中,我们创建了一个新的`User`对象,并调用`insertUser`方法将其插入到数据库中。插入成功后,我们打印出新插入用户的ID。
阅读全文