zoukankan      html  css  js  c++  java
  • 网络通信---示例

    示例1:Address 
    package com.etc.jichu; import java.net.InetAddress; public class Address { public static void main(String[] args) { InetAddress ip; try { ip = InetAddress.getLocalHost(); String localname = ip.getHostName(); String localip = ip.getHostAddress(); System.out.println("本机名:" + localname); System.out.println("本机IP地址:" + localip); } catch (Exception e) { e.printStackTrace(); } } }

      

    示例2:MyTcp
    
    package com.etc.jichu;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class MyTcp 
    {
    	private BufferedReader reader;
    	private ServerSocket server;
    	private Socket socket;
    	void getserver()
    	{
    		try 
    		{
    			server = new ServerSocket(49211);
    			System.out.println("服务器套接字已经创建成功!");
    			while (true) {
    				System.out.println("等待客户机的连接");
    				socket = server.accept();
    				reader = new BufferedReader(new InputStreamReader(socket
    						.getInputStream()));
    				getClientMessage();
    			}
    		} 
    		catch (Exception e) 
    		{
    			e.printStackTrace();
    		}
    	}
    	private void getClientMessage()
    	{
    		try {
    			while (true) {
    				System.out.println("客户机:" + reader.readLine());
    
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		try {
    			if (reader != null) {
    				reader.close();
    			}
    			if (socket != null) {
    				socket.close();
    			}
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
    	public static void main(String[] args) 
    	{
    		new MyTcp().getserver();
    
    	}
    
    }
    

      

    示例3:MyClien 
    
    package com.etc.jichu;
    import java.awt.BorderLayout;
    import java.awt.Container;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.PrintWriter;
    import java.net.Socket;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    import javax.swing.border.BevelBorder;
    public class MyClien extends JFrame
    {
    	private PrintWriter writer;
    	Socket socket;
    	private JTextArea ta=new JTextArea();
    	private JTextField tf=new JTextField();
    	Container cc;
    	public MyClien(String title)
    	{
    		super(title);
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		cc=this.getContentPane();
    		final JScrollPane scrollPane=new JScrollPane();
    		scrollPane.setBorder(new BevelBorder(BevelBorder.RAISED));
    		getContentPane().add(scrollPane,BorderLayout.CENTER);
    		scrollPane.setViewportView(ta);
    		cc.add(tf, "South");
    		tf.addActionListener(new ActionListener() 
    		{
    			//绑定事件
    			public void actionPerformed(ActionEvent e)
    			{
    				writer.print(tf.getText());//写入流
    				//显示
    				ta.append(tf.getText()+"
    ");
    				ta.setSelectionEnd(ta.getText().length());
    				//清空
    				tf.setText("");
    				
    			}
    		});
    	}
    	private void connect(){
    		ta.append("尝试连接
    ");
    		try {
    			socket = new Socket("127.0.0.1", 3306);
    			writer = new PrintWriter(socket.getOutputStream(), true);
    			ta.append("完成连接
    ");
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    	}
    	public static void main(String[] args) 
    	{
    		MyClien clien=new MyClien("向服务器发送数据");
    		clien.setSize(200,200);//设置窗体大小
    		clien.setVisible(true);//将窗体设置可见
    		clien.connect();//调用连接方法
    		
    	}
    
    }
    

      

  • 相关阅读:
    Spring Security
    用过sessionid防钓鱼
    request获取json
    相对于Statement,PreparedStatement的优点是什么?
    jquery中$.get()提交和$.post()提交有区别吗?
    相对于Statement,PreparedStatement的优点是什么?
    什么是Redis?
    如何解决表单提交的中文乱码问题
    execute,executeQuery,executeUpdate的区别是什么?
    根据你以往的经验简单叙述一下MYSQL的优化
  • 原文地址:https://www.cnblogs.com/ipetergo/p/6242474.html
Copyright © 2011-2022 走看看