📄 webgisframe.java
字号:
tcpSocket=socket;
intNumber=count;
ListGpsMessage=listbox;
}
/*
public void InsertDatabase(String gps_message)
{
//插入数据库
String i="";
String dd ="";
String tel="";
String strSQL = null;
String cardid=null;
int j;
i = gps_message.substring(21,27);
j = Integer.valueOf(i).intValue()/60;
dd = Integer.toString(j);
String str_y=gps_message.substring(19,21)+"."+dd;
i = gps_message.substring(30,36);
j = Integer.valueOf(i).intValue()/60;
dd = Integer.toString(j);
String str_x=gps_message.substring(27,30)+"."+dd;
tel=gps_message.substring(0,11);
String sSpeed=null;
sSpeed=gps_message.substring(38,40);
Date currentTime= new Date();
//SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy MMMM dd,EEEE, HH:mm:ss");
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
String timeString=dateFormat.format(currentTime);
try {
strSQL="select cardid from carmaster where carmobileno='"+tel+"'";
System.out.println("WebGisFrame dp: "+strSQL);
java.sql.ResultSet RS = Stmt.executeQuery(strSQL);
if(RS.next()){
cardid=RS.getString("cardid");
System.out.println(cardid);
}
}
catch (Exception ae )
{
System.out.println (ae);
}
try {
strSQL="insert into smsg_info (cardid,latitude,longitude,speed,senttime)values('"+cardid+"',"+str_x+","+str_y+","+sSpeed+",sysdate)";
//strSQL="insert into trackinfo (cardid,latitude,longitude,speed,senttime)values('"+cardid+"',"+str_x+","+str_y+","+sSpeed+",sysdate)";
System.out.println(strSQL);
//java.sql.ResultSet RS = Stmt.executeUpdate(strSQL);
Stmt.executeQuery(strSQL);
//if(RS.next()){
//String cardid=rs.getString("cardid");
//System.out.println(cardid);
//}
}
catch (Exception oo )
{
System.out.println (oo);
}
try {
//strSQL="insert into smsg_info (cardid,latitude,longitude,speed,senttime)values('"+cardid+"',"+str_x+","+str_y+","+sSpeed+",sysdate)";
strSQL="update trackinfo set latitude="+str_y+",longitude="+str_x+",speed="+sSpeed+",latestsend=sysdate where cardid='"+cardid+"'";
System.out.println(strSQL);
//java.sql.ResultSet RS = Stmt.executeUpdate(strSQL);
Stmt.executeQuery(strSQL);
//if(RS.next()){
//String cardid=rs.getString("cardid");
//System.out.println(cardid);
//}
}
catch (Exception oo )
{
System.out.println (oo);
}
}
*/
public void run(){
try{
BufferedReader inReader=new BufferedReader(new InputStreamReader(tcpSocket.getInputStream() ));
PrintWriter outWriter=new PrintWriter(tcpSocket.getOutputStream(),true);
// outWriter.println("Welcome to tcp echo server! your account number is "+intNumber+".please enter EXIT if you want to exit");
String in="";
in=inReader.readLine();
//System.out.println(in);
sMsg=getTime()+in;
String server="192.110.0.21";
// String server="219.238.191.20";
ListGpsMessage.add(sMsg);
PrintWriter outMessage=new PrintWriter(tcpSocket.getOutputStream(),true);
while(!in.trim().equals("EXIT")){
//outWriter.println("Echo ("+intNumber+"):"+in+tcpSocket.getLocalPort());
String ss="";
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
try {
in=inReader.readLine();
String s;
s=in.substring(0,1);
System.out.println(in);
if(!s.equals("1"))
{
sMsg=getTime()+in+"已接收";
ListGpsMessage.add(sMsg);
//System.out.println(in);
}
//System.out.println(s);
//查询数据库
if (s.equals("0"))//查询历史轨迹
{
//ObjectOutputStream outResult = new ObjectOutputStream(tcpSocket.getOutputStream());
s=in.substring(2,in.length());
Vector vTraceMessage = new Vector();
System.out.print(s);
vTraceMessage=getSearchResult(s);
//System.out.print(vTraceMessage.size());
outMessage.println(vTraceMessage.size());
String m_x="";
String m_y="";
String m_dec="";
String m_speed="";
String m_createdatime="";
int i;
long j;
//for (i=0;i<m_v.size()/2;i++)
double[][] m_PointArrary= new double[1][vTraceMessage.size()];
for (i=0;i<vTraceMessage.size();i+=4)
{
m_x=vTraceMessage.elementAt(i).toString();
m_y=vTraceMessage.elementAt(i+1).toString();
m_speed=vTraceMessage.elementAt(i+2).toString();
m_createdatime=vTraceMessage.elementAt(i+3).toString();
//System.out.println("0x="+m_x+"y="+m_y);
String dec="";
dec = m_x.substring(3,m_x.length()-1);
//System.out.println(dec);
j = Long.valueOf(dec).longValue()/60;
m_dec=Long.toString(j);
m_x=m_x.substring(0,3)+"."+m_dec;
//System.out.println(m_y);
dec = m_y.substring(2,m_y.length()-1);
//System.out.println(dec);
j = Long.valueOf(dec).longValue()/60;
m_dec=Long.toString(j);
m_y=m_y.substring(0,2)+"."+m_dec;
outMessage.println(m_x+"$"+m_y+"$"+m_speed+"$"+m_createdatime);
//System.out.println("i="+i+"*"+m_x+"PPPPPP"+m_y);
}
System.out.println(i);
//outResult.writeObject(getSearchResult(s));
}
else if(s.equals("1"))//查询报警信息
{
Vector vAlarmMessage = new Vector();
try{
java.sql.ResultSet RS = Stmt.executeQuery("select gpsmessage from gpsmessage where flag=0");
while(RS.next()){
vAlarmMessage.addElement(RS.getString("gpsmessage"));
Stmt.execute("update gpsmessage set flag=1");
//System.out.println(RS.getString("gpsmessage"));
}
RS.close();
}catch(Exception e){
e.printStackTrace();
}
String m_result="null";
if(vAlarmMessage.size()!=0)
m_result=vAlarmMessage.elementAt(0).toString();
outMessage.println(m_result);
}
else if(s.equals("2"))
{
Vector vCarInfo = new Vector();
s=in.substring(2,in.length());
System.out.print(s);
vCarInfo=getSearchResultCarInfo(s);
System.out.print(vCarInfo.size());
outMessage.println(vCarInfo.size());//m_count
for (int i=0;i<vCarInfo.size();i+=11)
{
String m_cardid = vCarInfo.elementAt(i).toString();
String m_carlicenceno = vCarInfo.elementAt(i+1).toString();
String m_username = vCarInfo.elementAt(i+2).toString();
String m_carmobileno = vCarInfo.elementAt(i+3).toString();
String m_phoneno = vCarInfo.elementAt(i+4).toString();
String m_latestsend = vCarInfo.elementAt(i+5).toString();
String m_speed = vCarInfo.elementAt(i+6).toString();
String m_status = vCarInfo.elementAt(i+7).toString();
String m_gpsstyle = vCarInfo.elementAt(i+8).toString();
String m_carcolor = vCarInfo.elementAt(i+9).toString();
String m_registerdate = vCarInfo.elementAt(i+10).toString();
String m_Send=m_cardid+"$"+m_carlicenceno+"$"+m_username+"$"+m_carmobileno+"$"+m_phoneno+"$"+m_latestsend+"$"
+m_speed+"$"+m_status+"$"+m_gpsstyle+"$"+m_carcolor+"$"+m_registerdate;
System.out.println(m_Send);
outMessage.println(m_Send);
}
}
else if(s.equals("3"))//车辆定位
{
String option="";
String CallSerial="";
String CarPlate="";
int port= 10011;
try{
System.out.println ("Connecting to " +server);
// 与服务器建立连接
Socket tcpSocketGps = new Socket(server, port);
//超时1分30秒
// tcpSocketGps.setSoTimeout(120000);
//建立输入输出流
PrintStream outGps = new PrintStream( tcpSocketGps.getOutputStream()) ;
DataInputStream inGps = new DataInputStream(tcpSocketGps.getInputStream());
// 3#$>10001,SM,命令,一次定位,京FJ8378 ,,,<
byte[] buffer = new byte[1024];
int bytesRead=0;
int index1=in.indexOf("$");
int indexComma1=in.indexOf(",");
int indexComma2=in.indexOf(",",indexComma1+1);
int indexComma3=in.indexOf(",",indexComma2+1);
int indexComma4=in.indexOf(",",indexComma3+1);
int indexComma5=in.indexOf(",",indexComma4+1);
CarPlate = in.substring(indexComma4+1,indexComma5);
System.out.println("this is Original CarPlate: "+CarPlate);
String m_gps = in.substring(index1+1,in.length());
outGps.println(m_gps);
sMsg=getTime()+"连接到"+server+"发送"+m_gps;
ListGpsMessage.add(sMsg);
for(int i=0;i<100000;i++){
bytesRead = inGps.read(buffer);
ss = new String(buffer, 0, bytesRead);
int Begin = ss.indexOf(">");
int End = ss.indexOf("<");
while (Begin != -1) {
String Pack = ss.substring(Begin + 1, End);
System.out.println("here is ReceiveMsg: " + Pack);
int comma1 = Pack.indexOf(",");
int comma2 = Pack.indexOf(",", comma1 + 1);
int comma3 = Pack.indexOf(",", comma2 + 1);
int comma4 = Pack.indexOf(",", comma3 + 1);
int comma5 = Pack.indexOf(",", comma4 + 1);
int comma6 = Pack.indexOf(",", comma5 + 1);
int comma7 = Pack.indexOf(",", comma6 + 1);
String getCarPlate = Pack.substring(comma3+1, comma4);
System.out.println("here is the get Msg GetCarPlate : "+getCarPlate);
String Status = Pack.substring(comma1 + 1, comma2);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -