JDBC原理概述
1,JDBC是一套协议,是JAVA开发人员和数据库厂商达成的协议,也就是由Sun定义一组接口,由数据库厂商来实现,并规定了JAVA开发人员访问数据库所使用的方法的掉用规范。
2,JDBC的实现是由数据库厂商提供,以驱动程序形式提供。
3,JDBC在使用前要先加载驱动。
JDBC对于使用者要有一致性,对不同的数据库其使用方法都是相同的。
driver开发必须要实现Driver接口。
数据库驱动的实现方式
JDBC-ODBC桥接式
JDBC网络驱动,这种方式是通过中间服务器的协议转换来实现的
JDBC+本地驱动,这种方式的安全性比较差
JDBC驱动,由数据库厂商实现。
JDBC的API
java.sql包和javax.sql包
DriverManager类(驱动管理器),它可以创建连接,它本身就是一个创建Connection的工厂(Factory)。
Connection接口,会根据不同的驱动产生不同的连接
Statement接口,发送sql语句
ResultSet接口(结果集),是用来接收select语句返回的查寻结果的。其实质类似于集合。
JDBC应用步骤
1,注册加载一个driver驱动
2,创建数据库连接(Connection)
3,创建一个Statement(发送sql)
4,执行sql语句
5,处理sql结果(select语句)
6,关闭Statement
7,关闭连接Connection。
注意:6,7两个步骤势必须要做的,因为这些资源是不会自动释放的,必须要自己关闭
访问Oracle的数据库的驱动名字叫ojdbc14.jar,这个jar文件中出访的驱动程序的.class文件
要使用这个驱动程序,要先将他加到环境变量PATH中。
一,注册加载驱动driver,也就是强制类加载
Class.forName(Driver包名.Driver类名)。
Driver d=new Driver类();
DriverManager.registerDriver(d);
Oracle的Driver的全名oracle.jdbc.driver.OracleDriver
mysql的Driver的全名com.mysql.jdbc.Driver
SQLServer的Driver的全名com.microsoft.jdbc.sqlserver.SQLServerDriver
二,创建连接
DriverManager.getConnection(String url,String username,String password);
Connection连接是通过DriverManager的静态方法getConnection(.....)来得到的,这个方法的实质是把参数传到实际的Driver中的connect()方法中来获得数据库连接的。
Oracle的URL值是由连接数据库的协议和数据库的IP地址及端口号还有要连接的库名(DatebaseName)
Oracle URL的格式
jdbc:oracle:thin:(协议)@XXX.XXX.X.XXX:XXXX(IP地址及端口号):XXXXXXX(所使用的库名)
例:jdbc:oracle:thin:@192.168.0.39:1521:TARENADB
MySql URL的写法
例: jdbc:mysql://192.168.8.21:3306/test
SQLServer URL的写法
例:jdbc:microsoft:sqlserver://192.168.8.21:1433
java -Djdbc.drivers=驱动全名 类名
使用系统属性名,加载驱动 -D表示为系统属性赋值
使用Connection对象获得一个Statement,Statement中的executeQuery(String sql) 方法可以使用select语句查询,并且返回一个结果集 ResultSet通过遍历这个结果集,可以获得select语句的查寻结果,ResultSet的next()方法会操作一个游标从第一条记录的前边开始读取,直到最后一条记录。executeUpdate(String sql) 方法用于执行DDL和DML语句,可以update,delete操作。
注意:要按先ResultSet结果集,后Statement,最后Connection的顺序关闭资源,因为Statement和ResultSet是需要连接是才可以使用的,所以在使用结束之后有可能起他的Statement还需要连接,所以不能现关闭Connection。
分享到:
相关推荐
- 第一天:可能涵盖了Struts的基本概念,如MVC模式、Struts架构、配置文件(struts-config.xml)等。 - 第二天:可能深入讲解了Action类、Form Beans、ActionMapping和ActionForward等关键概念。 - 第三天:可能...
4. **第一天复习要点**: - **ORM原理**的深入讨论,包括对象持久化的必要性和各种持久化手段的优缺点。 - Hibernate的基本结构介绍,以及ORM的概念和作用。 5. **后续复习内容**: - 第二天可能涉及了更具体的...
2022-10-28:第一天,搭建环境,写好基本的工具类,导入相关的资源。写好一个登录模块!太开心了,一步一步地搭建项目,最后看到整个程序运行正确! 2022-10-31:第二天。登录注销功能,修改密码功能,用户管理部分...
这个压缩包中包含了课程的源码实例和每日课程的复习文档,为学习者提供了十五天的学习材料。 1. **Java基础**:学习Java首先要了解其基本语法,包括数据类型、变量、运算符、控制结构(如if语句、for循环、while...
【Java学习100天速成课件】是一份全面且深入的Java学习资源,旨在帮助初学者从零开始逐步掌握这门强大的编程语言。这份资料涵盖了从基础知识到高级技术的多个方面,确保学习者在100天内能够扎实地建立起Java编程技能...
最后一天,学习者会将所学知识应用到一个小型项目中,巩固和复习前面的课程内容,同时对整个训练做一个总结和回顾。 通过这样的27天训练,学习者将能够建立起坚实的Java编程基础,为进一步深入学习Java EE、Spring...
1. 第一天,复习JAVA基础,引入JDBC概念,学习如何用JAVA连接数据库,安装并熟悉MySql和Myeclipse。 2. 第二天,通过实例学习数据库操作,包括表的创建、查询等,熟练掌握Myeclipse,初步理解JDBC。 3. 第三天,深化...
在方立勋的课程中,第一天可能涉及Java环境的搭建和基础语法复习,为后续的Web开发打下坚实的语言基础。第二天至第四天,可能会深入讲解Servlet的生命周期、请求响应处理机制以及JSP的基本使用。第五天到第七天,...
【文件名称列表】虽然未提供具体的文件名,但通常这样的教程会包含多个PPT文件,每个文件可能对应课程的不同章节,如"第一天:Java语言基础"、"第二天:Servlet介绍"、"第三天:JSP基本语法"等,逐步深入,逐步引导...
这一天的课程可能进一步讲解了Servlet生命周期、init()、service()、destroy()方法的使用,以及如何在Servlet中处理GET和POST请求。 2. **JSP(JavaServer Pages)**:JSP是Servlet的另一种表现形式,更方便于视...
在2017年7月10日的这一天,我在南京华信智源教育科技有限公司的工科楼A203进行了Java实训的第七天。指导老师是张明星,我们主要进行了以下几个方面的学习和实践: 一、回顾与数据库编写 上午的课程开始,预留了半...
- **day01**:可能涉及JavaWeb开发环境的搭建,如安装JDK、Tomcat服务器,配置环境变量,以及第一个"Hello, World!"的Servlet程序。 - **day04**:可能讲解了Servlet的详细概念,包括Servlet生命周期,doGet和...
4. **day16_code**:这部分内容可能是课程中涉及的代码实例,涵盖了一天的学习内容。通过查看和运行这些代码,学习者可以实践编程技巧,理解Java与数据库之间的交互,如JDBC(Java Database Connectivity)的使用,...
在压缩包中的"day01"文件夹可能包含了第一天课程的学习内容,通常会涵盖Mybatis的基础知识,如环境搭建、配置文件解析、SqlSessionFactory的创建、Mapper接口的使用等。这些内容是理解Mybatis工作原理的关键步骤。...
通过"java_spring_day01_1.xps"至"java_spring_day05_5.xps"这些课件,学习者可以系统地从第一天开始,逐步深入Spring的世界,了解每个组件的功能和使用方法,最终掌握Spring的全貌,为实际项目开发打下坚实基础。...
第一部分是J2SE(Java 2 Standard Edition)的学习,占据了13天的时间。这一阶段主要是学习Java的基础知识,包括语法、类和对象的概念、异常处理等。通过完成chat、tank和snake这三个项目,学员可以实践并巩固所学的...
获取某日期当月最后一天,可以使用Calendar类设置为下个月第一天再减一天。 5. 数组是固定大小的数据集合,集合如ArrayList、LinkedList、HashSet、HashMap等,提供动态存储和操作功能。 6. 文件和目录操作,如...
- **第3章 广陵学院图书馆管理系统**:本章继续介绍另一个具体项目的开发过程,涉及Swing和JDBC等技术。 #### 五、读者对象 本书不仅适合Java初学者阅读,也适合有一定基础的开发人员作为参考。无论您是希望快速...
│ 淘淘商城第一天笔记.docx │ ├─02.第二天 │ 07.商品类目选择完成.avi │ 01.课程计划.avi │ 02.展示首页.avi │ 03.分页插件01.avi │ 04.分页插件的使用方法.avi │ 05.商品列表展示.avi │ 06.商品类目...
【Java_day18上课资料.zip】是一个包含Java学习资源的压缩包,可能涵盖了第18天教学课程的内容。从标题我们可以推断,这个压缩包是为学习Java编程语言的人准备的,可能包括了课件、代码示例、练习题或者讲义等资料。...