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

教材学习内容总结

  • 计算机网络,是指分布在不同地理区域的计算机用通信线路互连起来的一个具有强大功能的网络系统。网络中的主机之间通过网络协议来交流和联系。
  • 根据计算机网络的区域大小,可以把网络分为局域网(LAN)和广域网(WAN)。Internet是全球范围的广域网,不同的网络之间的互联靠网络上的标准语言--TCP/IP协议。
  • OSI参考模型:
    国际标准化组织(iOS)研究了一种用于开放系统互联(OSI)的体系结构,将网络分为七层,从下往上依次是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,如下图所示。每一层使用下层提供的服务,并为上层提供服务。
  • TCP/IP参考模式和TCP/IP协议:
    IOS制定的OSI参考模式提出了网络分层的思想,但并没有投入到实际运用。与OSI模型类似的TCP/IP参考模型借鉴了OSI分层的思想,对其进行了简化,并在网络各层(除了主机-网络层外)都提供了完善的协议。TCP/IP参考模型分为4个层次:应用层、传输层、网络互联层和主机-网络层,如下图所示。每一层都有相应的协议。
  • IP协议:
    IP网络中的每一台主机都有一个唯一的IP地址,IP地址是一个32位的二进制灱序列。IP地址由两部分组成:IP网址和IP主机地址。
  • 网络掩码用来确定IP地址中哪个部分是网址,哪个部分是主机地址。把网络掩码与IP地址进行二进制与操作,得到的就是IP网址。主机实际上有两个不同的地址:物理地址和IP地址,物理地址才是主机的真实地址。当主机A向主机B发送数据包的时候,会通过地址解析协议将主机B的IP地址解析为物理地址,然后把包发给主机B。
  • 域名:
    域名与IP地址一一对应。例如JavaThinker网站的域名为www.javathinker.org,对应的IP地址为221.130.187.148。DNS协议采用DNS服务器来提供把域名转换为IP地址的服务。
  • 端口:
    端口不是物理设备,而是用于标识进程的逻辑地址。更确切的说,是用于标识TCP连接的端点的逻辑地址。客户进程的端口一般由所在主机的操作系统动态分配。TCP和UDP都用端口来标识进程,在一个主机中,TCP端口和UDP端口的取舍范围是各自独立的,允许存在取值相同的TCP端口与UDP端口。
  • 客户/服务器通信模式:
    在通信的两个进程中,一个为客户进程,一个为服务器进程。客户进程向服务器进程发出请求,服务器进程响应请求,并返回给客户进程响应结果。一个服务器进程可同时为多个客户进程服务。接下来介绍的Java网络程序都是建立在TCP/IP的基础上,致力于实现应用层。传输层向应用层提供套接字Socket接口,Socket封装了下层的数据传输细节,应用层的程序通过Socket来建立与远程主机的连接,以及进行数据传输。

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

  • 问题一:java密码学构架
  • 问题一解决方案:密码服务提供者
    java.security.Provider是所有的安全提供者的基类。每一个密码安全提供者都包含这个类的实例,这个实例提供了提供者的名称和实现的安全算法列表。当需要某个算法的实例的时候,JCA框架会查询提供者的数据库,如果找到合适的算法,就会创建实例。
    提供者保包含了实现了声明的密码算法的一个包(一系列包)。每个jdk的安装包都会安装一个或者多个提供者并按照默认的方式来排序。额外的提供者可以动态或者静态的添加(参见Provider和Security类)。客户可以配置运行环境为自己偏好的顺序。也就是指请求提供的服务却没有指定具体的提供者的,JCA框架查找提供者的顺序。

  • 问题二:什么是长连接?
  • 问题二解决方案:长连接也就是这个socket连接一直保持连接,也就是通道一直保持通畅,两个对端可以随时发送和接收数据;短连接就是我们发送一次或有限的几次,socket通道就被关闭了。首先,我们必须明白的是socket连接后,如果没有任何一方关闭,这个通道是一直保持着的,换句话说,如果任何一方都不关闭连接,这个socket连接就是长连接,因此Java中的socket本身就是支持长连接的。

