Java如何实现简单后台访问并获取IP

作者:wangchw 时间:2021-10-27 02:26:27 

后台服务端


import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {
 public static void main(String[] args) throws IOException {
   ServerSocket s = new ServerSocket(1122);//服务器端口号
   Socket ss = s.accept();
//    获取IP访问者IP地址
   String cip = ss.getInetAddress().getHostAddress();
//     接收信息获取访问姓名身份同时向访问者问好
   String msg = String.format("%s:Hello\s\n", "wo", cip);
   OutputStream os = ss.getOutputStream();
   PrintWriter out = new PrintWriter(os);
   out.write(msg);
   out.flush();
   System.out.println("有人连线了: " + cip);
//    读取信息
   InputStream is = ss.getInputStream();
   System.out.println(new String(is.readAllBytes()));
   System.out.println(ss.isConnected());
   os.close();
 }
}

客户端


import java.io.*;
import java.net.Socket;
public class Client {
 public static void main(String[] args) throws IOException {
   Socket client = new Socket("192.168.1.16", 1122);//服务器端口号1122,IP也可以自定义访问也可以在IP那里输入localhost访问本机
   if (client.isConnected()) {
//      接收信息
     InputStream is = client.getInputStream();
     BufferedReader br=new BufferedReader(new InputStreamReader(is));
     System.out.println(br.readLine());
//        向服务器发送个人信息
     String msg = "学生:xxx\r\n";//名字可以定义
     OutputStream os = client.getOutputStream();
     os.write(msg.getBytes());
     os.flush();
     System.out.println(client.isConnected());
     System.out.println(client.isClosed());
     is.close();
     os.close();

}
 }
}

后台接收的信息

Java如何实现简单后台访问并获取IP

客户端接收的信息

Java如何实现简单后台访问并获取IP

来源:https://www.cnblogs.com/wangchw/p/13831283.html

标签:Java,后台,访问,获取,IP
0
投稿

猜你喜欢

  • MyBatis在SQL语句中如何获取list的大小

    2021-08-15 12:09:55
  • 详解Java对象结构与对象锁的升级

    2021-12-05 16:18:38
  • Java表单重复提交的避免方法

    2022-03-03 10:06:06
  • Java面试必备之ArrayList陷阱解析

    2023-02-16 18:14:26
  • 使用JavaWeb webSocket实现简易的点对点聊天功能实例代码

    2023-10-29 00:14:17
  • MyBatis的SQL执行结果和客户端执行结果不一致问题排查

    2022-12-30 20:37:22
  • Dubbo实现分布式日志链路追踪

    2023-08-23 21:00:54
  • 简单谈谈Struts动态表单(DynamicForm)

    2022-10-07 07:24:29
  • spring boot实战教程之shiro session过期时间详解

    2023-01-05 01:37:47
  • 聊一聊Java的JVM类加载机制

    2023-11-08 03:58:37
  • springboot集成mybatisplus的方法

    2022-08-02 16:35:12
  • Java 中的抽象介绍

    2023-03-27 06:10:20
  • Java单例模式分析

    2023-11-16 03:17:06
  • Java编程实现帕斯卡三角形代码示例

    2023-11-02 08:08:24
  • 分布式医疗挂号系统SpringCache与Redis为数据字典添加缓存

    2023-06-28 02:26:55
  • RabbitMQ开启SSL与SpringBoot连接测试的配置方法

    2023-09-25 14:40:30
  • springboot使用单元测试实战

    2023-05-17 11:55:29
  • java使用链表实现约瑟夫环

    2022-03-21 18:59:35
  • redis redisson 集合的使用案例(RList、Rset、RMap)

    2023-11-13 13:50:21
  • java实现动态 代理方法浅析

    2023-11-28 23:33:59
  • asp之家 软件编程 m.aspxhome.com