SnmpGetTable.java.txt
上传用户:aonuowh
上传日期:2021-05-23
资源大小:35390k
文件大小:2k
源码类别:

SNMP编程

开发平台:

C/C++

  1. /* $Id: SnmpGetTable.java,v 1.1 2002/06/15 14:40:08 ram Exp $ */
  2. /* SnmpGetTable.java
  3.  * Copyright (c) 1996-2003 AdventNet, Inc. All Rights Reserved.
  4.  * Please read the associated COPYRIGHTS file for more details.
  5.  */
  6. import com.adventnet.snmp.beans.*;
  7. import com.adventnet.snmp.mibs.*;
  8. import com.adventnet.snmp.snmp2.*;
  9. import java.util.*;
  10. public class SnmpGetTable   {
  11. public static void main(String args[]) {
  12. if (args.length < 2)
  13.       {
  14. System.out.println ("Usage : java SnmpGetTable  hostname oid ");
  15. System.exit (0);
  16.       }
  17.         String remoteHost = args[0]; 
  18. String oid = args[1];
  19. SnmpTarget target = new SnmpTarget();
  20. target.setTargetHost(remoteHost);
  21. try {
  22. target.loadMibs("RFC1213-MIB");
  23. }catch (Exception ex) {
  24. }
  25. MibOperations mibops = target.getMibOperations();
  26. SnmpOID tableoid = mibops.getSnmpOID(oid); // get table OID
  27. MibNode tablenode = mibops.getMibNode(tableoid); // get table MIB node
  28. Vector columns = tablenode.getTableItems();
  29. String oids[] = new String[columns.size()];
  30. for (int i=0;i<oids.length;i++) oids[i] = (String)columns.elementAt(i);
  31. target.setObjectIDList(oids); 
  32. String result[][] = target.snmpGetAllList();  
  33. System.out.println("Getting table.  Table items:");
  34. StringBuffer sb = new StringBuffer();
  35.         // first print the column names
  36.         for (int i=0;i<oids.length;i++) sb.append(oids[i]+" t");
  37.         sb.append("n");
  38.         // next print each table item
  39.         for (int j=0;j<result.length;j++) { // for each row
  40.           for (int i=0;i<result[j].length;i++) // for each column
  41.               sb.append(result[j][i]+" t");
  42.           sb.append("n");
  43.         }
  44.         System.out.println(sb.toString());
  45. System.exit(0);
  46.  
  47.       }
  48.      
  49. }