当前位置:首页 > Java

java如何使用数据库

2026-03-17 19:35:16Java

使用JDBC连接数据库

JDBC(Java Database Connectivity)是Java连接数据库的标准API。以下是使用JDBC连接MySQL数据库的步骤:

  1. 添加JDBC驱动依赖 在Maven项目中,添加MySQL驱动依赖:

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.28</version>
    </dependency>
  2. 加载驱动并建立连接

    Class.forName("com.mysql.cj.jdbc.Driver");
    String url = "jdbc:mysql://localhost:3306/mydb";
    String username = "root";
    String password = "password";
    Connection connection = DriverManager.getConnection(url, username, password);
  3. 执行SQL查询

    Statement statement = connection.createStatement();
    ResultSet resultSet = statement.executeQuery("SELECT * FROM users");
    while (resultSet.next()) {
        String name = resultSet.getString("name");
        System.out.println(name);
    }
  4. 关闭资源

    resultSet.close();
    statement.close();
    connection.close();

使用PreparedStatement防止SQL注入

PreparedStatement可以预编译SQL语句,提高安全性:

String sql = "INSERT INTO users (name, age) VALUES (?, ?)";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, "Alice");
preparedStatement.setInt(2, 25);
preparedStatement.executeUpdate();

使用连接池管理数据库连接

常见的连接池如HikariCP,可以优化连接管理:

  1. 添加HikariCP依赖

    <dependency>
        <groupId>com.zaxxer</groupId>
        <artifactId>HikariCP</artifactId>
        <version>5.0.1</version>
    </dependency>
  2. 配置连接池

    HikariConfig config = new HikariConfig();
    config.setJdbcUrl("jdbc:mysql://localhost:3306/mydb");
    config.setUsername("root");
    config.setPassword("password");
    HikariDataSource dataSource = new HikariDataSource(config);
  3. 从连接池获取连接

    try (Connection connection = dataSource.getConnection()) {
        // 执行数据库操作
    }

使用ORM框架简化操作

JPA和Hibernate是常用的ORM框架:

  1. 添加JPA依赖

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.6.5.Final</version>
    </dependency>
  2. 定义实体类

    @Entity
    @Table(name = "users")
    public class User {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
        private String name;
        private int age;
        // getters and setters
    }
  3. 使用EntityManager操作数据库

    EntityManagerFactory emf = Persistence.createEntityManagerFactory("my-pu");
    EntityManager em = emf.createEntityManager();
    em.getTransaction().begin();
    User user = new User();
    user.setName("Bob");
    user.setAge(30);
    em.persist(user);
    em.getTransaction().commit();
    em.close();

使用Spring Data JPA进一步简化

在Spring Boot项目中:

  1. 添加Spring Data JPA依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
  2. 定义Repository接口

    public interface UserRepository extends JpaRepository<User, Long> {
        List<User> findByName(String name);
    }
  3. 自动注入使用

    @Autowired
    private UserRepository userRepository;
    
    public void saveUser(User user) {
        userRepository.save(user);
    }

事务管理

使用@Transactional注解管理事务:

java如何使用数据库

@Transactional
public void transferMoney(Long fromId, Long toId, BigDecimal amount) {
    User fromUser = userRepository.findById(fromId).orElseThrow();
    User toUser = userRepository.findById(toId).orElseThrow();
    fromUser.setBalance(fromUser.getBalance().subtract(amount));
    toUser.setBalance(toUser.getBalance().add(amount));
    userRepository.save(fromUser);
    userRepository.save(toUser);
}

分享给朋友:

相关文章

react moment如何使用

react moment如何使用

安装 react-moment 通过 npm 或 yarn 安装 react-moment: npm install react-moment 或 yarn add react-moment 基本…

java如何使用

java如何使用

Java 基本使用方法 Java 是一种广泛使用的编程语言,适用于开发各种类型的应用程序。以下是 Java 的基本使用方法,包括环境配置、语法基础和常用操作。 安装 Java 开发环境 下载并安装…

如何使用java

如何使用java

安装Java开发环境 下载并安装Java Development Kit(JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME指向JDK安装路径…

react如何使用函数

react如何使用函数

使用函数组件的基本语法 在React中,函数组件是通过JavaScript函数定义的组件。函数接收props作为参数,并返回React元素。 function Welcome(props) {…

react thunk 如何使用

react thunk 如何使用

使用 React Thunk 的基本步骤 安装 Redux 和 Redux Thunk 作为依赖项: npm install redux redux-thunk 在 Redux store 配置中应…

react如何使用link

react如何使用link

使用 Link 组件进行页面导航 在 React 中,Link 是 react-router-dom 提供的组件,用于在单页应用(SPA)中实现客户端路由导航,避免页面刷新。 安装 react-…