黑马程序员技术交流社区

标题: 【厦门校区JavaEE就业3期-每日总结】JDBC [打印本页]

作者: 厦门校区    时间: 2018-9-5 20:50
标题: 【厦门校区JavaEE就业3期-每日总结】JDBC
1.什么是JDBC,使用JDBC的好处?
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
4.请简述JDBC编程的步骤
5.JdbcUtils存在的目的?
6.什么是SQL注入问题,该怎样解决?
作者: 黄伟佳    时间: 2018-9-5 21:02

1.什么是JDBC,使用JDBC的好处?
JDBC 是 Java 访问数据库的标准规范
好处:如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
加载驱动,他服从jdbc规则

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
通过Class 对象生成对应类的 对象,使用反射创建出来的对象耦合性更低,更加通用
4.请简述JDBC编程的步骤
                1. 导入驱动jar包
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源
5.JdbcUtils存在的目的?
工具类。试操作更方便。减少代码冗余
6.什么是SQL注入问题,该怎样解决?

使用 PreparedStatement
作者: 林嘉志    时间: 2018-9-5 21:05
1.什么是JDBC,使用JDBC的好处?
1) 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
所有与 JDBC 访问数据库相关的接口和类

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
为什么一定要使用反射呢?因为反射是运行时根据全类名动态生成的Class对象,完全可以把这个全类名写在xml或者properties中去,不仅从代码上解耦和,而且需要更换数据库时,不需要进行代码的重新编译,这比直接new一个com.mysql.jdbc.Driver 不知高明到哪里去了~

4.请简述JDBC编程的步骤
1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
                        1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
                        2.右键-->Add As Library
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源

5.JdbcUtils存在的目的?
减少冗余的代码
方便重复利用
作者: 练志成    时间: 2018-9-5 21:09
.什么是J,使用C的好处?
j是操作java与数据库相连接的规则(接口),实现了java与数据库的连接
2.我们导入的 my  s   q  l-connector-java-5.1.37-bin.jar包,有什么用,他和JD   BC有什么关系?
jar包是一个工具包,里面有大量于j d b c有关的操作等
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
字节码文件可以在运行时改变
4.请简述JD BC编程的步骤
导包—>注册—>获取连接对象—>定义s q l—>获取执行对象—>执行并且返回结果—>处理结果—>释放资源
5.J d b c U til s存在的目的?
简化代码书写过程,将需要重复写的代码包装起来
6.什么是SQL注入问题,该怎样解决?
使用事务可以解决
作者: 练志成    时间: 2018-9-5 21:13
.什么是J,使用C的好处?
j是操作java与数据库相连接的规则(接口),实现了java与数据库的连接
2.我们导入的 my  s   q  l-connector-java-5.1.37-bin.jar包,有什么用,他和JD   BC有什么关系?
jar包是一个工具包,里面有大量于jdbc有关的操作等
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
字节码文件可以在运行时改变
4.请简述JD BC编程的步骤
导包—>注册—>获取连接对象—>定义s q l—>获取执行对象—>执行并且返回结果—>处理结果—>释放资源
5.J d b c U til s存在的目的?
简化代码书写过程,将需要重复写的代码包装起来
6.什么是SQL注入问题,该怎样解决?
使用事务可以解决
作者: 张煜兴    时间: 2018-9-5 21:20
1.什么是JDBC,使用JDBC的好处?
JDBC是java database connectivity,是定义数据库产商语言规则的接口,
好处:各个厂商可以实现JDBC接口,生成jar包供java用户使用,可以利用java对数据库数据进行封装等扩展

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
可以用java驱动此jar包,对mysql数据库内的数据进行操作,
他是JDBC的实现类

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射可以将jar包内实现类的部分抽离出来使用

4.请简述JDBC编程的步骤
注册、获取连接对象、创建sql语句、通过连接对象获取执行sql语句的对象、执行sql语句、处理结果、释放资源

5.JdbcUtils存在的目的?
JdbcUtils是为了减少代码量,而抽取代码,对其进行工具类化
6.什么是SQL注入问题,该怎样解决?
SQL注入问题是利用  ' "+数据+" ' 的  ' '  对数据的判断进行引导,使其判断为真,如写入 a'or'a'='a 后,执行sql语句判断时会是  'a'or'a'='a'



作者: 郑颖锋    时间: 2018-9-5 21:21
1.什么是JDBC,使用JDBC的好处?
JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。
1) 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
jar包是java针对MySQL实现的驱动程序包,是对 JDBC 接口实现的类。

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射是运行时根据全类名动态生成的Class对象,完全可以把这个全类名写在properties中去,不仅从代码上解耦和,而且需要更换数据库时,不需要进行代码的重新编译。
4.请简述JDBC编程的步骤
1.导入jar包,关联jar包,添加依赖
2.注册驱动
3.获取数据库连接对象Connection
4.定义sql语句
5.获取执行sql语句的对象statement
6.执行SQL语句,接收返回结果
7.处理结果
8.释放资源

