⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clientapp.java

📁 文件共享虚拟社区,可以实现上传下载聊天等多种信息交互.
💻 JAVA
字号:
/*
 * 创建日期 2005-9-7
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
package fsc.client;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;

import fsc.models.*;
import fsc.util.StringProcessor;

import javax.swing.*;

/**
 * @author 清澄
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class ClientApp {
	private static final String SERVER_IP="127.0.0.1";
	private static final int SERVER_LISTN_PORT=8000;
	private static final int SERVER_FILE_PORT=9000;
	
	//net and socket streams
	Socket connectToServer=null;
	InputStream is = null;
	DataInputStream din = null;
	OutputStream os = null;
	DataOutputStream dout = null;
	
	public LoginFrame loginFrame=null;
	public RegisterFrame registerFrame=null;
	public LoginModel loginModel=null;
	public RegisterModel registerModel=null;
	
	public void createLoginFrame(String title)
	{
		if(loginFrame==null)
		{
			loginFrame= new LoginFrame(title,this);
		}
		else
		{
			getLoginFrame().setVisible(true);
		}
		
	}
	
	public void createRegisterFrame(String title)
	{
		if(registerFrame==null)
		{
			registerFrame= new RegisterFrame(title,this);
		}
		else
		{
			getRegisterFrame().setVisible(true);
		}
		
	}
	
	public JFrame getLoginFrame()
	{
		return loginFrame;
	}
	
	public JFrame getRegisterFrame()
	{
		return registerFrame;
	}
	
	public void connectAndGetIOStreams()
	{
		//try to connect the server
		try{
			connectToServer=new Socket("localhost",8000);
			//System.out.println("connected successfully");
			
			is=connectToServer.getInputStream();
			din=new DataInputStream(is);
			os=connectToServer.getOutputStream();
			dout=new DataOutputStream(os);
			
			//dout.writeUTF(lm.toString());
			/*
			String info=din.readUTF();
			StringProcessor sp= new StringProcessor(info);
			sp.getLine();
			LoginResultModel res=new LoginResultModel(sp.getContent());
			System.out.println("Server echo "+res.toString());
			dout.flush();
			dout.writeUTF("bye");
			dout.flush();
			*/
			}
		catch(Exception ex)
		{
			ex.printStackTrace();
		}
		finally
		{
			
		}
	}
	
	public void closeIOStreamsAndDisconnect()
	{
		try {
			dout.close();
			os.close();
			din.close();
			is.close();
			connectToServer.close();
			
		} catch (IOException e) {
			e.printStackTrace();
		}
		connectToServer=null;
		
	}
	
	public DataOutputStream getDataOutputStream()
	{
		if(connectToServer==null)
		{
			connectAndGetIOStreams();
		}
		return dout;
	}
	
	public DataInputStream getDataInputStream()
	{
		if(connectToServer==null)
		{
			connectAndGetIOStreams();
		}
		return din;
	}
	
	public ClientApp()
	{
		 loginModel= new  LoginModel();
		 registerModel= new RegisterModel();
		 
		createLoginFrame("请登陆");
	}
	
	public static void main(String[] args) {
		new ClientApp();
		
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -