6.JDBC
在上一章,我们完成了MyDb数据库的简单的客户段调用。作为产品我们还封装了驱动程序,并且提供了统一的调用接口。
大家应该知道,市面上有多种数据库产品,比如Oracle,Mysql,DB2...
那么,我们是否可以将这种方式扩展到其他数据库产品中呢?
当然可以,但需要厂商来按我们的接口规则来完成自己的数据库的驱动,显然说服他们并不是很容易的事。
还好Java提供了和我们类似的方式来和数据库进行交互,并且大部分数据库厂商都实现这种方式的驱动程序。
有个专业名称叫JDBC(Java Database Connectivity)。
他提供的接口都在java.sql包中。

我改造了MyDB的驱动来支持JDBC,大家可以从这里下载。
连接客户段代码变成这个样子。

driver.MyDriver驱动代码可以从这里下载:

https://files.cnblogs.com/files/java123vip/src01.zip

是的,只是换了个接口名字和规则名字。
由于大部分数据库都支持JDBC规范,所以我们连接某个厂商的数据库,只需要拿到他的驱动程序和连接字符串规则即可。

接下来我们抛下自己的数据库,来用MySql数据库。
并且创建表product,来完成数据库的查询。

 CREATE DATABASE testdb;
 CREATE TABLE product (
   id INT NOT NULL AUTO_INCREMENT ,
   product_name ) NULL ,
   product_detail ) NULL ,
   PRIMARY KEY (id)
 );

 INSERT INTO product (
   product_name,
   product_detail
 ) VALUES (
   'notebook',
   'mac notebook'
 );

 INSERT INTO product (
   product_name,
   product_detail
 ) VALUES (
   'fruit',
   'apple'
 );

代码如下:

com.mysql.jdbc.Driver的驱动请大家自行从官网下载。

到此为止,你应该对如下知识很熟悉,如果没有很熟悉,请查阅资料补齐。
Java的环境搭建,基本数据类型,数组,判断,循环,类,对象,接口,静态方法,方法调用,TCP/IP协议,数据库操作。
在后续章节中,你需要对上述概念很了解,因为我们将在这些概念的基础上了解数据库读取与展示的更多技术。

版权声明:本教程版权归java123.vip所有,禁止任何形式的转载与引用。

最新文章

  1. WPF仿百度Echarts人口迁移图
  2. SQL SERVER出现大量一致性错误的解决方法
  3. python 基本语法
  4. linux下安装kears
  5. JS - Constructor还可以这样用
  6. P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1
  7. java 文件和流
  8. Android FileUtil(android文件工具类)
  9. What is therelationship between @EJB and ejb-ref/ejb-local-ref?
  10. nodejs,http,get,post,请求
  11. Laravel 数据插入
  12. Android SQLite总结[转载]
  13. API接口开发简述
  14. JavaSE笔记-集合
  15. 【JS】JS格式化文件大小 单位:Bytes、KB、MB、GB
  16. IIS6.0+win2003部署MVC网站的一些问题
  17. 异常处理(throw,throws,try,catch,finally)
  18. wcf返回值报错解析
  19. [原]git的使用(四)---撤销修改
  20. R语言低级绘图函数-abline 转载

热门文章

  1. iOS中 UITableViewCell cell划线那些事 韩俊强的博客
  2. 开源项目——小Q聊天机器人V1.3
  3. 修改android应用包名
  4. myeclipse一直停留在Loading workbench界面上的处理办法
  5. Java EE 之 过滤器入门学习与总结(1)
  6. java 单元测试教程(junit)
  7. m2eclipse Error:ArtifactTransferException: Failure to transfer org.apache.felix:org.apache.felix.res
  8. c# 单元测试工程如何取得当前项目路径
  9. (NO.00002)iOS游戏精灵战争雏形(七)
  10. 小强的HTML5移动开发之路(18)——HTML5地理定位