20155211 2016-2017-2 《Java程序设计》第九周学习总结

教材学习内容总结

第十六章 整合数据库

一、JDBC入门

(一)JDBC简介

厂商在操作JDBC驱动程序时,依操作方式可将驱动程序分为4种类型

1.JDBC-ODBC Bridge Driver

  • 将JDBC调用转换为对ODBC驱动程序的调用,由ODBC驱动程序操作数据库
  • 功能受限,弹性不足

2.Native API Driver

  • 以原生方式调用数据库提供的原生链接库,JDBC的方法调用都会转换为原生链接库中的相关API调用
  • 速度优势

3.JDBC-Net Driver

  • 将JDBC方法调用转换为特定的网络协议调用,远程与数据库特定的中介服务器或组件进行协议操作
  • 速度较慢,获得架构弹性

4.Native Protocol Driver

  • 将JDBC调用转换为与数据库特定的网络协议,以与数据库进行沟通操作
  • 可以跨平台,不需要获得架构弹性时使用
(二)连接数据库

1.注册Driver对象:调用registerDriver()方法

2.取得Connection操作对象:getConnection()

3.关闭Connection操作对象:close()(isClosed()方法可以测试与数据库的连接是否关闭)

(三)使用Statement、ResultSet

1.要执行SQL,必须取得java.sql.Statement操作对象

2.使用createStatement()建立Statement对象

3.executeQuery():用于SELECT等查询数据库的SQL,返回java.sql.ResultSet对象

4.executeQuery():返回int结果

(四)使用PreparedStatement、CallableStatement
  • 如果有些操作只是SQL语句中某些参数会有不同,其余相同,则可以使用java.sql.PreparedStatement
  • 使用preparedStatement()方法建立好预先编译的SQL语句,参数变动部分用“?”
  • 使用executeUpdate()和executeQuery()方法让SQL执行生效
  • 执行完毕,调用clearParameters()清除设置参数

教材学习中的问题和解决过程

  • 对p509页的代码中关于collecetion语法的部分不是很理解
  • java collection

代码调试中的问题和解决过程

  • 同上

代码托管

(statistics.sh脚本的运行结果截图)

上周考试错题总结

  • Linux中使用cp命令拷贝目录时要加上()选项。-r/-R
  • 只知道-R,并没有注意到-r
  • 正则表达式”(‘|”)(.*?)\1”匹配
  • “'Hello',"World””的结果是()不匹配
  • 被多选题所迷惑
  • 正则表达式 zo* 匹配()z
  • 可以是0次
  • 正则表达式 r.t 能够匹配字符串()rat/rut
  • r.t . 表示r开着,中间为任意字符接着为t的三字母字符串

结对及互评

点评过的同学博客和代码

其他(感悟、思考等,可选)

这周学习后最大的感悟就是,不管自己真正学到了什么东西,但好说歹说也算把这本厚厚的java学习笔记基本过了一遍。虽然自己很多东西都模棱两可,但也算完成了一项任务,自己还是感觉有一点成就感。虽然在实验二中依然发现有许多东西自己还不甚清晰,但是在接下来的学习过程中相信自己会弥补的。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第九周 374/600 2/2 30/40

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:40小时

  • 实际学习时间:30小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料

20155211 2016-2017-2 《Java程序设计》第九周学习总结的更多相关文章

  1. 201521123027 <java程序设计>第九周学习总结

    1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2.书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什 ...

  2. 20145220java程序设计第九周学习总结

    20145220java程序设计第九周学习总结 教材学习内容总结 JBDC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商对接口直接操作,开发人员无须接触底层数据可驱动程序的差异 ...

  3. 201771010134杨其菊《面向对象程序设计java》第九周学习总结

                                                                      第九周学习总结 第一部分:理论知识 异常.断言和调试.日志 1.捕获 ...

  4. 201521044152<java程序设计>第一周学习总结

    本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...

  5. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  6. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  7. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

  8. 马凯军201771010116《面向对象与程序设计Java》第九周学习总结

    一.理论知识部分 异常.日志.断言和调试 1.异常:在程序的执行过程中所发生的异常事件,它中断指令的正常执行. 2.Java的异常处理机制可以控制程序从错误产生的位置转移到能够进行错误处理的位置. 3 ...

  9. 201521123063 JAVA程序设计 第二周学习总结

    1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...

  10. 《Java》第九周学习总结

    下载mysql 选择mysql的管理软件 idea可以直接连接 然后用库运行程序,但是没有截图,,因为想在navicat上试试,可惜速度太慢了 打开idea又很慢,所以明天再更新

随机推荐

  1. 【日常记录】【unity3d】 获取手柄轴的输入

    参考 https://blogs.msdn.microsoft.com/nathalievangelist/2014/12/16/joystick-input-in-unity-using-xbox3 ...

  2. leetcode题解之分解字符串域名

    1.题目描述 A website domain like "discuss.leetcode.com" consists of various subdomains. At the ...

  3. JBoss jmx-console中的秘密

    JBoss jmx-console中的秘密 https://wenku.baidu.com/view/fe196f047cd184254b35351d.html

  4. Elasticsearch部分节点不能发现集群(脑裂)问题处理

    **现象描述** es1,es2,es3三台es组成一个集群,集群状态正常, 当es1 服务器重启后,es1不能加到集群中,自己选举自己为master,这就产生了es集群中所谓的“脑裂” , 把es1 ...

  5. Top 25 Most Frequently Asked Interview Core Java Interview Questions And Answers

    We are sharing 25 java interview questions , these questions are frequently asked by the recruiters. ...

  6. Celery学习---Celery 分布式队列介绍及安装

    Celery介绍和基本使用 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery, ...

  7. 铁乐学python_day10_作业

    1.继续整理函数相关知识点,写博客. 2.写函数,接收n个数字,求这些参数数字的和.(动态传参) def sum_n(*args): sum = 0 for i in args: sum += i r ...

  8. idea插件 总结 自认用比较不错的插件的总结

    1.Background Image Plus 设置你喜欢的图片,提升你编码逼格!还可以设置以轮播图的形式变换图片 还可以设置图片的透明度等现实的方式 2.CodeGlance 类似SublimeTe ...

  9. 如何处理高并发情况下的DB插入

    1.  我们需要接收一个外部的订单,而这个订单号是不允许重复的 2.  数据库对外部订单号没有做唯一性约束 3.  外部经常插入相同的订单,对于已经存在的订单则拒绝处理 对于这个需求,很简单我们会用下 ...

  10. Extjs tree 过滤查询功能

    转载: http://blog.csdn.net/xiaobai51509660/article/details/36011899 Extjs4.2中,对于treeStore中未实现filterBy函 ...