贾宗虎
1.什么是JDBC,使用JDBC的好处?
JDBC是Java Database Connectivity,定义了一种java和各种关系型数据库之间的连接的规则
好处是: 减少代码的重复率,一套方法,可以针对不同数据库使用.
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
这个包是sun公司为mysql开发的,对接Java的JDBC实现类.可以使我们可以用java语言操作数据库.
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
使用反射的方式,可以提高代码的灵活度,new对象会把代码写死,下次换个数据库的时候,需要改代码.
4.请简述JDBC编程的步骤
1).注册驱动,Class.forName("com.mysql.jdbc.Driver");
2).DriverManager.getConnection();获取Connection对象,建立连接
3).Connection对象,调用createStatement方法(),获取Statement对象
4).定义SQL语句,用字符串接收
5).Statement对象,调用executeUpdate(executeQuery)方法,参数传sql语句,Update返回值是int值,
代表影响的数,Query返回值是0代表执行成功,不是0,就是失败
5.JdbcUtils存在的目的?
工具类的存在是为了解决代码重复率高的问题,例如释放资源
6.什么是SQL注入问题,该怎样解决?
SQL注入问题是在做判断的时候,利用字符串拼接的方式,导致可以录入密码的时候,将录入的语句被SQL识别为恒等式,
导致代码不安全.
解决办法: PreparedStatement接口,是mysql公司专门为了sql注入问题提供的解决接口. Connection接口中有preparedStatemen的重载方法,参数是sql语句,语句中的具体值,用通配符 ? 来代替,返回值是PreparedStatement接口对象,该对象可以调用setXxx方法,给通配符赋值.只有判断的值相同才可以.
7.事务的作用是什么? |
|
|