最近一边在看socket,一边看servlet,感觉这两个好像啊。都能实现客户端和服务器的通信。请问它们之间有什么异同吗?
解决方案 »
- 异常处理问题,输出错误~求指导
- java 内存回收问题
- SimpleDateFormat类怎么将"W"定义为一周开始为周一?
- java.lang.InstantiationException: com.test.Person Why?
- 这么运行不了
- 论区(Programmer)13474690,诚招高手加盟(Asp,.NET,Php,Jsp,Java,网页3剑客等技术都可以互相
- 关于sdk1.4.2在XP下的安装问题
- 菜鸟问题,StringBuffer可以建数组吗?
- c++里面的unsigned char在java里不认,怎么办?
- IDEA配置tomcat启动报错
- 着急呀!!怎样在jsp页面显示数据???
- 关于多线程的Server的 I/O 和连接关闭问题
为了理解,你可以尝试为这两个词组词.
比如通常我们会说"socket连接",也就是说socket是指明两个地址的连接通讯方式.和socket关联的东西大多是服务器,客户端,TCP,UDP,字节流之类的.
而servlet我们会说使用"servlet技术"或"servlet方式",也就是服务器响应客户端的方式,与servlet关联的东西大多是web服务器,浏览器,jsp,asp,asp.net等.
Socket是用于网络通信的接口,如:通过socket上的tcp\ip协议、udp协议通信
servlet则是运行在web容器里的程序,接收http传来的请求和响应该请求
socket的英文原义是“孔”或“插座”。作为4BDS UNIX的进程通信机制,取后一种意思。通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。
Java通过Native API也有类似的实现:java .net.Socket
而所说的Servlet只是让你编写Java web的以Template来表示的一个接口规范,当然,你可以完全用Java Socket来实现自己的一套。Servlet中你的request及response最后都是通过网络传输。