本帖最后由 Do1 于 2019-11-23 00:35 编辑
JDBC是java连接mysql数据库的aip工具,通过jdbc可以从mysql数据库中提取数据,使用时需要导入mysql包
原始的连接方式为:
1.Class.forName(Stirng)
从指定的com包加载驱动
2.Connection conn=DriverManager.getConnection(URL,USER,PASS);
创建连接,需要传入的参数为Mysql数据库的URL地址,这里的地址包含了你所要使用的指定数据库名称,以及用户名和密码
3.Statement stmt=conn.createStatement();
实例化mysql对象
stmt.executeQuery(String sql);
传入sql语句,如果是查询的话就用一个ResultSet集合来接收并且使用executeQuery方法
如果是增删改的话可以用int类型来接收,判断是否添加成功,int类型收到的是表中受影响的row数,使用executeUpdate;方法
SQL注入漏洞是因为实例化对象编译sql语句时传入的是一个字符串,这个字符串就代表sql中的语句,通过注入漏洞将判定语句中的and 给隔开了,如果加一个or进去的话 就可以随意输入密码,解决方法是使用比Statment更高级的Statment的子类PreparedStatement,它可以预编译sql,设置参数,安全性高
|