首页 综合百科文章正文

java从数据库读取数据的代码有哪些类型

综合百科 2025年11月21日 16:30 254 admin

Java从数据库读取数据:代码类型与实践

JDBC(Java Database Connectivity)

JDBC是Java连接数据库的标准API,它提供了一组类和接口,允许Java应用程序与各种数据库进行交互,通过使用JDBC,开发人员可以执行SQL查询、更新数据库中的数据以及处理结果集。

示例代码

以下是一个使用JDBC从数据库中读取数据的简单示例:

java从数据库读取数据的代码有哪些类型

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class JdbcExample {
    public static void main(String[] args) {
        Connection connection = null;
        Statement statement = null;
        ResultSet resultSet = null;
        try {
            // 加载数据库驱动程序
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 建立连接
            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/yourdatabase", "username", "password");
            // 创建语句对象
            statement = connection.createStatement();
            // 执行查询
            resultSet = statement.executeQuery("SELECT * FROM yourtable");
            // 处理结果集
            while (resultSet.next()) {
                System.out.println("Column1: " + resultSet.getString("column1"));
                System.out.println("Column2: " + resultSet.getInt("column2"));
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 关闭资源
            try { if (resultSet != null) resultSet.close(); } catch (Exception e) {}
            try { if (statement != null) statement.close(); } catch (Exception e) {}
            try { if (connection != null) connection.close(); } catch (Exception e) {}
        }
    }
}

ORM框架(如Hibernate)

ORM(Object-Relational Mapping)框架将Java对象映射到数据库表,简化了数据库操作,Hibernate是一个流行的ORM框架,它提供了高级的查询语言(HQL)和原生SQL支持。

示例代码

以下是一个使用Hibernate从数据库中读取数据的示例:

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import java.util.List;
public class HibernateExample {
    public static void main(String[] args) {
        // 配置Hibernate
        Configuration configuration = new Configuration().configure();
        // 创建SessionFactory
        org.hibernate.SessionFactory sessionFactory = configuration.buildSessionFactory();
        // 打开Session
        Session session = sessionFactory.openSession();
        Transaction transaction = null;
        try {
            // 开始事务
            transaction = session.beginTransaction();
            // 创建Criteria查询
            org.hibernate.critierion.Criteria criteria = session.createCriteria(YourEntity.class);
            List<YourEntity> results = criteria.list();
            // 处理结果集
            for (YourEntity entity : results) {
                System.out.println("Column1: " + entity.getColumn1());
                System.out.println("Column2: " + entity.getColumn2());
            }
            // 提交事务
            transaction.commit();
        } catch (Exception e) {
            if (transaction != null) transaction.rollback();
            e.printStackTrace();
        } finally {
            // 关闭Session
            session.close();
            // 关闭SessionFactory
            sessionFactory.close();
        }
    }
}

JPA(Java Persistence API)

JPA是一种规范,定义了Java持久层的标准化API,它提供了声明性的方式来管理实体、关系和事务,JPA可以通过不同的实现来与数据库交互,如Hibernate、EclipseLink等。

java从数据库读取数据的代码有哪些类型

示例代码

以下是一个使用JPA从数据库中读取数据的示例:

import javax.persistence.*;
import java.util.List;
public class JpaExample {
    public static void main(String[] args) {
        // 配置EntityManagerFactory
        EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("yourPU");
        // 创建EntityManager
        EntityManager entityManager = entityManagerFactory.createEntityManager();
        // 开始事务
        entityManager.getTransaction().begin();
        // 查询所有实体
        List<YourEntity> results = entityManager.createQuery("SELECT e FROM YourEntity e", YourEntity.class).getResultList();
        // 处理结果集
        for (YourEntity entity : results) {
            System.out.println("Column1: " + entity.getColumn1());
            System.out.println("Column2: " + entity.getColumn2());
        }
        // 提交事务
        entityManager.getTransaction().commit();
        // 关闭EntityManager和EntityManagerFactory
        entityManager.close();
        entityManagerFactory.close();
    }
}

标签: 数据库连接

丫丫技术百科 备案号:新ICP备2024010732号-62 网站地图