5.JdbcUtils存在的目的?
JDBC编程代码中出现了很多重复的代码,把这些公共代码抽取出来,定义一个JdbcUtils类,可以提高代码的复用率。
6.什么是SQL注入问题,该怎样解决?
用户输入的内容作为了 SQL 语句语法的一部分,改变了原有 SQL 真正的意义,以上问题称为 SQL 注入问题。
要解决 SQL 注入就不能让用户输入的密码和我们的 SQL 语句进行简单的字符串拼接,可以prepareStatement()先将 SQL 语句发送给数据库预编译,减少 SQL 编译次数,提高效率,提高安全性,消除SQL 注入的隐患。



作者: 练志成    时间: 2018-9-5 21:27
.什么是J,使用C的好处?
j是操作java与数据库相连接的规则(接口),实现了java与数据库的连接
2.我们导入的 my  s   q  l-connector-java-5.1.37-bin.jar包,有什么用,他和JD   BC有什么关系?
jar包是一个工具包,里面有大量于jdbc有关的操作等
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
字节码文件可以在运行时改变
4.请简述JD BC编程的步骤
导包—>注册—>获取连接对象—>定义s q l—>获取执行对象—>执行并且返回结果—>处理结果—>释放资源
5.J d b c U til s存在的目的?
简化代码书写过程,将需要重复写的代码包装起来
6.什么是SQL注入问题,该怎样解决?
使用事务可以解决
作者: sulaymanfan    时间: 2018-9-5 21:28
1.什么是JDBC,使用JDBC的好处?  jdbc时一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包.
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
    mysql-connector-java-5.1.37-bin.jar时家va官方提供的jar包,里面时一些接口的具体实线类对象.
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
   因为驱动里面是被编译好的class字节码文件,无法用普通的方法直接new对象, 反射可以拿到想要的类的字节码问价加载到内存,因为虚拟机最终执行的是机器码.
4.请简述JDBC编程的步骤
   1 关联jar包
   2 注册驱动
   3 获取connetion 对象
   4 使用connetion对象调用执行SQL语句的statement对象
   5 使用statement对象的方法对数据库执行 ddl,dml,及dql语句
    6 释放资源
5.JdbcUtils存在的目的?
   因为在操作数据库的过程中有大量的操作是重复的, 所有因一个工具类来提取这些重复的操作,这也体现了Java的封装性
6.什么是SQL注入问题,该怎样解决?

  SQL注入就是例如SQL语句的的返回值的"漏洞"来达到绕过数据验证来获取数据库中的数据.
   可以使用 preparedstatement来动态的预编译SQL语句对象

作者: 李伟javaee03    时间: 2018-9-5 21:30
1.        什么是JDBC,使用JDBC的好处?
JDBC是java跟数据库连接的一个规则(接口)
好处:
1.程序员如果要开发访问数据库的程序,只需要会调用JDBC接口中的方法即可,不用关注类是如何实现的。
2. 使用同一套Java代码,进行少量的修改就可以访问其他JDBC支持的数据库

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
  是mysql开发的,对接Java的JDBC实现类.可以使我们可以用java语言操作数据库.
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射只需要字节码文件就可以创建对象从而使用方法,可以解耦,提高程序的可扩展性,更换数据库时比较方便
4.请简述JDBC编程的步骤
1.        导入驱动jar包2.添加依赖3.注册驱动4.获取数据库连接对象
5.定义sql语句6.获取执行sql语句的对象7.执行sql语句,接受返回结果
8.处理结果9.释放资源
5.JdbcUtils存在的目的?
将重复代码进行封装,提高代码复用性,简化代码
6.什么是SQL注入问题,该怎样解决?
   就是输入的sql通过字符串拼接改变原有sql真正意义,避开了sql的检测。解决方法是使用预处理Statement.

作者: ZNBran    时间: 2018-9-5 21:30
1.什么是JDBC,使用JDBC的好处?
JDBC就是用java连接操作数据库的规范,JDBC好处在于面向接口编程,会用JDBC接口中的方法就可以操作JDBC支持的数据库。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
我们导入的 mysql-connector-java-5.1.37-bin.jar包,是数据库厂商提供的驱动包,它包含JDBC中接口的实现类。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
用new创建对象在更换数据库时也要相应改变对应的数据库信息。用反射的方式可以动态加载配置文件注册驱动,还可以节省代码量。
4.请简述JDBC编程的步骤
导入jar包,注册驱动,定义sql语言,获取数据库连接对象,获取执行对象,执行sql获取结果,对结果进行处理,释放资源
5.JdbcUtils存在的目的?
JdbcUtils就是自定义工具类用来简化代码
6.什么是SQL注入问题,该怎样解决?
SQL注入问题就是在定义sql语言时是字符串拼接,容易出现安全性问题。
===================================================周楠
作者: 黄艺纯    时间: 2018-9-5 21:33

1.什么是JDBC,使用JDBC的好处?
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
4.请简述JDBC编程的步骤
5.JdbcUtils存在的目的?
6.什么是SQL注入问题,该怎样解决?
作者: 林胜强    时间: 2018-9-5 21:33
1.什么是JDBC,使用JDBC的好处?
一种规则(接口)实现 数据库与java的连接
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
包实现JDBC接口
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射机制低耦合在程序运行中可以对程序进行操作。

