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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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

15 个回复

倒序浏览
1.什么是JDBC,使用JDBC的好处?
JDBC就是一套sun公司制定的规范(一套接口),其他数据库厂商进行java代码连接数据库使用的
好处是:1.程序员如果要开发访问数据库的程序, 只需要会调用 JDBC 接口中的方法即可, 不用关注类是如何实现的。
2.使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
是SQL的驱动,用于实现数据库和Java语言进行操作,是JDBC的实现类。

3.请简述JDBC编程的步骤
1.注册驱动 -- 使用反射形式进行注册驱动,好处 是可以动态的加载驱动类,将来以后切换数据库,只需要修改驱动包名称即可
2.获取连接-- 如果使用的是本机的3306端口的mysql服务可以省略  “jdbc:mysql///db3”,"root","root"
3.获取执行对象 -- statment 普通的执行对象    prepareStatment预编译执行对象
4.执行sql语句-- executeUpdate(用于执行增删改的)、executeQurey(用于执行查询的)
5.处理结果--  增删改的不返回 resultSet,查询的方法返回resultSet对象(也是需要关流的)
6.释放资源-- 如果你执行的是增删改语句,有两个资源需要 释放(statment、collection)
​        如果你执行的是增删改语句,有两个资源需要 释放(statment、collection、resultSet)

4.JdbcUtils存在的目的?
公共代码抽取出来减少代码冗余,简化操作。
减少代码耦合度,修改时只需要修改配置文件即可。

5.什么是SQL注入问题,该怎样解决?
用户传递的参数作为了sql语句语法的一部分,会导致sql语法的失效。
解决办法是使用 prepareStatment预编译执行对象,编写的sql包含?作为占位符
好处:(1)可以结果sql注入问题(2)提高程序的执行效率
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?

JDBC 是 Java 访问数据库的标准规范,本质上是java语言所在公司针对java连接数据库所设计的一套接口,用来连接各种关系型数据库,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动。每个 数据库厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以我们只需要会调用 JDBC 接口中的方法即 可, 数据库驱动由数据库厂商提供。

使用 JDBC 的好处:

(1) 程序员如果要开发访问数据库的程序, 只需要会调用 JDBC 接口中的方法即可, 不用关注类是如何实现的。

(2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库   

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

用来加载连接mysql数据库的驱动,通过jar包实现mysql数据库的连接和操作

是mysql编写jdbc的实现类.

3.请简述JDBC编程的步骤

1 导入驱动包

2.注册驱动(让java知道要加载的驱动的厂商(mysql))

Class.forName("com.mysql.jdbc.Driver");

3.获取数据库连接对象

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db001", "root", "123456");

4.定义sql语句

String sql = "update emp set ename='songxiaobao' where empno=7369";

5.获取执行sql的对象

6执行sql

7 .关闭连接资源.

4.JdbcUtils存在的目的?

简化jdbc编程中重复繁琐的代码,编写通用方法和加载配置文件适用各种数据库的连接.

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

sql在输入查询语句的时候,如果在查询条件加入非法参数,会造成sql漏洞,从而绕过安全检查,达到非法操作的目的

解决:参数化查询,就是在执行查询语句前,将查询条件参数化,进行预编译检查,有效防止sql注入问题.
回复 使用道具 举报

1.什么是JDBC,使用JDBC的好处?
JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。
各个数据库厂商去实现这套接口,提供数据库驱动jar包。
我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类;
JDBC好处:形成一套规范操作所有关系型数据库的规则,大大了节省了程序员学习的时间和成本;

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
我们导入的jar包是mysql实现JDBC接口的实现类,可以通过接口的方法让jar包中的实现类完成我们想要的操作;

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

4.JdbcUtils存在的目的?
1)抽取注册驱动
2). 抽取一个方法获取连接对象
3)抽取一个方法释放资源
抽取共性,节少代码量,提高效率

5.什么是SQL注入问题,该怎样解决?
用户传递参数作为了sql语句执行语法的一部分,会导致sql语法失效
prepareStatment预编译执行对象,编写的sql包含?作为占位符

