当前位置:首页 > Java

java如何调用数据库

2026-03-04 02:53:27Java

使用JDBC连接数据库

JDBC(Java Database Connectivity)是Java提供的标准API,用于连接和操作数据库。需要加载数据库驱动,建立连接,执行SQL语句。

加载驱动类:

Class.forName("com.mysql.cj.jdbc.Driver");

建立连接:

String url = "jdbc:mysql://localhost:3306/database_name";
String username = "root";
String password = "password";
Connection connection = DriverManager.getConnection(url, username, password);

执行查询:

Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name");

关闭资源:

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

使用PreparedStatement防止SQL注入

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

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

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

常见的连接池有HikariCP、DBCP等。以HikariCP为例:

配置连接池:

HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/database_name");
config.setUsername("root");
config.setPassword("password");
HikariDataSource dataSource = new HikariDataSource(config);

获取连接:

Connection connection = dataSource.getConnection();

使用ORM框架简化操作

MyBatis和Hibernate是常用的ORM框架。MyBatis示例:

定义Mapper接口:

public interface UserMapper {
    @Select("SELECT * FROM users WHERE id = #{id}")
    User getUserById(int id);
}

使用SqlSession:

SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
try (SqlSession session = sqlSessionFactory.openSession()) {
    UserMapper mapper = session.getMapper(UserMapper.class);
    User user = mapper.getUserById(1);
}

使用Spring Data JPA

Spring Data JPA进一步简化数据库操作:

定义实体类:

@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private String name;
    private Integer age;
}

定义Repository接口:

public interface UserRepository extends JpaRepository<User, Long> {
    List<User> findByName(String name);
}

自动实现CRUD操作:

java如何调用数据库

userRepository.save(new User("Alice", 25));
List<User> users = userRepository.findByName("Alice");

标签: 数据库java
分享给朋友:

相关文章

java如何输入

java如何输入

使用Scanner类进行输入 Scanner类是Java中最常用的输入工具,适用于从控制台或文件读取数据。需要导入java.util.Scanner包。 基本语法: Scanner sca…

如何学习java

如何学习java

学习Java的步骤 理解基础知识 从Java的基本语法开始,包括变量、数据类型、运算符、控制流(if-else、循环)等。掌握这些基础概念是后续学习的基石。 学习面向对象编程(OOP) Java是一…

如何自学java

如何自学java

选择合适的学习资源 从官方文档开始,Oracle提供的Java官方教程(Java Tutorials)是权威且免费的学习资料。在线平台如Codecademy、Coursera或Udemy提供互动式课程…

如何安装java环境

如何安装java环境

下载JDK安装包 访问Oracle官方网站或OpenJDK项目页面,选择适合操作系统的JDK版本(如Windows、macOS或Linux)。确保下载与系统架构匹配的版本(32位或64位)。 运行安…

java前景如何

java前景如何

Java 当前的市场需求 Java 在企业级开发、大数据、云计算等领域仍占据重要地位。许多大型企业(如银行、电商平台)依赖 Java 构建后端系统。招聘平台数据显示,Java 开发岗位数量稳定,尤其在…

java中如何获取当前时间

java中如何获取当前时间

获取当前时间的几种方法 使用 java.time 包(Java 8及以上推荐) import java.time.LocalDateTime; LocalDateTime currentTime =…