java 网络编程-得到ip对象InetAddress的三种方式

网络编程:跟服务器底层源码有关
B/S在公网上(浏览器访问)服务器端和客户端只写一端,c/s在局域网上(网吧)服务器端和客户端都要写,B/S是大大的C/S
协议:端口之间的交流更畅通,不同软件有各自的端口
tcp/udp/http

ip:定位一个节点
使用静态方法getLocalHost方法创建InetAddress对象,InetAddress没有构造器
InetAddress addr = InetAddress.getLocalHost();
addr.getHostAddress() 本机地址
addr.getHostName() 计算机名

 public class http {

public static void main(String[]args) throws UnknownHostException
{
    //使用静态方法getLocalHost方法创建InetAddress对象
    InetAddress addr = InetAddress.getLocalHost();

    System.out.println(addr.getHostAddress());
    System.out.println(addr.getHostName());

    //使用域名得到InetAddress对象
    addr=InetAddress.getByName("www.163.com");
    System.out.println(addr.getHostAddress());//返回163服务器的ip
    System.out.println(addr.getHostName());//输出服务器名

    //根据ip地址得到InetAddress对象
    addr=InetAddress.getByName("118.118.221.77");
    System.out.println(addr.getHostAddress());
    System.out.println(addr.getHostName());//若ip地址不存在或者DNS不允许,则返回ip地址而不是域名
}

}

原文地址:https://blog.51cto.com/14437184/2430935

时间: 2024-11-08 21:52:43

java 网络编程-得到ip对象InetAddress的三种方式的相关文章

19、Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition

Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition 在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权.因为生产者如果不释放对临界资源的占用权,那么消费者就无法消费队列中的商品,就不会让队列有空间,那么生产者就会一直无限等待下去.因此,一般情况下,当队列满时,会让生产者交出对

Java Class类以及获取Class实例的三种方式

T - 由此 Class 对象建模的类的类型.例如,String.class 的类型是Class<String>.如果将被建模的类未知,则使用Class<?>. [java] view plain copy print? public final class Class<T> extends Object  implements java.io.Serializable, java.lang.reflect.GenericDeclaration, java.lang.r

java网络编程(2)InetAddress 类及udp协议

InetAddress 类 JDK中为开发网络应用程序提供了java.net包,该包下的类和接口几乎都是为网络编程服务的. InetAddress:用于描述IP地址的对象 InetAddress类没有提供构造方法, 而是提供了静态方法来获取InetAddress实例 getByName(String host):根据主机获取对应的InetAddress对象. getByAddress(byte[] addr):根据原始IP地址来获取对应的InetAddress对象. getAllByName(S

Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition

在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权.因为生产者如果不释放对临界资源的占用权,那么消费者就无法消费队列中的商品,就不会让队列有空间,那么生产者就会一直无限等待下去.因此,一般情况下,当队列满时,会让生产者交出对临界资源的占用权,并进入挂起状态.然后等待消费者消费了商品,然后消费者通知生产者队列有空间了.同样地,当

Java设置session超时(失效)的三种方式

1.      在web容器中设置(此处以tomcat为例) 在E:\apache-tomcat-7.0.54\apache-tomcat-7.0.54\conf\web.xml中设置,以下是apache-tomcat-7.0.54中的默认配置 <!-- ==================== Default Session Configuration ================= --> <!-- You can set the default session timeout 

Java设置session超时(失效)的三种方式 设置session的有效时间

1.      在web容器中设置(此处以tomcat为例) 在tomcat-5.0.28\conf\web.xml中设置,以下是tomcat 5.0中的默认配置: [html] view plain copy <!-- ==================== Default Session Configuration ================= --> <!-- You can set the default session timeout (in minutes) for 

Java网络编程——获取IP

在网络编程中,为了访问某台主机,我们必须知道其IP地址.在Java中,就将获取IP地址的操作封装成了一个类--InetAddress,通过该类很方便地获取IP. 下面看看如何利用该类的方法来获取本地主机的IP import java.net.*; class IPDemo { public static void main(String[] args) throws UnknownHostException { InetAddress ina = InetAddress.getLocalHost

Java 网络编程(四) InetAddress类

InetAddress类 InetAddress类用来封装我们前面讨论的数字式的IP地址和该地址的域名. 你通过一个IP主机名与这个类发生作用,IP主机名比它的IP地址用起来更简便更容易理解. InetAddress类内部隐藏了地址数字. InetAddress类中的工厂方法 InetAddress类没有明显的构造函数.为生成一个InetAddress对象,必须运用一个可用的工厂方法. 工厂方法(factory method)仅是一个类中静态方法返回一个该类实例的约定. 对于InetAddres

JAVA中按钮的事件监听的三种方式

JAVA中的Swing组件,按钮的重点是进行事件的监听,可以通过调用JButton的addActionListener()方法.这个方法接受一个实现ActionListener接口的对象作为参数,ActionListener接口中只包含一个actionPerformed()方法,所以如果想把事件处理的代码与JButton进行关联,就需要如下的三种做法: 第一种: public class Button extends MyFrame {    private JButton        b1