好处
(1)可以结果sql注入问题(2)提高程序的执行效率

回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
答:
JDBC 是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。
我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
使用 JDBC 的好处:
        1) 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
        2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库。
       
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答:导入的是mysql数据库的驱动包,通过它才可以去操作mysql数据库。
        它是JDBC的实现类对象。

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. 注册驱动
                        1) Class.forName(数据库驱动实现类)
                3. 获取数据库连接对象 Connection
                4. 定义sql
                5. 获取执行sql语句的对象 Statement
                6. 执行sql,接受返回结果
                7. 处理结果
                8. 释放资源
                        1) 释放原则:先开的后关,后开的先关
                        2) 释放代码放在 finally 块
                       
4.JdbcUtils存在的目的?
答:简化书写,避免冗余代码,提高代码质量。

5.什么是SQL注入问题,该怎样解决?
答:在拼接sql时,有一些sql的特殊关键字参与字符串的拼接。会造成安全性问题
        解决sql注入问题:使用PreparedStatement对象来解决
                1) 预编译的SQL:参数使用?作为占位符
                2) 步骤:
                        1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
                        2. 注册驱动
                        3. 获取数据库连接对象 Connection
                        4. 定义sql
                                * 注意:sql的参数使用?作为占位符。 如:select * from user where username = ? and password = ?;
                        5. 获取执行sql语句的对象 PreparedStatement  Connection.prepareStatement(String sql)
                        6. 给?赋值:
                                * 方法: setXxx(参数1,参数2)
                                        * 参数1:?的位置编号 从1 开始
                                        * 参数2:?的值
                        7. 执行sql,接受返回结果,不需要传递sql语句
                        8. 处理结果
                        9. 释放资源
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
    JDBC是java与大部分关系型数据库连接的规则,即接口。使用JDBC简化了程序员学习java成本,只要学习JDBC即可操作大部分关系型数据库。
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
    这个驱动包是mysql数据库编写连接java的实现类包,导入这个包后,java就可以通过JDBC操作mysql数据库。
    JDBC定义操作数据库的接口,这个驱动包内的类实现了JDBC的接口。
3.请简述JDBC编程的步骤
    ①导入驱动jar包②注册驱动③获取数据库连接对象④定义sql语句⑤获取执行sql对象⑥执行sql⑦处理结果⑧释放资源
4.JdbcUtils存在的目的?
    简化代码。
5.什么是SQL注入问题,该怎样解决?
    当用JDBC连接操作数据库,sql是用字符串拼接时,如果用户输入的信息包含mysql操作字符或代码,从而改变原定代码功能,这种情况称为SQL注入问题。
    采用preparedStatement对象接收sql语句。
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
JDBC是一套用于数据库连接的接口,使用JDBC可以统一数据库的操作,使用同一套java代码只要修改少量的配置就可以连接其它数据库。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
导入的jar包是JDBC的实现类,使用JDBC接口进行编程时,实际调用的就是jar包中的类。

3.请简述JDBC编程的步骤
(1)加载、注册驱动
(2)获取数据库连接
(3)获取Statement对象
(4)使用Statement对象执行SQL语句
(5)获取返回的结果集,进行处理
(6)释放资源

4.JdbcUtils存在的目的?
抽取重复的代码,如获取数据库连接、释放资源等,可以在不同的地方调用,不再重复写。

5.什么是SQL注入问题,该怎样解决?
用户输入的内容与SQL语句进行拼接,作为SQL语句的一部分,改变原有SQL语句的意思;
使用预编译技术。
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?

JDBC是Java操作数据库的一套规范,本质是由Sun公司开发人员定义的一套接口,由数据库

厂商去实现这个接口提供接口实现类,是面向接口编程
好处:方便Java程序员操作不同的数据库

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

系?

作用:这个是驱动jar包,可以告诉程序我们使用的是哪一个数据库
关系:是对 JDBC 接口实现的类
3.请简述JDBC编程的步骤