4.请简述JDBC编程的步骤
                1. 导入驱动jar包
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源
5.JdbcUtils存在的目的?
工具类将常用的方法封装在一个类中,简化书写

6.什么是SQL注入问题,该怎样解决?
当sql语句是一个字符串,条件判断 or 上一个true 判断语句 使结果始终为true 安全性差
作者: Michcale    时间: 2018-9-5 21:33
======吴齐宾======

1.什么是JDBC,使用JDBC的好处?
可以使用JAVA链接数据库,方便我们查询数据库.
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
jar包是JDBC的子实现类,我们通过调用jar里面的方法进行对mysql的操作
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
因为我们得到是.class文件,只能使用反射的方式获得对像.使用反射我们能得到jar包里面的所有属性和方法
4.请简述JDBC编程的步骤
1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
                        1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
                        2.右键-->Add As Library
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源
5.JdbcUtils存在的目的?
减少我们的程序员的操作量
6.什么是SQL注入问题,该怎样解决?
问题:通过字符串的拼接,改变判断的条件,使用prepareStatement方法
作者: 黄艺纯    时间: 2018-9-5 21:34

1.什么是JDBC,使用JDBC的好处?
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
4.请简述JDBC编程的步骤
5.JdbcUtils存在的目的?
6.什么是SQL注入问题,该怎样解决?
作者: 黄艺纯    时间: 2018-9-5 21:35
本帖最后由 黄艺纯 于 2018-9-6 09:22 编辑

1.什么是JDBC,使用JDBC的好处?
JDBC:
    JDBC 规范定义接口,具体的实现由各大数据库厂商来实现。
    JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动。每个数据库厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以我们只需要会调用 JDBC 接口中的方法即可,数据库驱动由数据库厂商提供。
使用 JDBC 的好处:
    1) 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
    2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
    因为JAVA提供的JAR包内容是有限的,JAVA是开源编码,很多优秀的框架,方法都可以由第3方提供。比如数据库有很多种,那么就有很多中java操作数据库语言,但如果有人事先做好,并生成了相应JAR包,你只要在你的代码里引入,并且按之前开发的人的要求对其初始化,那么就直接能用了,你自己一行算法代码,展现代码可能都不用写。简单来说就是引用别人的东西
   该包是mysql公司按照JDBC的标准规范的实现类,也就是数据库驱动

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
JDBC提供的DriverManager类用于跟踪所有可用的JDBC驱动,并在用户需要时选择合适的驱动提供给用户,但是其跟踪不是自动的,必须由可用的JDBC驱动的Driver类自己在DriverManager上进行注册,但是这个注册过程一般是由Driver类加载的时候自动完成的
Class.forName("数据库全类名驱动");这句就是为了加载这个类进入内存用的。而在一个类加载入内存的时候,类中的静态初始化过程会执行。而刚才所说的Driver类在DriverManager上注册的过程,事实上就是在这个静态初始化块中完成的,也就是说Class.forName(“数据库全类名驱动”");这句话在这里的用处就是,强制JVM将,数据库.Driver这个类加载入内存,以便将其注册到DriverManager类上去。
好处:因为反射是运行时根据全类名动态生成的Class对象,完全可以把这个全类名写在xml或者properties中去,不仅从代码上解耦和,而且需要更换数据库时,不需要进行代码的重新编译,这比直接new一个com.mysql.jdbc.Driver 不知高明到哪里去了。

4.请简述JDBC编程的步骤
1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源

5.JdbcUtils存在的目的?
    如果一个功能经常要用到,把这个功能做成一个工具类,可以在不同的地方重用,提高代码的复用率,降低代码的冗余,提高编程效率。

6.什么是SQL注入问题,该怎样解决?
    SQL 注入问题:用户输入的密码和 SQL 语句进行字符串拼接。用户输入的内容作为了 SQL 语句语法的一部分,改变了原有SQL真正的意义。
    使用PreparedSatement接口。




作者: 赵烈刚    时间: 2018-9-5 21:38
1.什么是JDBC,使用JDBC的好处?
Java和关系型数据库连接的接口;操作数据库,统一、方便。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
用于连接数据库,注册驱动;它是数据库厂商按照JDBC规则定义的接口
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
使用反射方式获取Connection接口,从而在JDBC的规范的支持下,全程数据库操作;以反射形式加载的好处是当驱动jar包不存在时,我们可以做更多的操作
4.请简述JDBC编程的步骤
1).导入jar包
2).注册驱动
3).获取数据库连接对象Connection
4).定义SQL
5).获取执行sql语句的对象 Statement
6).执行SQL
7).处理结果
8).释放资源
5.JdbcUtils存在的目的?
为了简化书写。
6.什么是SQL注入问题,该怎样解决?
在拼接SQL时,有一些SQL的特殊关键字参与字符,会造成安全问题;使用PreparedStatement对象来解决。
作者: 张剑猛    时间: 2018-9-5 21:38
1.什么是JDBC,使用JDBC的好处?
JDBC是官方定义的一套操作所有关系型数据库的规则,即接口,通过实现接口可以使用java操作数据库
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
是厂商对jdbc的实现,连接java和数据库
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
驱动是厂商提供的jar包,new对象需要找到类和其所在的包,通过反射可以直接找到该对象
4.请简述JDBC编程的步骤
        //1. 导入驱动jar包
        //2.注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //3.获取数据库连接对象
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db3", "root", "root");
        //4.定义sql语句
        String sql = "update account set balance = 500 where id = 1";
        //5.获取执行sql的对象 Statement
        Statement stmt = conn.createStatement();
        //6.执行sql
        int count = stmt.executeUpdate(sql);
        //7.处理结果
        System.out.println(count);
        //8.释放资源
        stmt.close();
        conn.close();
