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

📄 udpreceive.java~3~

📁 这是一个udp接收程序
💻 JAVA~3~
📖 第 1 页 / 共 2 页
字号:
                        case 142:
                        case 143:
                        case 149:
                        case 150:
                        case 151:
                        case 196:
                        case 200:
                        case 202:
                        case 204:
                        case 206:
                        case 208:
                        case 210:
                        case 214:revDateArray[6] =revDateArray[11].substring(len-4,len); break;
                        //告警恢复的告警号
                        case  37:revDateArray[5] = "005";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 165:revDateArray[5] = "133";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case  38:revDateArray[5] = "006";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case  39:revDateArray[5] = "007";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 71:revDateArray[5] = "070";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 166:revDateArray[5] = "134";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 167:revDateArray[5] = "135";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 199:revDateArray[5] = "198";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 36:revDateArray[5] = "004";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 44:revDateArray[5] = "012";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 164:revDateArray[5] = "132";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 172:revDateArray[5] = "140";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 34:revDateArray[5] = "002";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 162:revDateArray[5] = "130";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 35:revDateArray[5] = "003";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 42:revDateArray[5] = "010";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 43:revDateArray[5] = "011";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 45:revDateArray[5] = "013";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 46:revDateArray[5] = "014";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 47:revDateArray[5] = "015";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 53:revDateArray[5] = "021";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 54:revDateArray[5] = "022";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 55:revDateArray[5] = "023";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 69:revDateArray[5] = "068";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 73:revDateArray[5] = "072";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 75:revDateArray[5] = "074";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 77:revDateArray[5] = "076";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 79:revDateArray[5] = "078";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 81:revDateArray[5] = "080";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 83:revDateArray[5] = "082";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 87:revDateArray[5] = "086";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 163:revDateArray[5] = "131";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 170:revDateArray[5] = "138";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 171:revDateArray[5] = "139";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 173:revDateArray[5] = "141";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 174:revDateArray[5] = "142";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 175:revDateArray[5] = "143";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 181:revDateArray[5] = "149";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 182:revDateArray[5] = "150";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 183:revDateArray[5] = "151";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 197:revDateArray[5] = "196";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 201:revDateArray[5] = "200";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 203:revDateArray[5] = "202";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 205:revDateArray[5] = "204";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 207:revDateArray[5] = "206";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 209:revDateArray[5] = "208";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 211:revDateArray[5] = "210";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                        case 215:revDateArray[5] = "214";revDateArray[1] = "5";revDateArray[6] =revDateArray[11].substring(len-4,len);break;
                       }
                  }

            //和槽位无关group 001,003,开始结束on,off区分
          if (revDateArray[4].equals("GROUP"))
            {
             switch (Integer.parseInt(revDateArray[5].trim()))
                {
                  case 001:
                      revDateArray[6] = " ";
                      revDateArray[7] = " ";
                      revDateArray[8] = " ";
                      break;
                  case 003:
                     revDateArray[6] = " ";
                     revDateArray[7] = " ";
                     revDateArray[8] = " ";
                     break;
                  default: break;
                }
          }
            //告警等级转化成标准格式
          if (revDateArray[1].equals("NMI")) {
            revDateArray[1] = "1";
          }
          else if (revDateArray[1].equals("MAJOR")) {
            revDateArray[1] = "1";
          }
          else if (revDateArray[1].equals("MINOR")) {
            revDateArray[1] = "1";
          }
          else if (revDateArray[1].equals("INFO")) {
            revDateArray[1] = "1";
          }
            //告警时间格式转化
            if(revDateArray[10].substring(3,6).equals("JAN")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"01");}
            else if (revDateArray[10].substring(3,6).equals("FEB")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"02");}
            else if (revDateArray[10].substring(3,6).equals("MAR")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"03");}
            else if (revDateArray[10].substring(3,6).equals("API")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"04");}
            else if (revDateArray[10].substring(3,6).equals("MAY")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"05");}
            else if (revDateArray[10].substring(3,6).equals("JUN")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"06");}
            else if (revDateArray[10].substring(3,6).equals("JUL")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"07");}
            else if (revDateArray[10].substring(3,6).equals("AUG")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"08");}
            else if (revDateArray[10].substring(3,6).equals("SEP")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"09");}
            else if (revDateArray[10].substring(3,6).equals("OCT")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"10");}
            else if (revDateArray[10].substring(3,6).equals("NOV")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"11");}
            else if (revDateArray[10].substring(3,6).equals("DEC")){revDateArray[10]= revDateArray[10].replaceAll(revDateArray[10].substring(3,6),"12");}

          //时间转换成秒
         SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
                    try
                    {
                      Date d1 = df.parse(revDateArray[10]);
                      Date d2 = df.parse("00-00-1970 00:00:00");
                      long diff = d1.getTime() - d2.getTime();
                      long sec = diff / (1000 )-2764800;
                      String   str   =   Long.toString(sec);
                      revDateArray[10]=str ;
                      System.out.println(revDateArray[10]);
                    }
                    catch (Exception e)
                    {
                    }
          //最终结果
          System.out.println(revDateArray[0] +" "+revDateArray[1]+" " + revDateArray[2] +" "+revDateArray[3]+" " + revDateArray[4] +" "+ revDateArray[5]+" "+revDateArray[6]+" " + revDateArray[7]+" " + revDateArray[8]+" "+ revDateArray[9]+" "+ revDateArray[10]+" "+ revDateArray[11]);
          messageDate=revDateArray[0] +" "+revDateArray[1]+" " + revDateArray[2] +" "+revDateArray[3]+" " + revDateArray[4] +" "+ revDateArray[5]+" "+revDateArray[6]+" " + revDateArray[7]+" " + revDateArray[8]+" "+ revDateArray[9]+" "+ revDateArray[10]+" "+ revDateArray[11];
          System.out.println(messageDate.length());
          //保存UDP数据到数据库,每天创建一个新表,表名:udpdata_(date);
          Calendar TodayCanlendar = Calendar.getInstance();
          Date TodayDate = TodayCanlendar.getTime();
          String str_datetime = DateFormat.format(TodayDate);
          String str_date = str_datetime.substring(0, 10);

          try {
            String tableName = "udpdata_" + str_date;
            System.out.println("表名:" + tableName);
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Conn = DriverManager.getConnection(DBUrl);
            Stmt = Conn.createStatement();
            String sqlInsert = "insert into " + tableName +" (revtime,messagedate) values('" + str_datetime + "','" +messageDate + "')";
            //判断表是否存在,存在直接插入新纪录,不存在创建新表并插入新纪录
            Rs = Conn.getMetaData().getTables(null, null, tableName, null);
            if (Rs.next()) {
              Stmt.executeUpdate(sqlInsert);
              Conn.commit();
            }
            else {
              //新的一天,创建一个新表并保存数据
              String sqlCreateTable = "create table " + tableName +
                  " (dataid counter, revtime varchar(20),messagedate varchar(250))";
              Stmt.executeUpdate(sqlCreateTable);
              Conn.commit();
              Stmt.executeUpdate(sqlInsert);
              Conn.commit();
              Stmt.close();
            }
            Conn.close();
          }
          catch (Exception ex) {
            ///////////////////////////////////////////////////
            System.out.println("aaaaaaa");
          }

          DefaultTableModel tableModel = (DefaultTableModel) Main.dataTable.
              getModel();

          for (i = 0; i < 3; i++) {
            System.out.println(almstate[i] + almtime[i] + almmessage[i]);
            String[] str_row = {
                almstate[i], almtime[i], almmessage[i]}; //将一行的数据存在str_row 字符串数组里
            tableModel.addRow(str_row);
            tableModel.removeRow(0);
          }
          Main.dataTable.setModel(tableModel);
          //JTable中显示的数据
               almstate[0] = almstate[1];
               almstate[1] = almstate[2];
               almstate[2] = revDateArray[1];
               almtime[0] = almtime[1];
               almtime[1] = almtime[2];
               almtime[2] = str_datetime;
               almmessage[0] = almmessage[1];
               almmessage[1] = almmessage[2];
               almmessage[2] =messageDate;
           //DefaultTableModel tableModel = (DefaultTableModel) Main.dataTable.getModel();
               for(i =0; i < 3 ;i++){
                 System.out.println(almstate[i]+almtime[i]+almmessage[i]);
                 String[] str_row={almstate[i],almtime[i],almmessage[i]}; //将一行的数据存在str_row 字符串数组里
                 tableModel.addRow(str_row);
                 tableModel.removeRow(0);
               }
               Main.dataTable.setModel(tableModel);
          //调用Trap发送方法
          SnmpV1TrapSend snmpv1trapsend = new SnmpV1TrapSend();
          try {
            System.out.println("aaaa");
           snmpv1trapsend.TrapSend(revDateArray, TrapIp1, TrapPort);
          }
          catch (Exception eee) {
          }
        }
      }
      if (!dataSocket.isClosed())
          {
          dataSocket.close();
          }
    }
    catch (IOException e){}
  }
  public synchronized boolean getFlag() {
    return runFlag;
  }
  public synchronized void stopReceive() {
    runFlag = false;
    if (runThread != null) {
      runThread.interrupt();
      if (!dataSocket.isClosed()) {
        dataSocket.close();
      }
      System.out.println(runThread.getName() + "线程停止!");
    }
  }
}


⌨️ 快捷键说明

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