1. 导入驱动jar包
2. 注册驱动
3. 获取数据库连接对象
4. 定义sql,sql的参数使用?作为占位符。
5. 获取执行sql语句的对象
6. 给?赋值:方法: set数据类型(参数1,参数2)
参数1:?的位置编号 从1 开始
参数2:?的值
7. 执行sql,接受返回结果,不需要传递sql语句
8. 处理结果
9. 释放资源

4.JdbcUtils存在的目的?

简化代码的书写,重复代码太多,可以将重复代码抽取成工具类
5.什么是SQL注入问题,该怎样解决?

我们让用户输入的密码和 SQL 语句进行字符串拼接。用户输入的内容作为了 SQL 语句语

法的一部分,改变了原有 SQL 真正的意义,以上问题称为 SQL 注入

解决办法使用PreparedStatement接口
1) 因为有预先编译的功能,提高 SQL 的执行效率。
2) 可以有效的防止 SQL 注入的问题,安全性更高。
回复 使用道具 举报

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

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
实现数据库与java的连接接口 使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类
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. 释放资源

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

5.什么是SQL注入问题,该怎样解决?
用户传递的参数作为了SQL语句执行语法的一部分,会导指SQL语法失效;
解决方法:prepareStatment预编译执行对象,编写的sql包含?作为占位符;
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
答: JDBC就是一套规范(接口), 用来和各个数据库进行java代码连接, 好处就是我们可以使用一套JDBC接口来对各种关系型数据库进行交互

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答: 可以实现用java程序对MySQL数据库里面的表进行增删改查操作, 是在java程序和JDBC连接的桥梁


3.请简述JDBC编程的步骤
答: 1. 注册驱动
     2. 获取连接
     3. 获取执行对象
     4. 执行SQL语句
     5. 处理结果
     6. 释放资源

4.JdbcUtils存在的目的?
答: 简化我们的书写, 去除java程序的冗余

5.什么是SQL注入问题,该怎样解决?
答: 用户传递的参数作为了SQL语句执行语法的一部分, 会导致SQL语法失效, 可以使用PreparedStatement对象, 编写SQL语句包含?作为占位符来解决
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
定义了操作所有关系型数据库的规则(接口),具体的实现类由各大数据库厂商来实现;
好处:(1)程序员如果要开发访问数据库的程序,只需要会调用JDBC接口中的方法即可,
不用关注是如何实现的
          (2)使用同一套java代码,进行少量的修改就可以访问其他JDBC支持的数据库

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
让JAVA了解数据库,是JDBC的实现类

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

4.JdbcUtils存在的目的?
简化书写,在JDBC中会经常用到其中的几个功能,做成一个工具类,可以在不同的地方重用

5.什么是SQL注入问题,该怎样解决?
我们让用户输入的密码和SQL语句进行字符串拼接,用户输入的内容作为SQL语句语法的
的一部分,改变了原有SQL真正的意义。
解决:不能让用户输入的密码和我们SQL语句进行简单的字符串拼接。
回复 使用道具 举报

1.什么是JDBC,使用JDBC的好处?
JDBC是Java官方定义的一套操作数据库的接口。
使用JDBC的好处:JDBC规定了操作数据库的接口,并且接口的实现类即数据库驱动由各个数据库厂家提供,Java程序员不需根据不同数据库编写实现类对象,只需要调用JDBC接口
中的方法就能够进行数据库连接操作。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
mysql-connector-java-5.1.37-bin.jar包即mysql提供的JDBC实现类对象,即数据库驱动,它是MySQL数据库厂商根据Java语言提供的JDBC接口所编写的能够实现Java中JDBC接口的
一套实现类。

3.请简述JDBC编程的步骤
1.导入jar包
2.加载驱动
3.获取Collection对象
4.定义sql语句
5.预编译sql,用prepareStatement(防止sql注入)
6.给prepareStatement对象赋予参数。
7.执行sql语句
8.释放资源。

4.JdbcUtils存在的目的?
目的:简化代码的书写,减少冗余。