5.JdbcUtils存在的目的?
减少代码冗余,提高代码复用率
6.什么是SQL注入问题,该怎样解决?
使用Statement执行sql的对象时,如果使用到关键词会使sql语句失真,得到数据异常,通过PreparedStatement执行sql的对象可以解决这个原因

作者: 林靖    时间: 2018-9-5 21:41
1.什么是JDBC,使用JDBC的好处?是java访问数据库的标准规范(接口 由各大数据库厂商实现)
开发者直接调用JDBC中的方法即可
同一套java代码,进行少量的修改就可以访问其他 JDBC 支持的数据库

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
存储了mysql实现类的压缩包,可以使用java语言操作数据库,Jar包中的类 实现了JDBC

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
增加程序的灵活性,避免将程序写死,并且jar包中的文件时.class文件

4.请简述JDBC编程的步骤
导入驱动jar包
注册驱动
获取数据库连接对象 Connection
定义sql语句
获取执行sql语句的对象 Statement
执行sql,接受返回结果
处理结果
释放资源

5.JdbcUtils存在的目的?
简化书写,偷懒

6.什么是SQL注入问题,该怎样解决?

用户输入的内容作为了 SQL 语句语法的一部分,改变了 原有 SQL 真正的意义  例如 输入错误的账号和密码却成功登陆
使用PreparedSatement 接口可以解决该问题 ,该接口中的方法会先将 SQL 语句发送给数据库预编译,减少 SQL 编译次数,提高效率,安全性更高,没有 SQL 注入的隐患。

作者: 丶黑白    时间: 2018-9-5 21:42
1.什么是JDBC,使用JDBC的好处?
Java DataBase Connection, 是接口,是规则。
可以通过java连接多个厂商的数据库。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
  mysql-connector-java-5.1.37-bin.jar 是mysql 与java连接的规则细节。是JDBC的一个小类。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
    使用反射可以再运行期间修改代码。
4.请简述JDBC编程的步骤
      1.导包获得依赖
      2.Class.forName ( 全类名 MySQL是com.mysql.jdbc.Driver)驱动
      3. DriverManager.getConnection 获得连接对象conn
      4.定义sql语句(sql可用拼接或占位符)
      5. conn调用createStatement获得对象stmt或调用Preatestatement获得对象pt,传入sql
      6. 传入sql语句或占位符定义,调用sql相应方法。
      7.    next确认数据,get方法获取  或者放回int,通过int确定是否成功。
5.JdbcUtils存在的目的?
简化代码,提高代码的复用性
6.什么是SQL注入问题,该怎样解决?
用 Statement 的对象 执行动态sql语句的时候容易发生和预期值不符合的情况称为SQL注入。用PrepareStatement 对sql语句预加载。

作者: shenxiaogan    时间: 2018-9-5 21:43

1.什么是JDBC,使用JDBC的好处?
用java控制数据库
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
规则关系
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
不用修改源代码
4.请简述JDBC编程的步骤
这样。。。那样。。。
5.JdbcUtils存在的目的?
简化麻烦
6.什么是SQL注入问题,该怎样解决?
换动态
作者: 罗荣贵    时间: 2018-9-5 21:43
1.jdbc是Java为数据库厂商进行连接Java的协议规则,使用jdbc可以减少Java的代码量
2.这个包中包含的是对Java中的接口的实现类,用来实现实现接口调用方法,是对规则的代码实现
3.使用反射机制,但我们修改了数据名或者更换数据库使用的账号密码,我们不用更改我们的源码,只要更改我们的配置文件即可,使得代码更加具有扩展性和复用性
4.导包,注册驱动,获取连接对象,定义sql语句,获取执行语句的对象,执行语句对象调用方法执行语句,接受返回值并处理,释放资源
5.简化主方法中的冗余代码,定义工具类来使用反射机制,连接配置文件,增强代码的扩展性和复用性
6.注入问题是在执行一项任务,没有达到我们想要的结果但是更改了我们的数据,可以用事务管理来解决这个问题
作者: 黄晨伟    时间: 2018-9-5 21:44
1.什么是JDBC,使用JDBC的好处?
java连接数据库的一种方式 一处编译 随处运行 安全 跨平台
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
能与mysql与java连接,jdbc的一个类
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射技术是为低耦合编程而提供的技术.用其编程难度大.但灵活健壮,易于用户程序后期扩展维护
4.请简述JDBC编程的步骤
(1).注册驱动
(2).连接数据库
(3).创建搬运工statement
(4).搬运数据,执行SQL语句
(5).处理结果集
(6).关闭连接
5.JdbcUtils存在的目的?
简化书写
6.什么是SQL注入问题,该怎样解决?
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令

