A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.什么是JDBC,使用JDBC的好处?
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
3.请简述JDBC编程的步骤
4.JdbcUtils存在的目的?
5.什么是SQL注入问题,该怎样解决?

12 个回复

倒序浏览
1.什么是JDBC,使用JDBC的好处?
jdbc本质就是一套操作所有关系型数据库的接口,各个厂商去实现这套接口,提供数据
驱动jar包,我们可以使用这套接口jdbc编程,执行驱动jar包中的实现类

好处就是,我们直接使用各个厂商的各个接口即可,只编写一套代码即可。



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


这个jar包就是实现类,他是jdbc的实现类

3.请简述JDBC编程的步骤

1.导入驱动jar包
2.注册驱动
3.获取数据库连接对象
4.定义sql语句
5.获取执行sql的对象
6.执行sql
7.处理结果
8.释放资源



4.JdbcUtils存在的目的?

这个工具类为了简化代码,提高代码的复用性


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

sql注入问题就是高级的程序员发现的bug,可以通过bug进入一些系统
java给我们提高了解决问题,用PrepareStatment解决




回复 使用道具 举报
1.JDBC是官方定义的一套操作关系型数据库的接口,各数据库厂商自己实现接口实现类,并提供相应的jar包。我们可以通过jdbc操作所有关系型数据库。

2.该jar包为数据库厂商实现的jdbc接口实现类,可以用于对MySQL数据库进行操作。

1.导jar包
2.注册驱动
3.获取连接对象
4.定义sql语句
5.获取执行sql对象
6.执行sql,接收返回数据
7.处理结果
8.释放资源

4.提高代码复用,简洁代码

5.将sql命令注入后台数据库查询引擎去执行的能力,可以通过使用PreparedStatement来解决
回复 使用道具 举报 1 0
1.什么是JDBC,使用JDBC的好处?
        JDBC是java语言控制数据库。是java官方定义的一套用来连接关系型数据库的规则(接口),各个关系型数据库厂商自己定义了接口的实现类来操作自己的数据库,这些实现类也被叫做数据库的驱动。这样使用java编写的一套代码就能操作各个关系型数据库,具体的实现方式是数据库驱动中的方法。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
        JDBC是java官方定义的一套控制关系型数据库的接口,具体的实现类是各个数据库厂商提供的,这些实现类也被叫做数据库的驱动。所以我们要用java代码操作数据库就需要导入对应的数据库驱动才行。mysql-connector-java-5.1.37-bin.jar包就是mySqL数据库的驱动,导入它就能用java代码操作mySqL数据库了。
       
3.请简述JDBC编程的步骤
        1.导入数据库驱动包
        2.注册驱动
        3.创建数据库连接对象
        4.编写SqL语句
        5.创建SqL语句发送对象
        6.可以处理SqL语句发送对象发送数据后返回的结果
        7.释放资源。

4.JdbcUtils存在的目的?
        把java连接数据库的代码抽取出来做成一个工具类,以后需要用到这些抽取的方法,就可以直接调用。简化了代码编写,提高了代码的复用性。

5.什么是SQL注入问题,该怎样解决?
        编写的sql语句中在和java的变量或常量进行字符串拼接操作后,产生了原本不应该出现的Sql语句的关键字,在被发送到数据库中执行后会发生问题。使用PreparedStatement类的对象来发送sql语句,需要在定义sql语句时使用?号来占位,代替java变量或常量,再用PreparedStatement类方法把变量来替代?号。
       
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
JDBC:Java DataBase Connectivity  Java 数据库连接, Java语言操作数据库;
好处:可以使用这套接口(JDBC)编程,它的本质定义了一套操作所有关系型数据库的规则,即接口,然后由各个数据库厂商去实现接口并提供对应的驱动jar包。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
这是由MySQL数据库厂商提供的数据库驱动jar包,我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
3.请简述JDBC编程的步骤
                                1. 导入驱动jar包
                2. 注册驱动
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源
4.JdbcUtils存在的目的?
简化书写实现代码重复问题的解决,易用易读操作方便
5.什么是SQL注入问题,该怎样解决?
在拼接sql字段时,有一些sql的特殊关键字参与字符串的拼接导致了安全性问题,从而直接越过账号密码,如输入随便用户,输入密码:a' or 'a' = 'a
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
答:JDBC是Java语言操作数据库,实质就是定义的一套操作所有关系型数据库的接口。
它的好处是能够用一套Java代码操作所有的关系型数据库。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答:jar包的作用是实现JDBC中的所有接口,真正实现Java语言操作数据库。
它是JDBC接口的实现类。

3.请简述JDBC编程的步骤
答:1.导入jar包
    2.注册驱动
    3.连接数据库
    4.写sql语句
    5.创建sql执行对象
    6.执行sql,接受返回值
    7.处理返回值
    8.释放资源

