从tshark到java程序的sql管道数据
我使用tshark捕获TCP流量,我想创建一个java应用程序,从tshark接收数据包,提取一些字段,然后将这些字段直接放入SQL数据库中
在tshark中,我使用这个命令
C:\Program Files\Wireshark>tshark -r 111.pcapng -T fields -e frame.number -e ip.
src -e tcp.window_size_value -e frame.time -e data.text -e tcp.analysis.duplicat
e_ack -e tcp.analysis.out_of_order -e tcp.analysis.retransmission -e tcp.analysi
s.fast_retransmission -e tcp.analysis.spurious_retransmission -e tcp.analysis.ze
ro_window -e tcp.stream -E header=y -E separator=, -l | java JavaApplication5
它可以工作并开始将数据管道化到JavaApplication5,但在我看来什么都没有
这里是我在java中使用的代码
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.*;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author sheda
*/
public class JavaApplication5 {
/**
* @param args the command line arguments
*/
public static void main(String[] args)throws IOException{
// TODO code application logic here
try {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String s;
while ((s=in.readLine())!=null&&s.length()!=0) {
System.out.println(s);
}
} catch (LinkageError e) {
}
}
}
我在运行netbeans时使用它,它为我提供了java。lang.NoClassDefFoundError
为什么?
另一个想法是我想直接从tshark的STDIN和STDOUT中读取,并将读取的内容保存在字符串中以备将来处理(将字符串与预定义的字符串格式进行比较,提取信息,然后直接转发到SQL数据库)
有人帮忙吗
多谢各位
共 (0) 个答案