Java连接MySQL数据库示例

需积分: 9 4 下载量 58 浏览量 更新于2024-09-15 收藏 1KB TXT 举报
本代码示例展示了如何在Java中进行数据库连接,查询数据并处理登录验证的过程。主要涉及了数据库连接、SQL语句的执行以及异常处理。 在Java编程中,与数据库交互通常使用JDBC(Java Database Connectivity)API。这段代码首先通过`Class.forName()`方法加载MySQL数据库的驱动程序,然后使用`DriverManager.getConnection()`方法建立到数据库的连接。这里的URL是`jdbc:mysql://localhost:3306/users`,表示连接本地主机上端口3306的MySQL服务,数据库名为`users`,并且使用用户名`root`和密码`123456`进行身份验证。 接着,代码创建了`Statement`对象,用于执行SQL查询。在本例中,查询语句是根据给定的`user`和`pass`值来查找用户表`user`中的记录。如果查询结果集`ResultSet`的`next()`方法返回`true`,说明找到了匹配的用户,程序会输出“你终于登录成功啦”并附带用户名。反之,如果没有找到匹配的记录,程序会提示用户登录失败。 在数据库操作完成后,通常需要关闭打开的资源,以避免资源泄漏。这里使用了`finally`块来确保无论是否发生异常,都能关闭`Connection`、`Statement`和`ResultSet`。然而,这种方式存在SQL注入的风险,因为直接将用户输入拼接到SQL语句中。在实际开发中,应使用参数化查询或预编译的`PreparedStatement`来防止此类安全问题。 此外,提供的部分内容提到了一个可能的方法`getAllInfo()`,它返回一个`Info`对象的列表。这暗示了一个更复杂的查询操作,可能涉及到从数据库中获取所有`Info`对象,并将结果存储在一个列表中,最后将这个列表设置为`GridView`的数据源以便显示。虽然这部分代码不完整,但可以推断出在实际应用中,数据查询后通常需要进行数据封装和展示。 总结来说,这段代码涵盖了以下关键知识点: 1. JDBC驱动加载:`Class.forName("com.mysql.jdbc.Driver")` 2. 数据库连接:`DriverManager.getConnection()` 3. SQL查询执行:`Statement.executeQuery()` 4. 结果集处理:`ResultSet.next()` 5. 异常处理:`try-catch-finally`结构 6. 数据库资源关闭:`Connection`, `Statement`, `ResultSet`的`close()`方法 7. 防止SQL注入:不应直接拼接用户输入到SQL语句,应使用参数化查询 8. 数据获取与展示:可能涉及批量查询和数据封装,如`getAllInfo()`方法 在实际开发中,还需要注意线程安全、事务管理、连接池的使用等其他高级话题。