Java Web

问题

  1. Socket
  2. ServerSocket
  3. InetAddress
  4. 多线程ServerSocket
  5. URL/URLConnection
  6. URI
  7. Email

解答

  • InetAddress
    获取本机ip,根据主机名获取ip
public class WebTest{

    @Test public void testFtp() throws IOException {
        Socket socket = new Socket("10.202.62.9",21);
        InputStream inputStream = socket.getInputStream();
        Scanner scanner = new Scanner(inputStream);
        while (scanner.hasNextLine()){
            String line = scanner.nextLine();
            if (" ".equals(line)){
                break;
            }
            System.out.println(line);
        }
        inputStream.close();

    }
    @Test
    public void testInetAddress() throws UnknownHostException {
        //获取本机地址
        InetAddress localHost = InetAddress.getLocalHost();
        System.out.println("主机名:"+localHost.getHostName());
        System.out.println("ip地址: "+localHost.getHostAddress());

        //根据hostname获取地址
        InetAddress byName = InetAddress.getByName("daiyutagedeMacBook-Pro.local");
        System.out.println(byName.getHostAddress());
        System.out.println(new String(byName.getAddress()));

    }
    @Test
    public void testSocketServer(){

        try(ServerSocket s = new ServerSocket(8189)) {

            try(Socket socket = s.accept()){
                InputStream in = socket.getInputStream();
                OutputStream out = socket.getOutputStream();
                try(Scanner scanner = new Scanner(in)){
                    PrintWriter pw = new PrintWriter(out,true);
                    pw.println("Hello Entey Bye to Exit");
                    boolean done = false;
                    while(!done && scanner.hasNextLine()){
                        String line = scanner.nextLine();
                        pw.println(line);
                        System.out.println(line);
                    }
                }
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    @Test
    public void testURL() throws IOException {
        URL url = new URL("http://www.baidu.com");
        InputStream inputStream = url.openStream();;
        Scanner scanner = new Scanner(inputStream);
        while(scanner.hasNextLine()) {
            System.out.println(scanner.nextLine());

        }
    }
    @Test public void testURLConnection() throws IOException {
        URL url = new URL("http://www.qq.com");
        URLConnection urlConnection = url.openConnection();
        urlConnection.connect();
        Map<String, List<String>> headerFields = urlConnection.getHeaderFields();
        Set<String> strings = headerFields.keySet();
        for (String string : strings) {
            System.out.println(string+" "+headerFields.get(string));
        }
        System.out.println(urlConnection.getContentEncoding());
    }
    @Test public void testMail() throws IOException {
        Socket socket = new Socket("mail.xxx.com",25);
        InputStream inputStream = socket.getInputStream();
        Scanner scanner = new Scanner(inputStream);
        while (scanner.hasNextLine()){
            String line = scanner.nextLine();
            System.out.println(line);
        }

    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值