JDBC精讲---第一阶段

★以下是JDBC第一阶段的精讲环节 , 通过以下步骤 , 让同学们初步掌握JDBC技术 , 请同学们务必根据笔记自己操作一番 , 如果由不懂得地方 , 可以加老师微信 : 13453130601进行咨询

一 . 电脑的存储机制

1 . 内存中 , 如果非正常关机就会造成数据丢失 ; 

2 . 硬盘中 , 数据不会丢失 , 也就是持久化技术 ;

二 . 什么是持久化技术 ?

1 . 持久化(persistence) : 将数据存储到可掉电设备中的技术就是持久化技术 , 例如将数据存储到硬盘中 ;

三 . 什么是JPA ?

1 . JavaEE的规范 , Java的持久化API ;

四 . JDBC访问数据库的形式 ?

1 . 在Java中数据库的存储技术只能通过JDBC访问 , 形式主要有直接或者间接的使用JDBC的API访问 ;

2 . 也可以使用第三方工具来访问数据库 , O/R , Mapping工具 , 如Hibernate , MyBatis等(底层依然是JDBC) ;

五 . 什么是JDBC ?

1 . Java DataBase Connectivity , 是一种用于执行SQL语句的Java API , 可以为多种关系数据库提供统一访问 , 由一组Java语言编写的类和接口组成 ;

2 . JDBC提供了一种基准 , 据此可以构建更高级的工具和接口 , 使数据库开发人员能够编写数据库的程序 ;

3 . JDBC的目标是使Java程序员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统 , 这样就使得程序员无需对特定的数据库系统的特点有过多的了解 , 从而简化和加快开发过程 ;

4 . JDBC本身是一个Java连接数据库的一个标准 , 是进行数据库连接的抽象层 , 由Java编写的一组类和接口组成 , 接口的实现是由各个数据库的厂商来完成 ;

六 . JDBC的规范如何体现 ?

1 . JDBC包含的类/接口/方法 , 体现了JDBC的规范 , JDBC本身并没有提供实现 ;

2 . 数据库的实现是由各大数据库厂商来提供的 , 也就是我们说的数据库的jar包(驱动包) ;

七 . 其他注意事项

1 . 在Java的开发过程中 , 使用的关于JDBC的接口全是引用java.sql包中的 , 千万不要引入com.sql.xxx类 , 这是MySQL自带的 ;

八 . 加载注册驱动以及获取链接对象

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

     会把这份字节码文件家在进入jvm , 然后执行其中的静态代码块 , 该静态代码块会执行注册驱动的操作 ;

2 . 获取链接

     通过DriverManager类的getConnection方法来获取链接对象 ; 

     Connection con=DriverManager.getConnection("url","root","password") ;

3 . 参数

     url : 数据库链接 , jdbc:mysql://localhost:3306/DBName ;

     特别注意 :

          ⑴ . 如果链接的是本机的MySQL , 并且端口使默认的3306 , 则可以简写成 : jdbc:mysql:///DBName ;

          ⑵ . 可以用MySQL命令 , show full processlist(如果由root权限则会显示所有线程) 来检测我们是否成功获取了数据库的链接 ;

九 . Statement接口

1 . Statement createStatement() : 创建静态语句对象 ;

2 . 用于执行静态SQL语句对象 , 将SQL语句发送到数据库中去执行 , 并返回执行后的结果 ;

3 . int executeUpdate(String sql) : 执行DDL和DML语句 ;

    ★ DDL : 返回 0 ;

    ★ DML : 返回受影响的行数 ;

4 . ResultSet executeQuery(String sql) : 执行DQL语句 , 返回查询到的结果集对象 ; 

十 . 执行CRUD操作

1 . DDL : 数据定义语言(create , drop , truncate , alter) ;

     DML : 数据操作语言(insert , update , delete) ;

     DQL : 数据查询语言(select , where , group by , having , order by) ;

     DCL : 数据控制语言(grant , revoke , rollback , commit) ;

2 . 执行DDL与DML操作的代码使相同的 , 唯一不同的地方就是sql语句的不同 ;

3 . 执行DDL操作

4 . 执行DML操作

5 . 执行DQL操作

     ⑴ . ResultSet结果集的分析

           ★ 结果集使数据中查询结果返回的一种对象 , 可以说结果集是一种存储查询结果的对象 ;

           ★ 结果集读取数据的方法 :

              getXXX() , 参数可以是表示从第几列开始的整型数据(从1开始) , 还可以是返回结果的列明或者别名 ;

           ★ 如果对应的列没有值 , 则返回该列对应的数据类型默认的空值 ;

           ★ 使用getString() , 可以返回所有列的值 , 不过都是字符串类型 ;

           ★ 执行DQL语句后会产生一个结果集 , ResultSet就是对结果集的封装 ;

     特别注意 :

           在java中只有JDBC和JPA的索引是从1开始的 ;

     原理演示 :

           

     ⑵ . 执行DQL操作

猜你喜欢

转载自blog.csdn.net/dyz4001/article/details/80266198
今日推荐