20155234第九周《Java学习笔记》学习总结

教材学习内容总结

  • 数据库本身是个独立运行的应用程序
  • 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找
  • JDBC(Java DataBase Connectivity)是Java联机数据库的标准规范
  • 定义一组标准类与接口,应用程序需要联机数据库时调用这组标准API,标准API中接口会由数据库厂商操作,称为JDBC驱动程序
  • 依操作方式可将驱动程序分为四种类型:JDBC-ODBC Bridge Driver;Native API Driver;JDBC-Net Driver;Native Protocol Driver
  • Connection接口的操作对象是数据库联机代表对象,要取得Connection操作对象,可以通过DriverManager的getConnection(),除了基本的用户名称、密码之外,还必须提供JDBC URL,其定义了连接数据库时的协议、子协议、数据源识别取得Connection对象之后,可以 使用isClosed()方法测试与数据库连接是否关闭。在操作完之后,若确定不再需要连接,则必须使用close()来关闭与数据库的连接,以释放链接是相关的必要资源。
  • 连接数据库,必须要有厂商操作的JDBC驱动程序,必须在CLASSPATH中设定驱动程序JAR文档
  • 要取得数据库联机,必须的几个动作
  • 注册Driver操作对象
  • 取得Connection操作对象
  • 关闭Connection操作对象
  • 使用JDBC加载.class文件方法有四种:
    (1)使用Class.forName()
    (2)自行建立Driver操作接口类的实例(直接撰写代码java.sql.Driver driver = new com.mysql.jdbc.Driver())
    (3)启动JVM时指定jdbc.drivers属性(执行java命令时java -Djdbc.drivers=com.mysql.jdbc.Driver;XXXDriver YourProgram)指定多个驱动程序类,用分号间隔
    (4)设定JAR中/service/java.sql.Driver文档
  • 取得Connection操作对象,“协议”在JDBC URL中总是jdbc开始,“子协议”是桥接的驱动程序、数据库产品名称或联机机制,“数据源识别”标出数据库的地址、端口号、名称、用户、密码等信息
  • 使用Statement、ResultSet
  • 执行SQL,必须取得java.sql.Statement,使用Connection的createStatement()建立Statement对象
  • 取得Statement对象后,使用executeUpdate()(在表中插入一笔数据,返回int结果,表示数据变动的笔数)、executeQuery()(用于SELECT等查询数据库的SQL,返回java.sql.ResultSet对象,代表查询结果,会是一笔一笔的数据),Statement或ResultSet不使用时,使用close()关掉,Statement关闭时,所关联的ResultSet也会自动关闭
  • 日期时间在JDBC中,并不是使用java.util.Date,这个对象可代表的日期时间格式是“年、月、日、分、秒、毫秒”,在JDBC中要表示日期,是使用java.sql.Date,其日期格式是“年、月、日”,要表示时间的话则是使用java.sql.Time,其格式时间为”时、分、秒”,java.sql.Timestamp表示“时、分、秒、微秒”的格式。
  • 在ResultSet时,默认可以使用next()移动数据光标至下一笔数据,而后使用getXXX()方法来取得数据
  • 在数据光标移动的API上,可以使用absolute()、afterLast()、beforeFirst()、first()、last()进行绝对位置移动,使用relative()、previous()、next()进行相对位置移动,移动成功返回true。
  • 可使用isAfterLast()、isBeforeFirst()、isFrist()、isLast()判断当前位置。
  • 使用addBatch()方法来收集SQL,并使用executeBatch()方法将所收集的SQL传送出去
  • JDBC中提供了java.sql.Blob与java.sql.Clob两个类分别代表BLOB与CLOB数据
  • 通过PreparedStatement的setBlob()来设定Blob对象,读取数据时,可以通过ResultSet的getBlob()取得Blob对象
  • 交易简介:隔离行为的支持上,JDBC可以通过Connection的getTransactionIsolation()取得数据库目前的隔离行为设定,通过setTransactionIsolation()可提示数据库设定指定的隔离行为,可设定常数是定义在Connection上对交易不设定隔离行为TRANSACTION_NONE。

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

  • 默认会将注释信息存储于.class文档,可被编译程序或位码分析工具读取,但执行时期无法读取注释信息,在执行时期读取注释信息,用什么方式?
    可以使用java.lang.annotation.Retention搭配java.lang.annotation.RetentionPolicy枚举指定

    错题

    1.正则表达式”(‘|”)(.*?)\1”匹配 “'Hello',"World””的结果是(D):
    A . 不匹配
    B . 'Hello'
    C . "World"
    D . 'Hello',"World"
    解释:反向引用 \1 代表第一个()中的匹配内容
    2.正则表达式“r.t”匹配字符串“rat”的Java 代码表达式是(D)
    A ."rat".matcher("r.t")
    B ."r.t".matcher("rat")
    C .Pattern.compile("rat").matcher("r.t")
    D .Pattern.compile("r.t").matcher("rat")

    代码托管

    结对及互评

    结对搭档

  • 20155226基于评分标准,我给本博客打分:(10)。得分情况如下:
  1. 正确使用Markdown语法(加1分)
  2. 模板中的要素齐全(加1分)
  3. 排版精美的加一分
  4. 代码Commit Message规范的加1分
  5. 进度条中记录学习时间与改进情况的加1分
  6. 感想,体会不假大空的加1分
  7. 教材学习中的问题和解决过程。
  8. 动手写新代码的加1分
    9.代码超过300行加2分

    上周点评博客

  • 20155223
  • 20155314
  • 20155309
  • 20155336
  • 20155230

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

    厚厚的一本《Java学习笔记》终于告一段落了,希望在接下来的项目中能有新的进步。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积)
    目标 5000行 30篇
    第一周 3/3 1/1
    第二周 105/108 1/2
    第三周 205/313 1/3
    第四周 402/710 1/4
    第五周 327/1037 1/5
    第六周 900 /1937 1/6
    第七周 631/2568 2/8
    第八周 780/3348 1/9
    第九周 1140/4488 2/11

    参考资料

  • Java学习笔记(第8版)
  • 《Java学习笔记(第8版)》学习指导