4.JdbcUtils存在的目的?
答:将共性抽取,简化代码数量,增强代码的复用性。

5.什么是SQL注入问题,该怎样解决?
答:利用字符串拼接的sql查询语句在输入关键字或者特定的语句时,查询到的数据与预期不符的bug,应用preparedStatement来解决出现的问题。
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?

答:JDBC 规范定义接口,具体的实现由各大数据库厂商来实现。
JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动。每个数据库厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以我们只需要会调用 JDBC 接口中的方法即可, 数据库驱动由数据库厂商提供。

好处:(1)程序员如果要开发访问数据库的程序, 只需要会调用 JDBC 接口中的方法即可, 不用关注           类是如何实现的。
      (2)使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库

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

答:由mysql数据库厂商提供,需要额外去下载,是对 JDBC 接口实现的类。每个厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以我们只需要会调用 JDBC 接口中的方法即可。


3.请简述JDBC编程的步骤

答:(1) 注册数据库驱动
    (2) 创建连接对象
    (3) 编写SQL语句
    (4) 创建执行sql语句对象
    (5) 执行sql语句
    (6) 处理结果
    (7) 释放资源

4.JdbcUtils存在的目的?

答:如果一个功能经常要用到,我们建议把这个功能做成一个工具类,可以在不同的地方重用

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

答:我们让用户输入的密码和 SQL 语句进行字符串拼接。用户输入的内容作为了 SQL 语句语法的一部分, 改变了原有 SQL 真正的意义, 以上问题称为 SQL 注入。
解决:要解决 SQL 注入就不能让用户输入的密码和我们的 SQL 语句进行简单的字符串拼接。可以用PreparedStatement 来替换 Statement,PreparedStatement 是 Statement 接口的子接口,继承于父接口中所有的方法
回复 使用道具 举报
本帖最后由 邱昊翔 于 2019-7-10 14:29 编辑

1.什么是JDBC,使用JDBC的好处?
答:JDBC是sun公司定义的一套数据库标准规范,即一套接口,这套接口需要各个数据库的厂商去自己完成实现类,从而让自己的数据库能够通过JAVA语言访问,将实现类封装到jar包中,编程时只需要调用jar包中接口的实现类就好了;
好处:使用同一套java代码,进行少量的修改就可访问其他的数据库了。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答:mysql-connector-java-5.1.37-bin.jar包是mysql数据对jdbc接口的实现类包,使用此实现类创建对象就可以实现使用Java代码与mysql数据库交互, 完成增删改查、开始事务、释放资源等操作。

3.请简述JDBC编程的步骤
答:1.导入驱动jar包
       2.注册驱动
       3.获取数据库连接对象
       4.定义sql语句
       5.获取执行sql的对象
       6.执行sql
       7.处理结果
       8.释放资源
4.JdbcUtils存在的目的?答:简化代码,提高代码的复用性

5.什么是SQL注入问题,该怎样解决?
答:一个bug
      使用PreparedStatement来解决
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
JDBC是Java 数据库连接语句,使用JDBC能够使用一套代码操作所有的关系型数据库

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
导入jar包是为了让各个数据库厂商去实现Java设置的接口,也就是去实现JDBC的接口

3.请简述JDBC编程的步骤
(1)导入驱动,复制jar包到当前模块下,将jar包add as library
(2)注册驱动,Class.forName("com.mysql.jdbc.Driver")
(3)获取连接对象
(4)编写sql语句
(5)通过连接获取语句执行对象
(6)执行sql语句
(7)释放资源

4.JdbcUtils存在的目的?
节省代码

5.什么是SQL注入问题,该怎样解决?
SQL注入是用户登入时存在的安全隐患,通过preparedStatement解决
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?

JDBC就是 sun公司提供给各大数据库厂商的一套接口规范 它的实现类由数据库厂商提供 ,
有了jdbc 我们java程序员编写的一套操控数据库的代码就能操控关系型数据库了 不用修改我们java代码

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
mysql-connector-java-5.1.37-bin.jar 是数据库厂商提供的驱动包 是厂商写好的实现类,
我们导入模块里就可以用JAVA语言操控数据库了
JDBC是一套接口规范 ,厂商提供的驱动就是根据这套接口来编写的


3.请简述JDBC编程的步骤
注册驱动
获取数据库连接
编写SQL语句
获取执行SQL语句对象
执行SQL语句
操作结果
释放资源

4.JdbcUtils存在的目的?
如果没有工具类,我们写代码就会有很多重复的部分,所以我们把重复的代码抽取出来
写入工具类,来提高代码复用性 可读性

5.什么是SQL注入问题,该怎样解决?
SQL注入是,我们用JAVA代码发送的SQL语句 可能会因为 -- 或者其他特殊字符在字符串拼接时形成了SQL语句中的
比如注释 或者 使我们要判断的条件不准确 导致的严重问题
解决办法就是用 prepareStatement方法来发送SQL语句,可以解决注入问题