作者: 黄晨伟    时间: 2018-9-5 21:48
1.什么是JDBC,使用JDBC的好处?
java连接数据库的一种方式 一处编译 随处运行 安全 跨平台
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
能与mysql与java连接,jdbc的一个类
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射技术是为低耦合编程而提供的技术.用其编程难度大.但灵活健壮,易于用户程序后期扩展维护
4.请简述JDBC编程的步骤
(1).注册驱动
(2).连接数据库
(3).创建搬运工statement
(4).搬运数据,执行SQL语句
(5).处理结果集
(6).关闭连接
5.JdbcUtils存在的目的?
简化书写
6.什么是SQL注入问题,该怎样解决?
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令

作者: 罗建辉    时间: 2018-9-5 21:48
1.什么是JDBC,使用JDBC的好处?
Java 数据库连接,其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
好处:
程序员如果要开发访问数据库的程序,只需要会调用JDBC接口中的方法即可,不用关注类是如何实现的。
使用同一套Java代码,进行少量的修改就可以访问其他JDBC支持的数据库



2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
由厂商提供的实现类,实现java与数据库的连接


3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
使用反射可以得到JDBC操作的字节码对象,可以直接操作方法


4.请简述JDBC编程的步骤
* 步骤:
        1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
            1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
            2.右键-->Add As Library
        2. 注册驱动
        3. 获取数据库连接对象 Connection
        4. 定义sql
        5. 获取执行sql语句的对象 Statement
        6. 执行sql,接受返回结果
        7. 处理结果
        8. 释放资源



5.JdbcUtils存在的目的?
简化代码量,将重复的操作封装起来,是的代码更方便


6.什么是SQL注入问题,该怎样解决?
在拼接sql时,有一些sql的特殊关键字参与字符串的拼接。会造成安全性问题



作者: 黄晨伟    时间: 2018-9-5 21:49

1.什么是JDBC,使用JDBC的好处?
java连接数据库的一种方式 一处编译 随处运行 安全 跨平台
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
能与mysql与java连接,jdbc的一个类
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
反射技术是为低耦合编程而提供的技术.用其编程难度大.但灵活健壮,易于用户程序后期扩展维护
4.请简述JDBC编程的步骤
(1).注册驱动
(2).连接数据库
(3).创建搬运工statement
(4).搬运数据,执行SQL语句
(5).处理结果集
(6).关闭连接
5.JdbcUtils存在的目的?
简化书写
6.什么是SQL注入问题,该怎样解决?
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令

作者: 赖良峰    时间: 2018-9-5 21:51
本帖最后由 赖良峰 于 2018-9-5 21:58 编辑

1.什么是JDBC,使用JDBC的好处?     jdbc是一套规则,是java为了连接各种数据库定义的一套接口,各个数据库公司要自己做一个jar包来实现这套接口,这样在使用java的时候只要导入jar包就可以使用数据库了
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
     操作mysql数据库啊,是mysql公司的一个jar包的一个版本,
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
     使用反射的方式我们只需要更改配置文件就可以对不同的数据库进行访问而不需要修改源代码
4.请简述JDBC编程的步骤
注册class.forname
获取connection对象 drivermanager.getconnection
获取statement对象  connection对象调用createstatement()方法
statement对象调用excute方法,传入sql语句 执行
5.JdbcUtils存在的目的?
解决重复代码
6.什么是SQL注入问题,该怎样解决?
使用动态执行sql语句 preparestatement

作者: 陈锦祥    时间: 2018-9-5 21:53
1.什么是JDBC,使用JDBC的好处?
sun公司 定义的一套操作所有关系型数据库的规则     好处 可以用 java代码 只会数据库 做事
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
  JDBC是一组接口,该jar包为mysql数据库开发者提供的一组符合JDBC接口规范的驱动包,包含了一系列的JDBC中各种接口的实现类。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
   因为该包为从外部导入,并且由于实际使用中并不需要取直接手动调用构造方法新建相应的对象,而是通过一系列的静态方法和成员方法去获取对象,所以的话,在一开始只要直接将类加载后由其中的静态代码块就可以完成相应的初始化工作。而且使用反射加载相对来说也较为灵活,日后可以配合配置文件和更换jar包来实现对不同数据库的支持。
4.请简述JDBC编程的步骤
--1.导入驱动包
--2.注册驱动
--3.获取数据连接对象 Connection
--4.定义sql 语句字符串
--5.获取执行sql语句对象 statment
--6.statment 对象 执行sql语句
--7.处理结果
--8.释放资源
5.JdbcUtils存在的目的?
抽取冗余代码 进行封装 达到 简化代码的目的
6.什么是SQL注入问题,该怎样解决?
在拼接sql语句时,有一些sql的特殊关键字参与字符串的拼接。会造成安全性问题
使用 PreparedStatement 来执行sql语句 会解决掉该问题





作者: 谢君昇    时间: 2018-9-5 21:53
1.什么是JDBC,使用JDBC的好处?
    JDBC是一套操作关系型数据库的规范,即接口;通过JDBC能够用java语言操作数据库;
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
   jar包中提供的是JDBC的实现类 , 依靠这些实现类才能执行代码;
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
   通过反射的方式可以根据全类名动态生成class对象 , 当更换数据库时不用重写编译代码;
