下面是Java连接PostgreSQL数据库的完整攻略,包括Maven配置方式。
一、Java连接PostgreSQL数据库代码
1. 导入PostgreSQL JDBC驱动
在Java程序中连接PostgreSQL数据库,需要先导入PostgreSQL JDBC驱动。
可以从PostgreSQL官网的下载页面下载对应的JDBC驱动,或者使用Maven管理依赖(稍后会讲到)。
2. 加载驱动并获取数据库连接
在Java程序中连接PostgreSQL数据库的第一步是加载驱动,并获取数据库连接。这个过程可以封装在一个工具类中,这样就可以在需要连接数据库的地方直接调用。
import java.sql.Connection;
import java.sql.DriverManager;
public class DBUtil {
// 数据库连接参数
private static final String URL = "jdbc:postgresql://localhost:5432/mydb";
private static final String USER = "postgres";
private static final String PASSWORD = "123456";
// 驱动名
private static final String DRIVER_CLASS_NAME = "org.postgresql.Driver";
// 加载驱动并获取数据库连接
public static Connection getConnection() {
try {
Class.forName(DRIVER_CLASS_NAME);
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
return conn;
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("数据库连接失败:" + e.getMessage());
}
}
}
上面的代码中,getConnection()
方法会加载PostgreSQL驱动并获取数据库连接,连接参数包括:URL、USER和PASSWORD。
3. 执行SQL语句
有了数据库连接之后,就可以执行SQL语句了。下面是一个简单的示例,查询student
表中的所有记录。
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
conn = DBUtil.getConnection();
String sql = "SELECT * FROM student";
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("name"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null) rs.close();
if (stmt != null) stmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
上面的代码中,首先获取数据库连接,然后创建一个PreparedStatement
对象并执行查询语句,最后处理查询结果。
二、Maven配置方式
使用Maven管理项目可以极大地简化依赖管理和项目构建的过程,下面是使用Maven连接PostgreSQL数据库的配置方式。
1. 引入PostgreSQL JDBC驱动依赖
可以在pom.xml
文件中添加以下依赖:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.14</version>
</dependency>
上面的依赖会自动引入PostgreSQL JDBC驱动,版本号可以根据需要自行修改。
2. 编写Java代码
在Maven项目中连接PostgreSQL数据库的Java代码和上面的方式完全相同,不需要做任何修改。
3. 运行项目
可以使用mvn exec:java
命令运行项目,或者使用Maven插件运行项目,比如maven-compiler-plugin
、maven-assembly-plugin
等。
三、示例
下面是两个连接PostgreSQL数据库的示例,一个使用标准的Java JDBC方式,另一个使用Maven。
示例一:标准的Java JDBC方式
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
// 加载PostgreSQL驱动
Class.forName("org.postgresql.Driver");
// 获取数据库连接
String url = "jdbc:postgresql://localhost:5432/mydb";
String user = "postgres";
String password = "123456";
conn = DriverManager.getConnection(url, user, password);
// 执行查询
String sql = "SELECT * FROM student";
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("name"));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null) rs.close();
if (stmt != null) stmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
示例二:使用Maven
在pom.xml
文件中添加以下依赖:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.14</version>
</dependency>
然后编写Java代码,连接数据库和执行查询的代码和上面相同。
最后可以使用Maven插件运行项目,比如使用maven-compiler-plugin
插件编译项目,然后使用exec-maven-plugin
插件运行项目:
mvn compile
mvn exec:java -Dexec.mainClass="com.example.Main"
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java连接postgresql数据库代码及maven配置方式 - Python技术站