20155234 2610-2017-2第九周《Java学习笔记》学习总结的更多相关文章

  1. 20145322第九周JAVA程序设计基础学习总结

    20145322第九周JAVA程序设计基础学习总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联机数据库的标准规范.它定义一组标准类与接口,应用程序需要 ...

  2. 第九周java学习总结

    20145306<java程序设计>第九周学习总结 教材学习内容总结 第十六章 一.JDBC入门 1.JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据 ...

  3. 20165223《Java程序设计》第九周Java学习总结

    教材学习内容总结 第13章- URL类 InetAddress类 套接字 UDP数据报 广播数据报 Java远程调用(RMI) 教材学习中的问题和解决过程 1. URL类 URL类构造方法: 使用字符 ...

  4. 20175215 2018-2019-2 第九周java课程学习总结

    第十一章 JDBC与MySQL数据库 11.1 MySQL数据库管理系统 下载安装过程略 使用的是MySQL 5.6而非5.7 11.2 启动MySQL数据库服务器 启动和root用户过程略 11.3 ...

  5. 【MarkMark学习笔记学习笔记】javascript/js 学习笔记

    1.0, 概述.JavaScript是ECMAScript的实现之一 2.0,在HTML中使用JavaScript. 2.1 3.0,基本概念 3.1,ECMAScript中的一切(变量,函数名,操作 ...

  6. 第三周JAVA程序设计基础学习总结

    20145322学号 <Java程序设计>第3周学习总结 ## 教材学习内容总结 之前第三章说过Java中主要有基本类型和类类型两种类型系统,第四章主要谈类类型. 类定义时使用class关 ...

  7. 第九周Java实验作业

    实验九 异常.断言与日志 实验时间 2018-10-25 1.实验目的与要求 (1) 掌握java异常处理技术: Java的异常处理机制可以控制程序从错误产生的位置转移到能够进行错误处理的位置. Ja ...

  8. 第九周java动手动脑

    1.使用Files. walkFileTree()找出指定文件夹下所有扩展名为.txt和.java的文件. import java.io.IOException; import java.nio.fi ...

  9. 第九次java课堂笔记

  10. php学习笔记——学习路线图记录

    PHP学习路线图 最全PHP自学指南 W3Cschool小编 2018-04-24 15:23:51 浏览数 (5381) 分享 收录专辑 对于广大零基础的PHP自学者,往往不知道如何系统的学习PHP ...

随机推荐

  1. December 08th 2016 Week 50th Thursday

    Life is a test and this world a place of trial. 人生是一场考试,这个世界就是考场. I have not passed the test yet. I ...

  2. c++计算器后续(1)

    自娱自乐: 大概是一直在说的代码规范,大概是玩一玩,以上. 代码规范: 参考原文:链接 相关节选: 4 程序的版式 4.4规则:较长的语句(>80字符)要分成多行书写. 4.5规则:不允许把多个 ...

  3. 16.1 eclipse设置

    内容:删除注释自动生成:添加自己使用的模板syso:设置字体:设置黑色主题 // 删除注释自动生成,强迫症表示很受不了那个什么自动生成方法注释,所以我把它关了 我之前的截图,删除那个todo的注释行 ...

  4. Mac下的mongodb安装

    mac下的mongodb安装主要有两种方式,一是手工安装,需在官网下载源文件,二是通过homebrew,至于homebrew不做介绍.既然是Mac系统下,我认为直接通过homebrew安装最好,省事还 ...

  5. mysql-5.5 for linux源代码安装

    mysql-5.5 for linux源代码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison ...

  6. Hadoop学习之路(十九)MapReduce框架排序

    流量统计项目案例 样本示例 需求 1. 统计每一个用户(手机号)所耗费的总上行流量.总下行流量,总流量 2. 得出上题结果的基础之上再加一个需求:将统计结果按照总流量倒序排序 3. 将流量汇总统计结果 ...

  7. jmeter接口测试3-正则表达式提取器的使用

    正则表达式的用处很多,最基础的用法 1,断言 2,传参(关联) 例子 1.http请求 2正则表达式提取,想要提取列表列中id,一遍打开列表页 如果是1,每次就会取相同的值!匹配数字的权限高于模板$0 ...

  8. 与MySQL的零距离接触

    存储引擎 查看数据表的创建命令:show create table tbl_name

  9. 深入理解JVM与GC回收

    JVM内存模型 java虚拟机在执行java程序的过程中会把它所管理的内存划分为不同的若干个不同的的数据区域,这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机的进程的启动而存在,有些区 ...

  10. 创建 个人 pod

    创建一个自己的 pod 大致需要以下步骤 创建git repository 编辑.podspec 创建LICENSE(许可证/授权)文件 标记 tag 验证 注册CocoaPods 发布 搜索验证 1 ...