JDBC

1.定义: jdbc: java database connectivity java与数据库的连接.

2.角色分类

服务器 (db): a)、接收 sql b)、执行 sql c)、返回结果

客户端 (java):a)、接收数据 b)、组装sql c)、发送SQL(与数据库建立联系) d)、分析结果

3.面向对象编程: (1)java 制定标准 ,不同的数据库厂商实现 接口即可。java 中提供的接口 java.sql.* 包下,常用接口如下

(2) 、oracle厂商实现接口 (jar)

F:appAdministratorproduct11.2.0dbhome_1jdbclibojdbc6.jar视安装路径而定

4.实现步骤:

加载驱动(选择数据库);获取连接(和数据库练习上了);获取处理快(构建一个执行和发送sql的对象);准备sql语句;发送|执行sql;获取到结果集;关闭资源.

具体示例如下:

5. 、处理块

(1)静态处理块 Statement

Statement 是Java 执行数据库操作的一个重要接口,用于在已经建立数据库连接的基础上,向数据库发送要执行的 SQL语句。Statement对象,用于执行不带参数 的简单SQL语句。

执行静态 SQL 语句并返回它所生成结果的对象。

1)、创建 : 连接.Connection.createStatement()

2)、执行 :

ddl -->execute(dd语句) -- 通常不会在代码中执行 dml -->executeUpdate(dml语句) select -->executeQuery(select)

3)、特点:处理 不变的静态的 sql语句 优点: 直接查看sql ,方便处理错误 缺点:性能不高 拼接 sql麻烦 可能存在 sql注入

(2)预处理块 PreparedStatement

PreparedStatement 接口继承了Statement,并与之在两方面有所不同:有人 主张,在JDBC应用中,如果你已经是稍有水平开发者,你就应该始终以 PreparedStatement代替Statement.也就是说,在任何时候都不要使用 Statement。

由于 PreparedStatement 对象已预编译过,所以其执行速度要快于 Statement 对象。因此,多次执行的 SQL 语句经常创建为 PreparedStatement 对象,以提高效率。

1)、创建:创建:连接.prepareStatement(sql)

2)、执行:

存在? ,先填充参数再执行

ddl -->execute() dml -->executeUpdate() select -->executeQuery()

3)、特点 :处理 不变的静态的 sql语句 |可变的 sql语句 带 ? 的 sql 优点:性能高,方便编写sql 不存在sql注入 安全 缺点:不能直接打印sql语句 不方便处理错误.

6. 、分析

执行完SQL语句后可能成功也可能失败,如果成功,有数据则我们很大一部分情况是 需要获取查询的结果。数据就是一切

ddl:没有异常就是成功  dml: 结果>0就是成功  select:分析结果集

对于select的结果集进行分析,类似于迭代器, 先判断(移动)再获取

next() getXxx(索引|列名|别名).

7. 释放资源

释放资源的原则是 先打开的后关闭, 则我们的顺序一般为:

结果集->处理块->连接

8.具体事例:

java 接口返回不带双引号_数据库与java连接的奥秘相关推荐

  1. 在屏幕上输出你好的python语句是_编程实现:在屏幕上输出中文字符“你好,世界”。(输出结果中不带双引号)_学小易找答案...

    [填空题]借战死者诉说战争灾难的汉乐府诗是( ). [判断题]15 的倍数有 15 . 30 . 45 . ( ) [填空题]表现贫民意欲反抗的汉乐府诗是( ). [判断题]不可以在同一台计算机上安装 ...

  2. SpringMVC ResponseBody返回字符串带双引号解决

    2019独角兽企业重金招聘Python工程师标准>>> 我使用的spring version:4.3.4 1.为什么出现双引号? 主要是因为在返回的字符串不是json格式,同时又被默 ...

  3. java 中多个双引号_如何在Java String中用单个双引号替换两个双引号?

    我正在读取CSV文件,并且有一些值,例如 field 1 field 2 field 3 1 test case1 expecting one, and \"two\", and ...

  4. springmvc请求返回一个字符_response 返回 带双引号 的字符串解决办法 springmvc

    引用自:https://blog.csdn.net/zhaoya_huangqing/article/details/48036839 一.在组成SQL语句并发送命令时完全按照Python中的样式去传 ...

  5. oracle列别名带双引号笔记

    场景 oracle报错: java.sql.SQLSyntaxErrorException: ORA-00904: "t"."user_account": in ...

  6. java接口返回pdf时修改文件名称问题

    最近遇到一个问题,java接口返回一个pdf文件,浏览器直接预览,但是预览时显示的文件名称不是在响应头中设置的filename值. 一.问题 未改动代码 测试Controller: @RequestM ...

  7. Oracle select表要带双引号的原因

    目录 一.问题描述 二.解决方法 一.问题描述 Oracle select 语句查询表时,有时需要带上双引号""才能查询出来. 二.解决方法 原因是该表创建时就带上了双引号: se ...

  8. Java字符串打印后包含双引号方法

    目的 Java字符串标准输出打印包含双引号方法 方法 将要打印的双引号进行转义 代码 @SpringBootTest(classes = {SpringTestApplication.class}) ...

  9. java替换字符串中的 “ 双引号 并添加正 斜杠 \)

    java替换字符串中的 " 双引号 并添加正 斜杠 \ java替换字符串中的 " 双引号 并添加正斜杠 \ 解决方案很多.像我一样强行死磕(吐血),或者换别的传参方式.(理论上后 ...

最新文章

  1. b站弹幕 xml php 乱码,B站弹幕Python爬行XML响应中的代码转换问题,python,之,取,b,xml,时,转码...
  2. win7编程接口的一些变化
  3. 如何建立一个数据分析团队?
  4. 通过Ajax方式上传文件(input file),使用FormData进行Ajax请求
  5. 在密码学研究方面不断创新突破—— 女密码学家的成功密码
  6. 因为加班,错过77万年终大奖,你还加班?
  7. yii2.0 错误处理
  8. I.MX6 wm8962 0-001a: DC servo timed out
  9. limesurvey的问卷类型
  10. JavaScript注释的运用
  11. 你还在纠结英语的发音问题吗,你还老记不住单词吗?
  12. 用热点上网属于计算机网络吗,如何使用手机热点连接笔记本电脑上网?
  13. 大学计算机基础贾宗璞答案,大学计算机应用基础C教学大纲
  14. 要点初见:Stable Diffusion NovelAI模型优质文字Tag汇总与实践【魔咒汇总】
  15. RTE2020首批嘉宾公布 技术+行业专家携手顶级投资人参会
  16. 输入身份证号自动算出年龄,出生日期,性别
  17. 海思hi3519a的MIPI用法
  18. 【转载】 身份证号码校验(15位和18位都可以)
  19. 【Python虫师】多窗口定位
  20. Python基金投资回测

热门文章

  1. 【干货】2020年陆奇最新万字演讲:世界新格局下的创业创新机会.pdf(附下载链接)...
  2. 【报告分享】中国都市圈发展报告:城镇化白皮书5.0.pdf(附下载链接)
  3. 当自己颓废的时候怎么激励自己?深度好文!!!
  4. 全球首发!惯性导航导论(剑桥大学)第七部分
  5. 【王牌选手分享】一发问鼎!鹅厂大神上分思路,助你玩转初赛!
  6. 腾讯广告:广告场景下有哪些视觉算法应用?
  7. 对比学习在NLP和多模态领域的应用
  8. 万字综述,GNN在NLP中的应用,建议收藏慢慢看
  9. 知识图谱|各生命周期主流算法 实践
  10. android代码zip怎么用,Rxjava Android如何使用Zip操作符