5.什么是SQL注入问题,该怎样解决?
sql注入:在拼接sql语句时,在sql中有一些特殊的关键字参与字符串拼接,会造成数据库的安全问题。
解决方法:用Statement类的子类对象prepareStatement替代,且在sql语句中的参数用占位符"?"代替。
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
答:JDBC就是一套sun公司制定的规范(一套接口),其他数据库厂商进行java代码连接数据库使用的;
2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答:各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
3.请简述JDBC编程的步骤
答:
1. 注册驱动
2. 获取数据库连接对象 Connection
3. 定义sql
4. 获取执行sql语句的对象 Statement
5. 执行sql,接受返回结果
6. 处理结果
7. 释放资源
4.JdbcUtils存在的目的?
答:目的:简化书写;
5.什么是SQL注入问题,该怎样解决?
答:SQL注入问题:在拼接sql时,有一些sql的特殊关键字参与字符串的拼接,会造成安全性问题。使用PreparedStatement对象来解决。
回复 使用道具 举报

1.什么是JDBC,使用JDBC的好处?
答:
JDBC是官方提供的一套操作所有关系型数据库的规则,即接口。所有数据库厂商想用Java语言去操作自己的数据库都要去实现这一套接口。提供数据库举动jar包。
好处:更换使用的数据库时只需要更改数据库厂商提供的驱动jar包,不需要更改源代码。

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
答:
告诉系统我们需要操作的数据库是哪个厂商的。
他是mysql数据库厂商实现了JDBC接口的所有实现类的集合。

3.请简述JDBC编程的步骤
答:
1、导入jar包
2、注册驱动
3、获取数据库连接对象
4、创建sql语句
5、获取sql执行对象
6、执行sql语句并获取结果
7、释放资源

4.JdbcUtils存在的目的?
答:
让注册驱动和数据库连接对象可以通过配置文件动态生成,如果需要更改数据库,只需要更改配置文件,不需要去改动源代码。
5.什么是SQL注入问题,该怎样解决?
答:
使用 PrepareStatement预编译执行对象,通过编写sql包含 ?占位符,防止sql注入问题。
回复 使用道具 举报

1.什么是JDBC,使用JDBC的好处?

答:        JDBC就是使用Java语言操作数据库,本质是一套官方定义的操作数据库的规范(接口)。
        好处就是各个数据库厂商会去实现这套接口,提供数据库驱动jar包,然后我们使用JDBC编程,真正执行的代码是驱动jar包中的实现类。

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

答:        这个是mysal提供的数据库驱动jar包,里面包含了实现JDBC接口的实现类。我们使用JDBC编程,真正执行的代码是驱动jar包中的实现类。

3.请简述JDBC编程的步骤

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

4.JdbcUtils存在的目的?

答:        JdbcUtils工具类可以将冗余的代码封装,达到代码复用的作用,简化代码的书写。

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

答:        用户传入的参数作为了SQL语句语法的一部分,会导致SQL语法的实效。
        使用PrepareStatement预编译执行对象,SQL语句使用?占位符,可以解决SQL注入问题。
回复 使用道具 举报
1.什么是JDBC,使用JDBC的好处?
JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。
各个数据库厂商去实现这套接口,提供数据库驱动jar包。
我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类;
JDBC好处:形成一套规范操作所有关系型数据库的规则,大大了节省了程序员学习的时间和成本;

2.我们导入的 mysql-connector-java-5.1.37-bin.jar包,有什么用,他和JDBC有什么关系?
我们导入的jar包是mysql实现JDBC接口的实现类,可以通过接口的方法让jar包中的实现类完成我们想要的操作;

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

4.JdbcUtils存在的目的?
1)抽取注册驱动
2). 抽取一个方法获取连接对象
3)抽取一个方法释放资源
抽取共性,节少代码量,提高效率

5.什么是SQL注入问题,该怎样解决?
用户传递参数作为了sql语句执行语法的一部分,会导致sql语法失效
prepareStatment预编译执行对象,编写的sql包含?作为占位符

好处
(1)可以结果sql注入问题(2)提高程序的执行效率
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马