代码托管

  • 代码量截图:

上周考试错题总结

暂时不知道错题情况,数据库仍需要更深入的学习

结对及互评

点评过的同学博客和代码

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

java的学习已经进入了成熟阶段了,按照娄老师的教学方式好多同学已经有了及格的分数,随着时间的积累,大家会能可观的看到自己的努力和进步。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积)
目标 3000行 30篇 200小时
第一周 5/5 1/1 10/10
第二周 36/41 1/2 12/24
第三周 271/312 1/3 20/44
第四周 577/889 1/4 25/69
第五周 520/1409 1/5 25/94
第六周 884/2293 1/6 20/114
第七周 404/2697 2/8 10/124
第八周 599/3296 1/9 20/144
第九周 1610/4906 2/11 20/164
第十周 361/5267 1/12 10/174

参考:软件工程软件的估计为什么这么难软件工程 估计方法(http://www.cnblogs.com/xinz/archive/2011/04/06/2007294.html)

参考资料

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

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

    1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 异常: 多线程: 2.书面作业 Q1.finally 题目4-2 1.1 截图你的提交结果(出现学号) 1.2 ...

  2. Java程序设计第十周学习总结

    Java课程知识梳理: 流的区分; 字符流与字节流的区别: 字节流是直接操作文件本身的,如果没有关闭字节流操作,文件会依然输出内容 而字符流在程序运行之后会发现文件没有任何的内容,这是因为字符流操作的 ...

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

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

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

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  5. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  6. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

  7. 20145237 《Java程序设计》第九周学习总结

    20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...

  8. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  9. 20172325 2018-2019-2 《Java程序设计》第九周学习总结

    20172325 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 图的定义 图是由顶点集(VertexSet)和边集(EdgeSet)组成,针对图G,顶点集和 ...

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

    20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...

随机推荐

  1. css 常用的几种垂直居中(包括图片)

    我知道现在有非常多的水平垂直居中的写法,我就写一些我自己常用的方法,同时说明一下优缺点 <div class="wrapper"> <div class=&quo ...

  2. 【转】设置Qt应用程序图标及应用程序名

    一直以来很纠结给qt应用程序添加图标问题,在网上收过一次,但是感觉不够完整,现将自己的实现过程记录下,以便以后查看: 通过网上的例子知道qt助手中有相关说明: Setting the Applicat ...

  3. LeetCode题解之Unique Email Addresses

    1.题目描述 2.问题分析 将字符串中的 ‘.’ 去掉,将 ‘+’后面直到‘@’的字符串去掉,然后利用set的特性. 3.代码 int numUniqueEmails(vector<string ...

  4. ORACLE-SQL微妙之处

    本文总结一下平时经常使用的SQL语句以及一些ORACLE函数的微妙之处.欢迎大家多多补充平时最常用的SQL语句,供大家学习参考. SQL> select * from temp2; NAME S ...

  5. 移除jboss响应中的中间件信息

    JBoss 4.2 Suppressing the X-Powered-By header in JBoss 4.2.x can be done by modifying the web.xml fi ...

  6. db2错误代码大全

    ---恢复内容开始--- sqlcode sqlstate 说明000 00000 SQL语句成功完成01xxx SQL语句成功完成,但是有警告+012 01545 未限定的列名被解释为一个有相互关系 ...

  7. 【待补充】[Python_1] Python 安装

    0. 说明 安装教程网上有很多,等下次安装再补充笔记 Python 下载地址

  8. 安装 Scala

    0. 说明 Scala 安装(Windows)  &  Scala 安装(Linux) 1. Scala 安装(Windows) 1.0 下载 Scala  下载地址 1.1 运行 Scala ...

  9. django中url 和 path 的区别

    django中 url 和 path 都是配置路径,有什么不同? django.urls path django.conf.urls  url path 与 url 是两个不同的模块,效果都是响应返回 ...

  10. 乘风破浪:LeetCode真题_030_Substring with Concatenation of All Words

    乘风破浪:LeetCode真题_030_Substring with Concatenation of All Words 一.前言    这次我们还是找字符串的索引,不过,需要将另一个字符串列表中的 ...