回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
        jdbc:使用java对数据库的进行操作
        能大大的减少我们使用java对数据库操作是编写的代码数量

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
        里面提供了大量的对应mysql的操作,使用java可以通过jar包对数据库进行操作。

3.请简述JDBC编程的步骤
        1. 导入驱动
        2. 注册驱动
        3. 获取连接对象

        4. 编写sql语句

        5. 通过连接获取语句执行对象

        6. 执行sql语句
        7. 处理返回结果

        8. 释放资源


4.JdbcUtils存在的目的?
        简化了我们平常编写代码的量,使代码可复用

5.什么是SQL注入问题,该怎样解决?
        对用户的输入没有限制,使其输入的内容会对sql语句原本的判断出现安全性的错误,导致结果不在预定的范围内。
        解决:
                1.判断用户的输入是否带有能对sql语句产生影响的标点符号,如果有出现,则提示用户且不执行sql语句
                2.使用PreparedStatement对象,会更加安全高效,能防止出现sql注入问题
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?

官方(sun公司)定义的一套操作所有关系型数据库的接口,由厂商实现接口,提供数据库驱动jar包

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

由mysql提供的实现接口,包含使用JDBC使用所需的实现类

3.请简述JDBC编程的步骤

1. 导包
2. 注册驱动
3. 获取数据库连接对象
4. 定义sql
5. 获取执行sql语句的对象
6. 执行sql,接受返回结果
7. 释放资源


4.JdbcUtils存在的目的?

对获取连接对象和释放资源进行抽取,简化代码,提高代码复用性

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

用户输入字符影响了代码语句,导致异常及非法登录问题
使用PreparedStatement,通过占位符,预编译的方式,防止了SQL注入问题

4.JdbcUtils存在的目的?

对获取连接对象和释放资源进行抽取,简化代码,提高代码复用性

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

用户输入字符影响了代码语句,导致异常及非法登录问题
使用PreparedStatement,通过占位符,预编译的方式,防止了SQL注入问题
回复 使用道具 举报

1.什么是JDBC,使用JDBC的好处?
JDBC是官方定义的一套接口主要和数据库厂商的实现类驱动进行对接,操作数据库。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
JDBC是官方的一套接口,实现类由数据库厂商来执行,这些实现类叫做数据库的驱动, mysql-connector-java-5.1.37-bin.jar就是mysql的驱动。
3.请简述JDBC编程的步骤
1.导入jar包2.配置文件3.注册驱动4.获取连接数据库对象
5.编写sql语句6.获取执行sql对象7.返回结果8.释放资源
4.JdbcUtils存在的目的?
对共性进行抽取提高代码复用率,简化代码。
5.什么是SQL注入问题,该怎样解决?
sql注入就是我们输入的字符曲解了原有的意思成为sql的赋予特殊含义的关键字
成为BUG 用 prepareStatement解决
回复 使用道具 举报

1.什么是JDBC,使用JDBC的好处?
        JDBC是java语言控制数据库。是java官方定义的一套用来连接关系型数据库的规则(接口),各个关系型数据库厂商自己定义了接口的实现类来操作自己的数据库,这些实现类也被叫做数据库的驱动。这样使用java编写的一套代码就能操作各个关系型数据库,具体的实现方式是数据库驱动中的方法。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
        JDBC是java官方定义的一套控制关系型数据库的接口,具体的实现类是各个数据库厂商提供的,这些实现类也被叫做数据库的驱动。所以我们要用java代码操作数据库就需要导入对应的数据库驱动才行。mysql-connector-java-5.1.37-bin.jar包就是mySqL数据库的驱动,导入它就能用java代码操作mySqL数据库了。
        
3.请简述JDBC编程的步骤
        1.导入数据库驱动jar包
        * 复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下(非src目录下)
        * 右键-->Add As Library
        2.注册驱动
        3.获取数据库连接对象
        4.编写sql语句
        5.获取sql语句执行的对象
        6.执行sql语句,接收返回的结果
        7.处理结果
        8.释放资源。

4.JdbcUtils存在的目的?
        把java连接数据库的一些共性代码抽取出来做成一个工具类,以后需要用到这些抽取的方法,就可以直接调用。简化了代码编写,提高了代码的复用性。

5.什么是SQL注入问题,该怎样解决?
        编写的sql语句中在和java的变量或常量进行字符串拼接操作后,产生了原本不应该出现的Sql语句的关键字,在被发送到数据库中执行后会发生问题。使用PreparedStatement类的对象来发送sql语句,需要在定义sql语句时使用?号来占位,代替java变量或常量,再用PreparedStatement类方法把变量来替代?号。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马