4.请简述JDBC编程的步骤
  1.导入 .jar包,建立依赖关系 ;
   2.注册驱动 ;
   3.获得网络连接对象 ;
   4.定义sql语句 ;
   5.获得执行sql语句的对象 ;
   6.执行sql语句 ;
   7.处理结果 ;
   8.关闭资源 ;
5.JdbcUtils存在的目的?
   不用每次都写重复的代码 , 减少冗余的代码 , 提高效率 ;
6.什么是SQL注入问题,该怎样解决?
   通过一些关键字让sql语句顺利欺骗数据库;
   使用PreparedStatement( ) 替代createStatement( )可以解决;






作者: yangshixian    时间: 2018-9-5 21:53
本帖最后由 yangshixian 于 2018-9-6 09:46 编辑

1.什么是JDBC,使用JDBC的好处?JDBC是Java语言操作数据库。本质其实是官方定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口。
好处
一、如果要开发访问数据库程序,只需要调用JDBC接口中的方法即可,不用关注类是如何实现的
二、使用同一套Java代码,进行少量的修改就可以访问其他JDBC支持的数据可

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
用来提供mysql的驱动和实现类
和JDBC是实现类与接口的关系

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
因为如果不用反射机制,注册驱动的代码必须写死掉,使用反射机制,代码不用写死,增加扩展性
好处在于1、可以解耦,提供程序的扩展性 2、在程序运行过程,可以操作这些对象

4.请简述JDBC编程的步骤
1. 导入驱动jar包
2. 注册驱动
3. 获取数据库连接对象 Connection
4. 定义sql
5. 获取执行sql语句的对象 PreparedStatement
6. 给?赋值:
7. 执行sql,接受返回结果,不需要传递sql语句
8. 处理结果
9. 释放资源

5.JdbcUtils存在的目的?
以工具类的形式存在,在于抽取许多重复的代码,在不同的地方重用,简化代码

6.什么是SQL注入问题,该怎样解决?
SQL的注入问题即为用户输入的内容作为SQL语句语法的一部分,改变原有SQL的真正意义
通过使用PreparedStatement对象


杨式贤


作者: 黄晨伟    时间: 2018-9-5 21:54
文字不能发

AAA.jpg (823.93 KB, 下载次数: 11)

AAA.jpg

作者: 李志超    时间: 2018-9-5 21:57
1.什么是JDBC,使用JDBC的好处?
JDBC是Java与数据库连接的规则,及接口。
好处:不需要我们关注如何去实现接口,有数据库厂商去实现。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
JDBC的实现类或接口

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
可以避免频繁更改代码,需要更改时直接在配置文件修改


4.请简述JDBC编程的步骤
导入jar包;注册驱动;获取连接对象;定义SQL语句;获取执行对象;执行;结果处理;释放资源

5.JdbcUtils存在的目的?
简化书写
6.什么是SQL注入问题,该怎样解决?
作者: 刘建宝    时间: 2018-9-5 21:57
1.什么是JDBC,使用JDBC的好处?
SUN公司定义的一套操作所有关系型数据库的规则,即接口
好处:可以让Java接收不同数据库中的数据

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
各个数据库厂商去实现数据库接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
4.请简述JDBC编程的步骤
        1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
        2. 注册驱动
        3. 获取数据库连接对象 Connection
        4. 定义sql
        5. 获取执行sql语句的对象 Statement
        6. 执行sql,接受返回结果
        7. 处理结果
        8. 释放资源

5.JdbcUtils存在的目的?
简化书写

6.什么是SQL注入问题,该怎样解决?
在拼接sql时,有一些sql的特殊关键字参与字符串的拼接。会造成安全性问题
使用PreparedStatement对象来解决:预编译的SQL:参数使用?作为占位符


作者: 小鱼七    时间: 2018-9-5 21:58
本帖最后由 小鱼七 于 2021-9-1 17:50 编辑

1.什么是JDBC,使用JDBC的好处?
JDBC是数据库与Java联系的规则,好处是如果所有数据库产商使用此规则,可以与所有的数据库联系
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
使Java可操作musql,他是按照JDBC规则编写的
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?

4.请简述JDBC编程的步骤
导包,注册驱动,获取数据库连接对象,定义sql语句,获取执行sql语句的对象,执行sql,处理结果,释放资源






作者: weimengchao    时间: 2018-9-5 21:59

