📄 client.java
字号:
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.microedition.io.*;
import javax.microedition.midlet.*;
public class Client implements Runnable{
private MyMidlet midlet;
private final int slepTime=1000;
private String port="port=-1";
HttpConnection dc;
private String baseURL="http://localhost:8080/PigServer/PigServer";
public Client(MyMidlet mid) {
midlet=mid;
sendMessage("register");
new Thread(this).start();
}
String urlReceive;
String urlSend;
public String getPort(){
return port;
}
public void run(){
while(true){
StringBuffer strbuf=new StringBuffer();
urlReceive=baseURL+"?message=hello&"+port;
try{
dc=(HttpConnection)Connector.open(urlReceive, Connector.READ);
InputStream is=null;
is=dc.openInputStream();
int len=(int)dc.getLength();
DataInputStream dis=new DataInputStream(is);
if(len>0){
byte[] data=new byte[len];
dis.readFully(data);
for(int i=0;i<data.length;i++){
strbuf.append((char)data[i]);
}
}
else{
int ch;
len=0;
while((ch=dis.read())!=-1){
strbuf.append((char)ch);
len++;
}
}
dis.close();
is.close();
dc.close();
String s=strbuf.toString().trim();
if(s!=null&&!s.equals("")){
if(!s.equals("noData"))
System.out.print("messag is:"+s);
if(s.startsWith("desk")){
midlet.setDesks(s);
}
else if(s.startsWith("takeseat")){
midlet.takeSeat(s);
}
else if(s.startsWith("exit")){
midlet.tryExit(s);
}
else if(s.startsWith("updatedesk")){
midlet.updateDesk(s);
}
else if(s.startsWith("noData")){
}
else if(s.startsWith("port")){
if(port.equals("port=-1")){
System.out.print("post");
port=s;
}
}
else if(s.startsWith("<html>")){
System.out.print("send error return <html> is 500or400 error");
}
else{
if(midlet.getCanvas()!=null)
midlet.getCanvas().receiveMessage(s);
else
System.out.print("error canvas is null"+s);
}
}
}
catch(Exception ex){
ex.printStackTrace();
}
try{
Thread.sleep(slepTime);
}
catch(InterruptedException e){
e.printStackTrace();
}
}
}
public void sendMessage(String message){
System.out.print("send message:"+message);
try{
urlSend=baseURL+"?message="+message+"&"+port;
HttpConnection dc=(HttpConnection)Connector.open(urlSend, Connector.READ);
InputStream is=null;
is=dc.openInputStream();
is.close();
dc.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -