当前位置:首页 > Java

java如何增删改查

2026-03-18 22:37:23Java

增删改查操作示例

在Java中,增删改查(CRUD)操作通常涉及数据库交互,以下以JDBC和MyBatis为例说明实现方式。

JDBC实现

数据库连接配置

String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);

增加数据(Create)

String sql = "INSERT INTO users(name, age) VALUES(?, ?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "张三");
pstmt.setInt(2, 25);
pstmt.executeUpdate();

删除数据(Delete)

String sql = "DELETE FROM users WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 1);
pstmt.executeUpdate();

修改数据(Update)

java如何增删改查

String sql = "UPDATE users SET name = ? WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "李四");
pstmt.setInt(2, 2);
pstmt.executeUpdate();

查询数据(Read)

String sql = "SELECT * FROM users";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
    System.out.println(rs.getInt("id") + " " + rs.getString("name"));
}

MyBatis实现

Mapper接口定义

public interface UserMapper {
    void insert(User user);
    void deleteById(int id);
    void update(User user);
    User selectById(int id);
}

XML映射文件

java如何增删改查

<!-- 插入 -->
<insert id="insert" parameterType="User">
    INSERT INTO users(name, age) VALUES(#{name}, #{age})
</insert>

<!-- 删除 -->
<delete id="deleteById">
    DELETE FROM users WHERE id = #{id}
</delete>

<!-- 更新 -->
<update id="update" parameterType="User">
    UPDATE users SET name=#{name} WHERE id=#{id}
</update>

<!-- 查询 -->
<select id="selectById" resultType="User">
    SELECT * FROM users WHERE id = #{id}
</select>

Spring Data JPA实现

实体类定义

@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue
    private Integer id;
    private String name;
    private Integer age;
    // getters/setters
}

Repository接口

public interface UserRepository extends JpaRepository<User, Integer> {
}

服务层调用

// 保存
userRepository.save(new User("王五", 30));

// 删除
userRepository.deleteById(1);

// 更新
User user = userRepository.findById(2).get();
user.setName("赵六");
userRepository.save(user);

// 查询
List<User> users = userRepository.findAll();

注意事项

  • JDBC需要手动管理连接资源,推荐使用try-with-resources
  • MyBatis需确保SQL映射文件与接口匹配
  • JPA方法命名需遵循规范,如findByName会自动生成对应查询
  • 所有数据库操作都应处理可能的SQLException
  • 生产环境建议使用连接池(如HikariCP)管理数据库连接

标签: java
分享给朋友:

相关文章

java如何输入数据

java如何输入数据

输入数据的方法 在Java中,输入数据可以通过多种方式实现,具体取决于输入来源(如控制台、文件、网络等)。以下是几种常见的方法: 使用Scanner类从控制台输入 Scanner类是Java中最常用…

java如何生成随机数

java如何生成随机数

生成随机数的方法 在Java中生成随机数可以通过多种方式实现,以下是几种常见的方法: 使用Math.random()方法 Math.random()方法返回一个double类型的伪随机数,范围在[0…

如何启用java

如何启用java

启用 Java 的方法 检查 Java 是否已安装 在命令行或终端输入 java -version,如果显示版本信息,说明 Java 已安装。若未安装,需从 Oracle 官网 或 OpenJDK 下…

java如何取绝对值

java如何取绝对值

取绝对值的方法 在Java中,取绝对值可以通过以下几种方式实现: 使用Math.abs()方法 Math.abs()是Java中最常用的取绝对值方法,适用于多种数据类型: int absolute…

react如何与java配合

react如何与java配合

React 与 Java 配合的常见方式 React 作为前端框架,通常与 Java 后端通过 RESTful API 或 GraphQL 进行交互。以下是几种常见的配合方式: RESTful AP…

php 实现java md5加密

php 实现java md5加密

PHP 实现 Java MD5 加密的兼容方法 Java 和 PHP 的 MD5 加密结果可能存在差异,主要因字符编码或输出格式不同。以下是确保两者结果一致的方法: 使用 hash 函数并处理编码…