1,网络要素:
IP: 地址<--解析-->主机名 InetAddress getByName(hostname); getHostAddress getHostName
端口:0-65535
协议:TCP(面向连接,可靠,效率稍低。)---客户端:Socket 服务端ServerSocket
UDP(面向无连接,不可靠,速度快)---发送端,接收端。DatagramSocket ---- DatagramPacket(数据包)
2,udp的聊天。
3,tcp的传输。上传。问题:两端等待的情况。说明有阻塞式方法。没有读取到结束标记。shutdown.
4,web原理:并发访问。。Server端:将来访的客户端都封装到了一个单独线程中。
ServerSocket server = new ServerSocket(10000);
while(true)
{
Socket s = server.accept();
new Thread(new Task(s)).start();
}
------------------------
常见的客户端和服务端有哪些呢?
客户端:浏览器。
服务端:Tomcat(内置了ServerSocket,对外提供了ip地址和默认端口8080,只要开启,外界就可以访问)
如果请求多图片的网页,请求的次数很多, 有多少资源(html文件,图片文件,css文件,js文件等),就需要请求多少次。
浏览器中当然也是内置了如socket一样的客户端程序。
用java模拟:Socket s = new Socket("192.168.1.253",8080);
可是浏览器到底向服务器发送了什么样的请求呢?
怎么验证? 将tomcat服务器换掉,自定义一个服务器接收浏览器的发送的数据。
这样就知道浏览器发送的是什么。
1,自定义服务器。浏览器给服务器发送的请求消息如下。
HTTP协议的请求头消息。
GET / HTTP/1.1 //请求行。请求方式 请求的资源路径 http协议版本。
请求头消息中的属性信息。
Accept: application/x-shockwave-flash, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: 192.168.1.253:9090
Connection: Keep-Alive
空行
//请求体。
--------------------
演示模拟浏览器。
获取tomcat的信息。
HTTP的应答(响应)头消息。
HTTP/1.1 200 OK //应答行 http协议版本 应答状态码 应答描述信息
应答的属性信息。
Server: Apache-Coyote/1.1
Accept-Ranges: bytes
ETag: W/"467-1374891778953"
Last-Modified: Sat, 27 Jul 2013 02:22:58 GMT
Content-Type: text/html
Content-Length: 467
Date: Sat, 27 Jul 2013 02:51:46 GMT
Connection: close
空行
应答体。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<BODY>
<h1>欢迎光临</h1>
<font color="red">这是一个web测试页面!</font>
<font color="red">大家也可以通过 192.168.1.253:8080/myweb/2.html来访问</font>
</BODY>
</HTML>
-----------------------------------------
HTTP1.0:一次连接只能有一次请求应答。
HTTP1.1:一次连接可以有多次请求应答。
-----------------------------------------
网络架构:
两种:
C/S Client Server
特点:
1,客户端和服务端都需要编写。
2,客户端需要维护。
3,客户端可以分担部分运算。
如果大型运算,比如网络游戏。
B/S Browser Server
特点:
1,只需要编写服务端。客户端其实就是已有的浏览器。
2,客户端不需要维护的。
3,运算全在服务器端。
没有合适的资源?快使用搜索试试~ 我知道了~
Java网络编程&Tomcat7&MyEclipse10
共97个文件
class:33个
java:29个
jpg:25个
需积分: 9 18 下载量 109 浏览量
2015-10-14
23:11:55
上传
评论
收藏 3.57MB RAR 举报
温馨提示
附件包含Java网络编程基础详解,如UDP发送端接收端聊天、TCP客户端服务端上传下载等。关于Tomcat7绿色版下载安装,MyEclipse10安装及部署Tomcat,见我的博文:http://blog.csdn.net/zhongkelee/article/details/48712363
资源推荐
资源详情
资源评论
收起资源包目录
Socket.rar (97个子文件)
day26e
bin
ustc
lichunchun
net
tcp2
TCPClient2.class 809B
TCPServer2.class 783B
Server.class 2KB
Client.class 2KB
udp
UDPSendDemo.class 1KB
chat
Rece.class 2KB
ChatTest.class 855B
Send.class 2KB
UDPReceDemo.class 2KB
ip
IPDemo.class 2KB
tcp
TCPServer.class 2KB
test
TransServer.class 2KB
TransClient.class 2KB
TextTransTest.class 440B
uploadpic
UploadPic.class 2KB
UploadPicClient.class 2KB
UploadPicServer.class 1KB
TCPClient.class 1KB
uploadtext
UploadTextClient.class 2KB
UploadTextServer.class 2KB
1.jpg 299KB
server_pic
192.168.105.134(10).jpg 299KB
192.168.105.134(9).jpg 299KB
192.168.105.158(9).jpg 64KB
192.168.105.158(8).jpg 64KB
192.168.105.158(4).jpg 64KB
192.168.105.134(8).jpg 299KB
192.168.105.134(6).jpg 299KB
192.168.105.158(12).jpg 64KB
192.168.105.134(1).jpg 299KB
192.168.105.134(3).jpg 299KB
192.168.105.158(2).jpg 64KB
192.168.105.134(4).jpg 299KB
192.168.105.158(1).jpg 64KB
192.168.105.158(3).jpg 64KB
192.168.105.158(5).jpg 64KB
192.168.105.134(7).jpg 299KB
192.168.105.158(6).jpg 64KB
192.168.105.134(2).jpg 299KB
192.168.105.158(10).jpg 64KB
192.168.105.158(7).jpg 64KB
192.168.105.134(11).jpg 299KB
192.168.105.134(5).jpg 299KB
192.168.105.158(11).jpg 64KB
192.168.105.158(13).jpg 64KB
.settings
org.eclipse.jdt.core.prefs 598B
src
ustc
lichunchun
net
tcp2
TCPServer2.java 1KB
TCPClient2.java 1KB
udp
chat
ChatTest.java 3KB
UDPReceDemo.java 1KB
UDPSendDemo.java 951B
ip
IPDemo.java 812B
tcp
TCPServer.java 1KB
test
TextTransTest.java 401B
TransServer.java 1KB
TransClient.java 1KB
uploadpic
UploadPicServer.java 509B
UploadPic.java 1KB
UploadPicClient.java 1KB
TCPClient.java 1KB
uploadtext
UploadTextServer.java 1KB
UploadTextClient.java 2KB
.project 382B
client.txt 748B
.classpath 301B
server.txt 562B
day27e
bin
ustc
lichunchun
domain
Person.class 1KB
net
url
URLDemo.class 1KB
my
MyServer.class 2KB
MyBrowser.class 1KB
reflect
field
ReflectFieldDemo.class 1KB
test
NoteBookMain.class 2KB
KeyboardByUSB.class 685B
MouseByUSB.class 670B
USB.class 153B
NoteBook.class 816B
method
ReflectMethodDemo.class 2KB
constructor
ReflectDemo2.class 1KB
ReflectDemo.class 1KB
网络编程_final.txt 3KB
usb.properties 95B
.settings
org.eclipse.jdt.core.prefs 598B
src
ustc
lichunchun
domain
Person.java 570B
net
url
URLDemo.java 1KB
my
MyBrowser.java 1KB
MyServer.java 904B
reflect
field
ReflectFieldDemo.java 1KB
test
NoteBookMain.java 1KB
KeyboardByUSB.java 255B
USB.java 99B
MouseByUSB.java 246B
NoteBook.java 224B
method
ReflectMethodDemo.java 1KB
constructor
ReflectDemo2.java 2KB
ReflectDemo.java 2KB
.project 382B
.classpath 301B
共 97 条
- 1
资源评论
李春春_
- 粉丝: 627
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip
- (源码)基于Java和MySQL的学生信息管理系统.zip
- (源码)基于ASP.NET Core的零售供应链管理系统.zip
- (源码)基于PythonSpleeter的戏曲音频处理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功