作者: 仰望`星空    时间: 2018-9-5 21:59
郭林源


1.什么是JDBC,使用JDBC的好处?-->JDBC就是sun公司定义的一套所有关系型数据库的操作规则,我们可以使用这个接口将数据库与JAVA进行连接

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?-->jar包是数据库厂商对JDBC接口的实现,我们可以使用jar包中的实现类,对数据库进行数据操作

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?-->反射是运行时根据全类名动态生成的Class对象,可以把这个全类名写在xml或者properties中,从代码上解耦和,而且需要更换数据库时,不需要进行代码的重新编译,new对象则不能实现

4.请简述JDBC编程的步骤-->1、导入jar包  2、注册驱动  3、获取数据库连接对象  4、定义SQL操作语句   5、获取执行sql语句的对象并执行sql   6、对数据结果进行处理  7、释放资源

5.JdbcUtils存在的目的?-->简化代码,对共性代码进行抽取,更方便使用

6.什么是SQL注入问题,该怎样解决?-->利用数据库的漏洞,使用特殊sql语句,绕过安全机制,从而非法获得数据库的数据
作者: liebstch    时间: 2018-9-5 22:00
1.什么是JDBC,使用JDBC的好处?
  JDBC是一套所有关系型数据库的规则,即接口,使用jdbc就是使用不同产商提供的接口实现对象来对不同的数据库进行操作。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
   导包的作用是mysql针对自己的数据库的特性去实现了jdbc的接口,我们们导入jar包其实就是为了使用jar包中的一些类对象来简化操作,jar包是对jdbc义的数据库规则的实现。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
  以反射形式加载的一个好处是当驱动jar包不存在时,我们可以做更多的操作,好处:使用反射创建出来的对象耦合性更低,更加通用。
4.请简述JDBC编程的步骤
1.导jar包
2.注册驱动
3.获取数据库连接对象connection
4.定义sql
5.获取执行sql语句的对象,statement
6.执行sql,接收返回结果
7.处理结果
8.释放资源                                                                       
5.JdbcUtils存在的目的?
  利用jdbc对数据库进行操作,每次都会有重复的代码为了去除冗余,将一些常用的操作封装在jdbc工具类中
6.什么是SQL注入问题,该怎样解决?
早期的sql语句采用字符串拼接的手段,当刻意的在密码使用一些sql的特殊关键字参与字符串的拼接,让其返回值必定为ture这样就可以随意的访问数据库造成安全性问题。使用PreparedStatement对象来解决采用预编译的SQL参数使用?作为占位符,用户在输入特殊关键字进行字符串拼接的时候只会作为判断是否相等的信息,不会改变原sql的定义。

作者: MJ11    时间: 2018-9-5 22:00
1.什么是JDBC,使用JDBC的好处?
     JDBC是一套关系型数据库的规则,即接口,用于Java与数据库的连接
    使用JDBC可以连接更多的数据库,只需稍加修改就可以被Java语言所使用
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
      导入的包中包含了数据库厂商定义的接口的具体实现类,Jar包中的类 实现了JDBC。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
       注册驱动的实现是通过注册驱动中的静态代码块来实现的。使用反射可以是代码的复用性变得更强
4.请简述JDBC编程的步骤
     分为8个步骤:1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
   1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下右键-->Add As Library
   2. 注册驱动
   3. 获取数据库连接对象 Connection
   4. 定义sql
   5. 获取执行sql语句的对象 Statement
    6. 执行sql,接受返回结果
    7. 处理结果
    8. 释放资源
5.JdbcUtils存在的目的?
      简化代码的书写
6.什么是SQL注入问题,该怎样解决?
     SQL注入问题:在拼接sql时,有一些sql的特殊关键字参与字符串的拼接。会造成安全性问题
     解决办法:使用PreparedStatement对象来解决

田浪

作者: 张子建    时间: 2018-9-5 22:00
1.什么是JDBC,使用JDBC的好处? Java规范定义 接口 ,具体的实现由各大数据库厂商来实现。
1)  程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
2)  使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
jar包中的有JDBC接口的实现类
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
  可以用class文件直接调用类的方法,降低代码的耦合性
4.请简述JDBC编程的步骤
1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
                        1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
                        2.右键-->Add As Library
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
            7. 处理结果
                8. 释放资源
5.JdbcUtils存在的目的?
  简化常用的代码
6.什么是SQL注入问题,该怎样解决?
   用prepareStatement
作者: 郭生发    时间: 2018-9-5 22:00
1.什么是JDBC,使用JDBC的好处?

  是JAVA和数据库连接的规则(接口),可以通过实现接口来把数据库连接JAVA。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?

mysql数据库厂商写的
实现JDBC接口的实现类,可以把数据库连接JAVA,用java语言调用。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?

   因为各数据库的驱动不同,不把代码写死,
使用反射的方式
可以提高代码的复用性。
4.请简述JDBC编程的步骤

  导入jar包,建立依赖,注册驱动,创建连接对象,定义sql语句,创建执行sql语句对象,调用执行执行sql语句的方法,释放资源
5.JdbcUtils存在的目的?

  体现JAVA的封装性,简化书写。
6.什么是SQL注入问题,该怎样解决?

sql的某些特殊关键字拼接字符串会造成安全问题。
使用PrepareStatement对象解决

作者: 迪亚波罗    时间: 2018-9-5 22:00
1.JDBC 是java连接数据库的一种规则,好处1.访问数据库,只需要调用JDBC接口方法即可,不用关注类是如何实现的2.使用同一套代码,进行少量修改 就可以访问其他JDBC支持的数据库
2.提供驱动,注册驱动,jar包是由数据库厂商提供
3.灵活 解耦
4.导入Jar包. 注册加载驱动,连接数据库对象,定义sql,获取执行sql语句对象,执行sql,处理结果,释放资源
5.工具类,目的是简化代码,在不同的地图重用
6.用户输入的密码和 SQL 语句进行字符串拼接。用户输入的内容作为了 SQL 语句语法的一部分,改变了 原有 SQL 真正的意义
作者: 舟sir    时间: 2018-9-5 22:02
1.什么是JDBC,使用JDBC的好处?
jdbc是java和数据库对接的一种规则(接口),好处:只定义了规则,只要符合规则就可以操作
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
让java和jdbc连接,是mysql定义的一个规则接口
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
不用频繁的创建对象,不需要修改代码直接在运行过程操作
4.请简述JDBC编程的步骤
导包—>注册驱动—>获得sql语句—>获取执行对象->执行语句->释放资源
5.JdbcUtils存在的目的?
解决代码的冗余问题
6.什么是SQL注入问题,该怎样解决?
利用字符串的拼接规则和SQL语句的特点,将定义的SQL语句逻辑改变,造成数据安全问题;
使用prepareStatement接口结局,用通配符代替传统拼接,避免了sql注入问题。
周家乾





作者: 冰是睡着的水    时间: 2018-9-5 22:06
1.什么是JDBC,使用JDBC的好处?
答:可以操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,
提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是
驱动jar包中的实现类。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答:注册驱动后则可以用里面的类,进行少量的修改就可以访问其他JDBC支持的数据库,
可以使我们可以用java语言操作数据库.

3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
答:反射只需要字节码文件就可以创建对象从而使用方法,解耦度较高,new对象很麻烦,又占内存
提高程序的可扩展性,更换数据库时比较方便

4.请简述JDBC编程的步骤
答:1.导入驱动jar包 2.添加依赖 3.注册驱动 4.获取数据库连接对象
5.定义sql语句 6.获取执行sql语句的对象 7.执行sql语句,接受返回结果
8.处理结果 9.释放资源

5.JdbcUtils存在的目的?
答:可以将重复代码进行封装,提高代码复用性,可以简化代码,提高效率

6.什么是SQL注入问题,该怎样解决?
答:就是输入的sql通过字符串拼接改变原有sql真正意义,避开了sql的检测。
    解决SQL注入问题的方法是使用预处理Statement.



(黄嘉欣)

作者: 望蜀    时间: 2018-9-5 22:06
邵倩



1. Java 数据库连接,  sun公司定义的一套操作所有关系型数据库的规则,即接口
好处: 1) 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
           2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库

2. mysql数据库驱动包  
实现Java程序访问mysql数据库的前提  
其中的实现类实现了JDBC接口

3.反射是对一个类的主动使用,会触发类的初始化过程,在jvm定义中,凡是主动对一个类的使用,就会触发初始化,既然初始化触发,那么“加载,连接,初始化”肯定都执行了。
所谓初始化,就是调用其静态代码块,为静态变量赋值。
只要是对com.mysql.jdbc.Driver 的主动使用都会触发注册操作,因为反射是运行时根据全类名动态生成的Class对象,因此可以把这个全类名写到配置文件中去,实现了解耦和,更换数据库时,也不需要重新编译代码
如果在代码里直接new 个mysql的Driver,那换数据库时还要修改代码中new 的Driver

4.贾琏欲执事

5.将注册驱动,获取连接,释放资源等重复的代码抽取出来 进行复用

6.利用拼接字符串的弊端 username= '' or 1=1  由于1=1永远成立,所以这句SQL将肯定成功返回  直接绕过登录
  使用PreparedStatement  预编译sql语句的方式解决

作者: 吴鑫佳    时间: 2018-9-5 22:08
1.什么是JDBC,使用JDBC的好处?
  1)  程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
2)  使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
注册驱动后使用包里面的接口实现类,实现驱动
2.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
方便以后更改其他数据库厂家的使用,更灵活
3.请简述JDBC编程的步骤
1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
                        1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
                        2.右键-->Add As Library
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源
5.JdbcUtils存在的目的?
减少代码的冗余以及加强代码的重复利用
6.什么是SQL注入问题,该怎样解决?
  用户输入的内容作为了 SQL 语句语法的一部分,改变了原有 SQL 真正的意义,以上问题称为 SQL 注入问题,解决方法用预处理statement。
作者: zouyitao    时间: 2018-9-6 17:57
邹毅涛
1.什么是JDBC,使用JDBC的好处?
JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,使用JDBC的好处是数据库与java语言建立连接,访问数据库只需实现接口即可。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
导入的包是数据库厂商提供的驱动包,它包含JDBC中接口的实现类。
3.注册驱动为什么使用反射的方式,而不是像以前一样,我们new对象?使用反射又有什么好处?
用new创建对象在更换数据库时也要相应改变对应的数据库信息。用反射的方式可以动态加载配置文件注册驱动,解耦。
4.请简述JDBC编程的步骤
导入jar包,注册驱动,定义sql语言,获取数据库连接对象,获取执行对象,执行sql获取结果,对结果进行处理,释放资源
5.JdbcUtils存在的目的?
减少代码冗余,封装好方法简化书写。
6.什么是SQL注入问题,该怎样解决?
通过特殊的sql语句字符串传回给数据库,是结果异常。
用prepareStatment方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2