21xrx.com
2024-11-22 09:28:48 Friday
登录
文章检索 我的文章 写文章
Java数据库连接方式与代码实现
2023-06-10 13:03:13 深夜i     --     --
Java 数据库连接 代码示例

作为一名Java程序员,连接数据库是我经常需要做的事情之一。在这里我将分享一些Java连接数据库的方法以及代码例子。

1. 使用JDBC连接数据库

Java中最常用的数据库连接方式是JDBC,它是Java数据库连接的标准。下面是一个使用JDBC连接MySQL数据库的例子:


try{

  // 加载 JDBC 驱动

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

  // 建立数据库连接

  Connection conn = DriverManager.getConnection(

    "jdbc:mysql://localhost:3306/test",

    "root",

    "password"

  );

  // 执行 SQL 语句

  Statement stmt = conn.createStatement();

  ResultSet rs = stmt.executeQuery("SELECT * FROM user");

  // 处理结果集

  while(rs.next()){

    System.out.println(rs.getString("name"));

  }

  // 关闭连接

  rs.close();

  stmt.close();

  conn.close();

} catch (ClassNotFoundException e) {

  e.printStackTrace();

} catch (SQLException e) {

  e.printStackTrace();

}

2. 使用ORM框架连接数据库

除了JDBC外,还有一种比较常用的连接数据库方式就是使用ORM框架。ORM框架可以将Java对象映射到数据库中的表格,省去了一些繁琐的SQL操作。下面是使用Hibernate连接MySQL数据库的例子:


try{

  // 创建 SessionFactory

  SessionFactory sessionFactory = new Configuration()

    .configure()

    .buildSessionFactory();

  // 开启 Session

  Session session = sessionFactory.getCurrentSession();

  session.beginTransaction();

  // 执行 HQL 语句

  List userList = session.createQuery("FROM User").list();

  for(User user : userList){

    System.out.println(user.getName());

  }

  // 提交事务

  session.getTransaction().commit();

  // 关闭 SessionFactory

  sessionFactory.close();

}catch(Exception e){

  e.printStackTrace();

}

3. 使用连接池提高效率

对于一个高频访问数据库的应用程序,连接池是一个非常实用的工具。连接池可以预先创建一定数量的数据库连接,减少了频繁创建和销毁连接的时间和资源浪费。下面是一个使用Apache Commons DBCP连接池连接MySQL数据库的例子:


try{

  // 创建连接池

  BasicDataSource dataSource = new BasicDataSource();

  dataSource.setDriverClassName("com.mysql.jdbc.Driver");

  dataSource.setUrl("jdbc:mysql://localhost:3306/test");

  dataSource.setUsername("root");

  dataSource.setPassword("password");

  dataSource.setInitialSize(5);

  // 获取连接

  Connection conn = dataSource.getConnection();

  // 执行 SQL 语句

  Statement stmt = conn.createStatement();

  ResultSet rs = stmt.executeQuery("SELECT * FROM user");

  // 处理结果集

  while(rs.next()){

    System.out.println(rs.getString("name"));

  }

  // 关闭连接

  rs.close();

  stmt.close();

  conn.close();

}catch(Exception e){

  e.printStackTrace();

}

通过上述三种例子,我们可以看出在Java中连接数据库的方法和步骤都很清晰明了。通过这些知识,我们可以更加高效地写出与数据库交互的应用程序。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复