JDBC连接
public class JdbcDemo { public static void main(String[] args) { try { // 注册驱动 Class.forName("com.mysql.cj.jdbc.Driver"); String url = "jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC"; //连接url String username = "root"; //数据库用户名 String password = "root"; //数据库密码 // 建立(获取)连接 Connection connection = DriverManager.getConnection(url, username, password); String sql = "select * from user"; //需要执行的sql // 创建statement PreparedStatement preparedStatement = connection.prepareStatement(sql); // 执行sql查询 ResultSet resultSet = preparedStatement.executeQuery(); int count = 0; // 结果集的字段个数 if (resultSet != null) { count = resultSet.getMetaData().getColumnCount(); } // 遍历结果集 while (resultSet.next()) { // 注意: 结果集的字段第一列的索引是1 而不是0 for (int i = 1; i <= count; i++) { System.out.println(resultSet.getString(i)); } } } catch (SQLException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } } }
注意:在以上代码中使用的mysql驱动是 com.mysql.cj.jdbc.Driver 而不是 com.mysql.jdbc.Driver 是因为版本的原因。
pom依赖:
<properties> <mysql.version>8.0.13</mysql.version> </properties> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build>
mysql依赖采用的版本是8.0.13;
jdk编译插件用的是1.8, 如果不设置编译插件的版本, maven默认的版本是1.5, 在编译的时候会出现警告, 如下:
Information:javac 1.8.0_172 was used to compile java sources
Information:2019/3/21 7:31 - Compilation completed successfully with 3 warnings in 1 s 549 ms
Warning:java: 源值1.5已过时, 将在未来所有发行版中删除
Warning:java: 目标值1.5已过时, 将在未来所有发行版中删除
Warning:java: 要隐藏有关已过时选项的警告, 请使用 -Xlint:-options。