Skip to content

Repository files navigation

Java 互联网编程课程学习记录

本仓库收录深圳大学《互联网编程》课程中的编程练习与课程实验,主要使用 Java 完成,内容涵盖 Internet 地址、DNS、TCP Socket、多线程与线程池、URL 资源下载、HTTP 客户端与服务器、Cookie 会话以及并发测试。

仓库按照课程学习顺序组织,重点记录从 Java 网络基础 API 到 HTTP 协议应用的学习过程。

本仓库主要用于保存课程学习成果。代码基本保留完成练习和实验时的原始状态,没有按照生产项目标准重新设计或重构,也不保证在所有新版本 JDK 和操作系统环境中直接运行。

学习路径

InetAddress 与域名/IP 查询
↓
TCP Socket 与并发服务器
↓
URL、文件下载与断点续传
↓
使用原生 Socket 理解 HTTP
↓
HTTP 服务器、客户端、Cookie 与压力测试

内容索引

顺序内容主要知识点主要入口
01编程练习1:Internet 地址InetAddress、本机地址、域名与 IP 相互查询Program1.javaProgram2.java
02实验2:多线程与线程池 TCP 服务器ServerSocket、一连接一线程、线程池、并发客户端、同步日志两套服务器对比实现
03实验3:域名解析与 URL 下载DNS、NetworkInterfaceURL、文件 I/O、HTTP Range 断点续传DomainNameResolver.javaURLDownloader.javaResumeDownloader.java
04编程练习2:Socket 实现 HTTP 客户端手动构造 HTTP 请求、解析响应、重定向、资源下载、SwingSimpleHttpClient.java
05实验4:HTTP 服务器与客户端GET/HEAD/POST、线程池、静态资源、Cookie 会话、压力测试HttpServer.javaHttpClient.javaStressTestClient.java

仓库结构

java-internet-programming/
├── 01-编程练习1-Internet地址/
├── 02-实验2-多线程与线程池TCP服务器/
├── 03-实验3-域名解析与URL下载/
├── 04-编程练习2-Socket实现HTTP客户端/
├── 05-实验4-HTTP服务器与客户端/
├── .gitignore
└── README.md

每个文件夹包含该阶段的源码、原始实验报告和简要说明。课程完成时产生的 .class、IDE 配置和临时运行文件未纳入仓库。

技术主题

  • Java 网络编程:InetAddressNetworkInterfaceURLURLConnection
  • TCP 通信:SocketServerSocket
  • 并发编程:ThreadExecutorService、线程池、CountDownLatch
  • HTTP:请求行、响应头、GET、HEAD、POST、重定向和静态资源
  • 状态管理:Cookie、服务端会话
  • 文件与流:字符流、字节流、文件下载和断点续传
  • 简单界面与测试:Swing、本地 Python 测试服务器、并发压力测试

阅读说明

  • 若想按照课程进度浏览,可从 01 开始依次阅读。
  • 若想先了解综合实验,可直接查看 05-实验4-HTTP服务器与客户端
  • 各文件夹中的 README 会列出主要源码入口和对应实验报告。
  • 实验报告保留了课程完成时的原始内容,包括运行截图、实验过程和个人信息。

作者

黄瑜(Huang Yu) 深圳大学计算机与软件学院 · 软件工程

About

深圳大学《互联网编程》课程学习记录:Java 网络编程、TCP Socket、并发服务器、URL 下载与 HTTP 客户端/服务器

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages