使用JDBC连接数据相对于PHP直接使用mysql_connect/mysqli_connect函数就可以完成数据库连接来说的确难了很多,但是其中也暗藏了很多Java的特性需要我们去深入理解。

    或许您会有所疑问我们为什么非要搞明白Class.forName这个问题?这个问题和Java安全有必然的联系吗?其实这里只是想让大家明白Java反射类加载机制、和SPI机制以及养成阅读JDK或者第三方库代码的习惯,也希望不明白上述机制的朋友深入去理解思考下。

    学习完本节后希望您能去思考如下问题:

    1. SPI机制是否有安全性问题?
    2. Java反射有那些安全问题?
    3. Java类加载机制是什么?
    4. 数据库连接时密码安全问题?
    5. 使用JDBC如何写一个通用的数据库密码爆破模块?