package com.regaltec.nma.collector.common.snmp;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
import uk.co.westhawk.snmp.pdu.BlockPdu;
import uk.co.westhawk.snmp.stack.AsnInteger;
import uk.co.westhawk.snmp.stack.AsnNull;
import uk.co.westhawk.snmp.stack.AsnObject;
import uk.co.westhawk.snmp.stack.AsnObjectId;
import uk.co.westhawk.snmp.stack.AsnOctets;
import uk.co.westhawk.snmp.stack.AsnUnsInteger;
import uk.co.westhawk.snmp.stack.AsnUnsInteger64;
import uk.co.westhawk.snmp.stack.PduException;
import uk.co.westhawk.snmp.stack.SnmpConstants;
import uk.co.westhawk.snmp.stack.SnmpContext;
import uk.co.westhawk.snmp.stack.SnmpContextBasisFace;
import uk.co.westhawk.snmp.stack.SnmpContextv2c;
import uk.co.westhawk.snmp.stack.SnmpContextv3;
import uk.co.westhawk.snmp.stack.SnmpContextv3Pool;
import uk.co.westhawk.snmp.stack.varbind;
import com.regaltec.nma.collector.common.NmaLog4jProxy;
/**
* <p>
* Title: SNMP协议驱动,版本包括SNMP v1,v2c,v3
* </p>
* 提供上层(SO层)访问SNMP代理时用 用到的外部包:snmp4_13.jar
*
* <p>
* Description:
* </p>
*
* <p>
* Copyright: Copyright (c) 2005
* </p>
*
* <p>
* Company:
* </p>
*
* @version 1.0
*/
public class NmaCollectorSnmp {
// 自定义SNMP数据类型变量
public final static int DTYPE_AsnInteger = 0; // AsnInteger类型
public final static int DTYPE_AsnNull = 10; // AsnNull类型
public final static int DTYPE_AsnObjectId = 20; // AsnObjectId类型
public final static int DTYPE_AsnOctets = 30; // AsnOctets类型
public final static int DTYPE_AsnPrimitive = 40; // AsnPrimitive类型
public final static int DTYPE_AsnUnsInteger = 50; // AsnUnsInteger类型
public final static int DTYPE_AsnTIMETICKS = 51; // SnmpConstants.TIMETICKS类型
public final static int DTYPE_AsnCOUNTER = 52; // SnmpConstants.COUNTER类型
public final static int DTYPE_AsnGAUGE = 53; // SnmpConstants.GAUGE类型
public final static int DTYPE_AsnUnsInteger64 = 60; // AsnUnsInteger64类型
// 内部变量
/*
* private SnmpContextPool contextv1 = null; private SnmpContextv2cPool
* contextv2c = null; private SnmpContextv3Pool contextv3 = null;
*/
private SnmpContext contextv1 = null;
private SnmpContextv2c contextv2c = null;
private SnmpContextv3 contextv3 = null;
private String host = "127.0.0.1"; // SNMP主机IP地址
private int port = SnmpContextBasisFace.DEFAULT_PORT; // SNMP端口号,缺省为161
private String comm = "public"; // community 串
boolean openFlag = false;
int snmpVersion = 1; // SNMP 版本号 1-SNMPv1, 2-SNMPv2c, 3-SNMPv3
// SNMP v3 专用参数
byte[]
分享到:
相关推荐
Java Mapping基于Java类,可以利用Java的全套编程功能,包括类、对象、方法、异常处理等。 2. **核心jar包的作用**: - `com.sap.aii.mapping.api.jar`:这个jar包包含SAP PI Java Mapping的API接口,它提供了一...
- **O-M Mapping映射基础**:ObjectSNMP采用了对象-管理信息映射(O-M Mapping)机制,将MIB中的组和表映射为Java对象,从而简化了SNMP管理任务的开发工作。 - **SNMP背景知识**:在SNMP中,每个组或表都可以用一个...
1. **mapfwk.jar**:这是Informatica Mapping框架的核心库,包含了处理Mapping对象所需的类和方法。开发者可以通过导入这个JAR文件,直接在Java程序中操作Mapping对象,例如创建、读取、更新或删除Mapping。 2. **...
SNMP4J是一个开源的Java实现的简单网络管理协议(SNMP)库,它提供了全面的API用于开发SNMP应用程序。本文将深入解析SNMP4J API的核心概念和主要功能,帮助开发者理解和利用这个强大的工具。 ## SNMP简介 SNMP,即...
`snmp4j`是Java平台上的一个开源SNMP库,它提供了完整的SNMPv1、SNMPv2c和SNMPv3的支持,包括协议操作、安全性模型以及MIB(Management Information Base)处理。这个库可以帮助开发者实现对网络设备的监控、配置和...
"生成bo,dao,mapping Java工具类" 是一种自动化代码生成的解决方案,它可以帮助开发者快速构建数据访问层的基础架构,包括Business Object (BO),Data Access Object (DAO)以及MyBatis的Mapper映射文件。...
Java SpringMVC Mapping的逆向生成是一个自动化工具的使用过程,主要是为了减少手动编写XML映射文件的工作量,提高开发效率。在这个场景中,我们提到的是使用Mybatis-Generator来生成DAO(数据访问对象)、Model...
本文主要介绍如何在 Eclipse IDE 中配置 Hibernate3 插件,并利用该插件自动生成数据库映射文件(Mapping)及对应的 Java 实体类。通过这一过程,可以显著提高开发效率并减少手动编写代码的工作量。 #### 二、准备...
SAP PI JAVA mapping code 可以直接使用,用JAVA开发的PI mapping代码。可以使用。
在Java编程中,读取数据库并将其...总的来说,"读取数据库类写成java类"涉及了Java的数据库连接、SQL查询、结果集处理、对象映射以及面向对象的属性读写。理解这些概念对于开发与数据库交互的Java应用程序至关重要。
而标题中提到的"一款基于Java注解的elasticsearch mapping生成工具",正是针对这一需求,为开发者提供了一种简洁且高效的方式来创建和管理ES的映射。 **Java注解与Elasticsearch Mapping** Java注解是一种元数据,...
通过O-M Mapping(Object-MIB映射)框架,ObjectSNMP将复杂的SNMP协议细节和MIB(管理信息库)语法转换为简单的Java对象操作,使得开发者无需深入理解SNMP协议细节就能进行网络设备的管理。该框架自动处理MIB和OID...
在Java开发中,VO(Value Object)类通常用于在应用程序的不同层之间传递数据,比如从数据库获取的数据到前端展示。自动生成VO类可以大大提高开发效率,避免手动编写大量的getter、setter方法和其他样板代码。本篇将...
标签“表 生成 java”进一步强调了这个工具的主要任务,它帮助开发者将数据库中的表转换成Java代码,这样开发者就可以直接在代码中操作这些对象,而无需手动编写对应的类。 压缩包中的"generator"可能是一个生成器...
Hibernate是一个开源的Java库,它实现了对象关系映射规范,使得Java开发者能够将数据库操作转换为对Java对象的操作,极大地简化了数据持久化的复杂性。博客链接可能提供了更深入的解释,包括如何配置Hibernate,创建...
下面我们将详细介绍如何使用Dozer库在Java项目中实现实体类转换。 首先,我们需要在pom.xml配置文件中引入Dozer库的依赖关系。pom.xml文件是Maven项目的配置文件,用于管理项目的依赖关系。在pom.xml文件中,我们...
SNMP4J是一个开源的Java实现的简单网络管理协议(SNMP)库,它为开发者提供了一套完整的API,用于构建SNMP应用。SNMP4J API的设计目标是易于使用,功能强大,并且完全符合SNMPv1、SNMPv2c以及SNMPv3的标准。这个API...
在Java开发中,将实体类(Entity Class)映射到数据库表是一种常见的做法,这通常涉及到ORM(Object-Relational Mapping)技术。ORM允许我们用面向对象的方式处理数据库操作,而无需编写大量的SQL语句。Java中的...
总之,"Elasticsearch java工具类"项目是面向Elasticsearch 5.x版本,与SpringBoot深度集成的解决方案,通过自定义注解简化了mapping的创建,同时考虑了在分布式环境下的使用。对于那些希望快速搭建和使用Elastic...
Java DAO (Data Access Object)、JDBC (Java Database Connectivity)、Hibernate 和 XML mapping 是Java开发中用于数据库操作的重要技术。这些技术共同构成了一个强大的数据访问层,使得开发者能够高效、灵活地与...