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

📄 sampleclient.java

📁 java个人心得j2mesdkapp中
💻 JAVA
字号:
import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;


public class SampleClient extends MIDlet implements CommandListener{
   private static String url="http://localhost:8080/j2me/sampleserver";
   private Display display;
   private Command exitCommand=new Command("退出",Command.EXIT,1);
   private Command okCommand=new Command("确定",Command.OK,1);
   private Command sendCommand=new Command("发送",Command.OK,1);
   private TextBox entryForm;
   
   public SampleClient(){}
   
   
   
   public void startApp(){
   	   if(display==null){
   	      initMIDlet();
   	   }
   }
   
   public void pauseApp(){
   }
   
   public void destroyApp(boolean uncondtional){
   	  exitMIDlet();
   }
   
   public void initMIDlet(){
   	  display=Display.getDisplay(this);
   	  entryForm=new EntryForm();
   	  display.setCurrent(entryForm);
   }
   
   public void exitMIDlet(){
      notifyDestroyed();
   }
   
   public void commandAction(Command c,Displayable d){
   	   if(c==sendCommand){
   	   	   StatusForm f=new StatusForm(entryForm.toString());
   	   	   display.setCurrent(f);
   	   	   f.start();
   	   }
   	   else if(c==okCommand){
   	   	  display.setCurrent(entryForm);
   	   }
   	   else{
   	   	exitMIDlet();
   	   }
   }
   
   class EntryForm extends TextBox{
     EntryForm(){
       super("输入文本","",80,0);
       addCommand(exitCommand);
       addCommand(sendCommand);
       setCommandListener(SampleClient.this);
     }	
   }
   
   class StatusForm extends Form implements Runnable{
   	private byte[] data;
   	private StringItem message;
   	StatusForm(String text){
   		super("状态");
   		try{
   			ByteArrayOutputStream bout=new ByteArrayOutputStream();
   			DataOutputStream dout=new DataOutputStream(bout);
   			dout.writeUTF(text);
   			data=bout.toByteArray();
   			dout.close();
   		}
   		catch(Exception ex){
   		}
   	}
   	
   	void display(String text){
   	   if(message==null){
   	     message=new StringItem(null,text);
   	     append(message);
   	   }
   	   else{
   	   	  message.setText(text);
   	   }
   	}
   	
   	void done(String msg){
   		display(msg!=null?msg:"Done.");
   		addCommand(okCommand);
   		setCommandListener(SampleClient.this);
   	}
   	
   	public void prepareRequest(String originalURL,HttpConnection conn) throws IOException{
   		conn.setRequestMethod(HttpConnection.POST);
   		conn.setRequestProperty("User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
   		conn.setRequestProperty("Content-Language","en-US");
   		conn.setRequestProperty("Accept","appliction/octet-Stream");
   		conn.setRequestProperty("Connection","close");
   		conn.setRequestProperty("Content-Length",Integer.toString(data.length));
   		
   		OutputStream os=conn.openOutputStream();
   		os.write(data);
   		os.close();
   	}
   	
   	
   	public void run(){
   		HttpConnection conn=null;
   		try{
   		  conn.setRequestMethod(HttpConnection.POST);
   		  conn.setRequestProperty("User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
   		  conn.setRequestProperty("Content-Language","en-US");
   		  conn.setRequestProperty("Accept","appliction/octet-Stream");
   		  conn.setRequestProperty("Connection","close");
   		  conn.setRequestProperty("Content-Length",Integer.toString(data.length));
   	
   		OutputStream os=conn.openOutputStream();
   		os.write(data);
   		os.close();   		
   	    }
   	    catch(Exception ex){
   	    }
   		display("正在获得目标.....");
   		try{
   		  conn=(HttpConnection)Connector.open(url);
   		  display("连接到服务器....");
   		  int rc=conn.getResponseCode();
   		  if(rc==HttpConnection.HTTP_OK){
   		     StringBuffer text=new StringBuffer();
   		     try{
   		     	DataInputStream din=new DataInputStream(conn.openInputStream());
   		     	
   		     	int n=din.readInt();
   		     	
   		     	while(--n>0){
   		     	   text.append(din.readUTF());
   		     	   text.append("\n");
   		     	   
   		     	}
   		     }
   		     catch(IOException ex){
   		     }
   		     done("得到:\n"+text.toString());
   		  }
   		  else{
   		  	done("无例外得到编码: "+rc);
   		  }
   		}
   		catch(IOException ex){
   		}
   	}
   	
   	void start(){
   		display("开始....");
   		Thread t=new Thread(this);
   		try{
   			t.start();
   		}
   		catch(Exception ex){
   		
   		}
   	}
   }
}






⌨️ 快捷键说明

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