📄 frame1.java~55~
字号:
package sendsnmp;
import java.awt.*;
import java.awt.event.*;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JButton;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JMenuBar;
import javax.swing.JPanel;
import javax.swing.JToolBar;
import javax.swing.JLabel;
import org.snmp4j.Snmp;
import org.snmp4j.transport.DefaultUdpTransportMapping;
import org.snmp4j.event.ResponseListener;
import org.snmp4j.event.ResponseEvent;
import org.snmp4j.PDU;
import java.io.IOException;
import org.snmp4j.smi.UdpAddress;
import java.net.InetAddress;
import org.snmp4j.CommunityTarget;
import org.snmp4j.smi.OctetString;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.smi.Address;
import org.snmp4j.smi.GenericAddress;
import org.snmp4j.smi.VariableBinding;
import org.snmp4j.smi.OID;
import javax.swing.JOptionPane;
import org.snmp4j.TransportMapping;
import org.snmp4j.CommandResponder;
import org.snmp4j.CommandResponderEvent;
import java.util.Vector;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class Frame1 extends JFrame {
InetAddress ip;
JPanel contentPane;
JMenuBar jMenuBar1 = new JMenuBar();
JMenu jMenuFile = new JMenu();
JMenuItem jMenuFileExit = new JMenuItem();
JMenu jMenuHelp = new JMenu();
JMenuItem jMenuHelpAbout = new JMenuItem();
JToolBar jToolBar = new JToolBar();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
ImageIcon image1 = new ImageIcon(sendsnmp.Frame1.class.getResource(
"openFile.png"));
ImageIcon image2 = new ImageIcon(sendsnmp.Frame1.class.getResource(
"closeFile.png"));
ImageIcon image3 = new ImageIcon(sendsnmp.Frame1.class.getResource(
"help.png"));
JLabel statusBar = new JLabel();
JButton jButton4 = new JButton();
JButton jButton5 = new JButton();
CommunityTarget target;
Snmp snmp;
TransportMapping transport;
PDU pdu;
ResponseListener listener;
public Frame1() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
//new Monitor().start();
ip = InetAddress.getLocalHost();
contentPane = (JPanel) getContentPane();
contentPane.setLayout(null);
setSize(new Dimension(400, 300));
setTitle("Frame Title");
statusBar.setText(" ");
statusBar.setBounds(new Rectangle(0, 284, 400, 16));
jMenuFile.setText("File");
jMenuFileExit.setText("Exit");
jMenuFileExit.addActionListener(new Frame1_jMenuFileExit_ActionAdapter(this));
jMenuHelp.setText("Help");
jMenuHelpAbout.setText("About");
jMenuHelpAbout.addActionListener(new
Frame1_jMenuHelpAbout_ActionAdapter(this));
jToolBar.setBounds(new Rectangle(0, 0, 400, 25));
jButton4.setBounds(new Rectangle(15, 129, 160, 25));
jButton4.setFont(new java.awt.Font("Dialog", Font.PLAIN, 12));
jButton4.setText("连续发送100个Trap");
jButton4.addActionListener(new Frame1_jButton4_actionAdapter(this));
jButton5.setBounds(new Rectangle(221, 130, 115, 25));
jButton5.setFont(new java.awt.Font("Dialog", Font.PLAIN, 12));
jButton5.setText("发送一个Trap");
jButton5.addActionListener(new Frame1_jButton5_actionAdapter(this));
jMenuBar1.add(jMenuFile);
jMenuFile.add(jMenuFileExit);
jMenuBar1.add(jMenuHelp);
jMenuHelp.add(jMenuHelpAbout);
setJMenuBar(jMenuBar1);
jButton1.setIcon(image1);
jButton1.setToolTipText("Open File");
jButton2.setIcon(image2);
jButton2.setToolTipText("Close File");
jButton3.setIcon(image3);
jButton3.setToolTipText("Help");
jToolBar.add(jButton1);
jToolBar.add(jButton2);
jToolBar.add(jButton3);
contentPane.add(jToolBar, null);
contentPane.add(statusBar, null);
contentPane.add(jButton4);
contentPane.add(jButton5);
}
/**
* File | Exit action performed.
*
* @param actionEvent ActionEvent
*/
void jMenuFileExit_actionPerformed(ActionEvent actionEvent) {
System.exit(0);
}
/**
* Help | About action performed.
*
* @param actionEvent ActionEvent
*/
void jMenuHelpAbout_actionPerformed(ActionEvent actionEvent) {
Frame1_AboutBox dlg = new Frame1_AboutBox(this);
Dimension dlgSize = dlg.getPreferredSize();
Dimension frmSize = getSize();
Point loc = getLocation();
dlg.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x,
(frmSize.height - dlgSize.height) / 2 + loc.y);
dlg.setModal(true);
dlg.pack();
dlg.show();
}
public void init() throws IOException {
Address targetAddress = GenericAddress.parse("udp:192.168.100.103/162");
target = new CommunityTarget();
target.setCommunity(new OctetString("public"));
target.setAddress(targetAddress);
target.setVersion(SnmpConstants.version2c);
pdu = new PDU();
pdu.add(new VariableBinding(new OID("1.3.6.1.6.3.1.1.4.1.0"),new OID("1.3.6.1.4.1.6768.3.3.3.0.9400")));
pdu.setType(PDU.GETNEXT);
snmp = new Snmp(new DefaultUdpTransportMapping());
listener = new ResponseListener() {
public void onResponse(ResponseEvent event) {
PDU response = event.getResponse();
PDU request = event.getRequest();
if (response == null) {
System.out.println("Request " + request + " timed out");
} else {
System.out.println("Received response " + response +
" on request " +
request);
}
}
};
}
public void jButton4_actionPerformed(ActionEvent e) throws IOException {
for(int i = 0;i<100;i++){
snmp.sendPDU(pdu, target, null, listener);
}
}
public void jButton5_actionPerformed(ActionEvent e) {
}
class Monitor extends Thread implements CommandResponder {
public void run() {
try {
TransportMapping transport =
new DefaultUdpTransportMapping(new UdpAddress(ip,
162));
Snmp snmp = new Snmp(transport);
snmp.addCommandResponder(this);
transport.listen();
System.out.println("正在监听162端口...");
} catch (Exception e) {
JOptionPane.showMessageDialog(new JFrame(), e.getMessage(),
"错误",
JOptionPane.ERROR_MESSAGE);
}
}
public void processPdu(CommandResponderEvent commandResponderEvent) {
PDU p = commandResponderEvent.getPDU();
Address t = commandResponderEvent.getPeerAddress();
String remoteIP = t.toString();
int sep = remoteIP.indexOf("/");
String ip = remoteIP.substring(0, sep);
System.out.println(ip);
Vector s = p.getVariableBindings();
for(int i = 0;i<s.size();i++){
System.out.println((VariableBinding)s.get(i));
}
}
}
}
class Frame1_jButton5_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jButton5_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton5_actionPerformed(e);
}
}
class Frame1_jButton4_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jButton4_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
try {
adaptee.jButton4_actionPerformed(e);
} catch (IOException ex) {
System.err.println(ex.getMessage());
}
}
}
class Frame1_jMenuFileExit_ActionAdapter implements ActionListener {
Frame1 adaptee;
Frame1_jMenuFileExit_ActionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent actionEvent) {
adaptee.jMenuFileExit_actionPerformed(actionEvent);
}
}
class Frame1_jMenuHelpAbout_ActionAdapter implements ActionListener {
Frame1 adaptee;
Frame1_jMenuHelpAbout_ActionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent actionEvent) {
adaptee.jMenuHelpAbout_actionPerformed(actionEvent);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -