建库
docker run -d --name db2 -p 50000:50000 -e DB2INST1_PASSWORD=db2inst1-pwd -e LICENSE=accept ibmoms/db2express-c:latest db2start
pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>untitled1</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- https://mvnrepository.com/artifact/com.ibm.db2/jcc -->
<dependency>
<groupId>com.ibm.db2</groupId>
<artifactId>jcc</artifactId>
<version>11.5.9.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
CODE
不需要写
Class.forName("com.ibm.db2.jcc.DBDriver");
需要些scheme的名字加上表名
hello是库名
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import com.ibm.db2.jcc.DB2Driver;
public class DB2ConnectionExample {
public static void main(String[] args) {
// 数据库连接URL,格式为:jdbc:db2://主机名:端口号/数据库名
String url = "jdbc:db2://localhost:50000/hello";
// 数据库用户名和密码
String user = "db2inst1";
String password = "db2inst1-pwd";
try {
// 加载DB2 JDBC驱动
// com.ibm.db2.jcc
// Class.forName("com.ibm.db2.jcc.DBDriver");
// 建立数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
System.out.println("Connected to the DB2 database successfully!");
// 创建Statement对象来执行SQL语句
Statement stmt = conn.createStatement();
// 执行查询并获取结果
ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE_TEST.NEWTABLE");
// 处理结果
while (rs.next()) {
// 根据你的表结构,假设有两个字段:id和name
String name = rs.getString("COLUMN1");
System.out.println("ID: " + name + ", Name: " + name);
}
// 关闭结果集、Statement和连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}