
1:通过IP来识别是哪台计算机(唯一标识Interner上的计算机) 通过端口号来判断是计算机上的那个软件
2.提供网络通信协议:TCP/IP协议
127.0.0.1 或者localhost都表示本机服务器
ip在java中使用InetAddress
package com.class4.class4_24;
import org.junit.Test;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
/**
* 夏晖出品!
* 必属精品!!
**/
public class Demo_1 {
@Test
public void client() {
Socket socket = null;
OutputStream outputStream = null;
try {
InetAddress inetAddress = InetAddress.getByName ("127.0.0.1");
socket = new Socket (inetAddress , 8890);
outputStream = socket.getOutputStream ();
outputStream.write ("我是客户端的哦,没想到吧".getBytes ());
} catch (IOException e) {
e.printStackTrace ();
} finally {
if(outputStream!= null) {
try {
outputStream.close ();
} catch (IOException e) {
e.printStackTrace ();
}
}
if(socket!=null) {
try {
socket.close ();
} catch (IOException e) {
e.printStackTrace ();
}
}
}
}
@Test
public void service(){
ServerSocket serverSocket = null;
Socket accept = null;
InputStream inputStream = null;
ByteArrayOutputStream byteArrayOutputStream = null;
try {
serverSocket = new ServerSocket (8890);
accept = serverSocket.accept ();
inputStream = accept.getInputStream ();
byteArrayOutputStream = new ByteArrayOutputStream ();
byte[] bytes = new byte[5];
int len = 0;
while((len = inputStream.read (bytes)) != -1){
byteArrayOutputStream.write (bytes , 0 , len);
}
System.out.println (byteArrayOutputStream.toString ());
} catch (IOException e) {
e.printStackTrace ();
} finally {
if (accept!= null){
try {
accept.close ();
} catch (IOException e) {
e.printStackTrace ();
}
}
if(serverSocket!= null){
try {
serverSocket.close ();
} catch (IOException e) {
e.printStackTrace ();
}
}
if(byteArrayOutputStream!= null){
try {
byteArrayOutputStream.close ();
} catch (IOException e) {
e.printStackTrace ();
}
}
if(inputStream!= null){
try {
inputStream.close ();
} catch (IOException e) {
e.printStackTrace ();
}
}
}
}
}
package com.class4.class4_24;
import org.junit.Test;
import java.io.*;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
/**
* 夏晖出品!
* 必属精品!!
**/
public class Demo_2 {
@Test
public void Client() throws IOException {
Socket socket = new Socket (InetAddress.getByName ("127.0.0.1") , 9999);
OutputStream outputStream = socket.getOutputStream ();
FileInputStream fileInputStream = new FileInputStream (new File ("E:\java\新笔记\图论教育笔记\test01\src\目标文件"));
byte[] bytes = new byte[1024];
int len = 0;
while((len = fileInputStream.read (bytes)) != -1){
outputStream.write (bytes , 0 ,len);
}
fileInputStream.close ();
outputStream.close ();
socket.close ();
}
@Test
public void Service() throws IOException {
ServerSocket serverSocket = new ServerSocket (9999);
Socket accept = serverSocket.accept ();
InputStream inputStream = accept.getInputStream ();
FileOutputStream fileOutputStream = new FileOutputStream (new File ("E:\java\新笔记\图论教育笔记\test01\src\存入目标文件"));
byte[] bytes = new byte[1024];
int len = 0;
while((len = inputStream.read (bytes)) != -1){
fileOutputStream.write (bytes , 0 , len);
}
accept.close ();
serverSocket.close ();
inputStream.close ();
fileOutputStream.close ();
}
}
package com.class4.class4_24;
import org.junit.Test;
import java.io.*;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
/**
* 夏晖出品!
* 必属精品!!
**/
public class Demo_2 {
@Test
public void Client() throws IOException {
Socket socket = new Socket (InetAddress.getByName ("127.0.0.1") , 9999);
OutputStream outputStream = socket.getOutputStream ();
FileInputStream fileInputStream = new FileInputStream (new File ("E:\java\新笔记\图论教育笔记\test01\src\com\class4\class4_24\photo.png"));
byte[] bytes = new byte[1024];
int len = 0;
while((len = fileInputStream.read (bytes)) != -1){
outputStream.write (bytes , 0 ,len);
}
socket.shutdownOutput ();
InputStream inputStream = socket.getInputStream ();
byte[] bytes1 = new byte[5];
int len1 = 0 ;
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream ();
while((len1 = inputStream.read (bytes1)) != -1){
byteArrayOutputStream.write (bytes1 , 0 ,len1);
}
System.out.println (byteArrayOutputStream.toString ());
byteArrayOutputStream.close ();
inputStream.close ();
fileInputStream.close ();
outputStream.close ();
socket.close ();
}
@Test
public void Service() throws IOException {
ServerSocket serverSocket = new ServerSocket (9999);
Socket accept = serverSocket.accept ();
InputStream inputStream = accept.getInputStream ();
FileOutputStream fileOutputStream = new FileOutputStream (new File ("E:\java\新笔记\图论教育笔记\test01\src\com\class4\class4_24\photo2.png"));
byte[] bytes = new byte[1024];
int len = 0;
while((len = inputStream.read (bytes)) != -1){
fileOutputStream.write (bytes , 0 , len);
}
OutputStream outputStream = accept.getOutputStream ();
outputStream.write ("我收到你的照片啦,说好的美女图片呢??".getBytes ());
outputStream.close ();
accept.close ();
serverSocket.close ();
inputStream.close ();
fileOutputStream.close ();
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)