OIDのツリー構造の実装に問題があります。親をクリックすると、子の詳細のみを表示する必要があり、子のサブ子は表示しません。つまり、「。」を含むOIDを表示する必要はありません。(ドット)。
たとえば、OID構造がprivate.MIB.sample.firstprivate.MIB.sample.secondの場合などです。
MIBをクリックすると、最初と2番目ではなく「サンプル」のみが表示されます。
サンプルをクリックすると、1番目と2番目が表示されます。これをJavaで実装するにはどうすればよいですか。私のデータベースはMySQLです。私が試したコードを以下に示します
FilteredRowSet rs = new FilteredRowSetImpl();
// for Other Types Like OBJECT-TYPE, Object_IDENTIFIER
rs = new FilteredRowSetImpl();
rs.setCommand("Select * from MIBNODEDETAILS where " + "mn_OID like '" + OID
+ ".%' order by mn_NodeType, mn_OID");
rs.setUrl(Constants.DB_CONNECTION_URL);
rs.setFilter(new MibRowFilter(1, expString));
rs.execute();
rs.absolute(1);
rs.beforeFirst();
変更はsetCommand引数で行われると思います。
これどうやってするの?
mobnodedetailsテーブルの構造
+--------------------+-------------------+-------------+
| mn_OID | mn_name | mn_nodetype |
+--------------------+-------------------+-------------+
| 1 | iso | 0 |
| 1.3 | org | 1 |
| 1.3.6 | dod | 1 |
| 1.3.6.1 | internet | 1 |
| 1.3.6.1.1 | directory | 1 |
| 1.3.6.1.2 | mgmt | 1 |
| 1.3.6.1.2.1 | mib-2 | 0 |
| 1.3.6.1.2.1.1 | system | 1 |
| 1.3.6.1.2.1.10 | transmission | 1 |