2012-09-24 106 views
0

我使用PMD检查Java代码,我碰到的,指出,这个问题“不硬编码的IPv4或IPv6地址,甚至127.0.0.1!”我使用的是IPv4地址其实只是127.0.0.1,仅用于测试目的,但尽管如此,我必须硬编码的版本转换成某种形式的加密版本。我不确定最简单的方法是什么。编码IPv4地址

任何帮助将不胜感激!

+3

加密=(不-hardcoded)。就个人而言,如果您不知道/理解/同意理由,我会忽略警告。 –

+5

也许,你可以用'localhost'主机名代替,并在运行时解析地址? – Serge

+1

同意@Serge。 http://pmd.sourceforge.net/snapshot/rules/basic.html#AvoidUsingHardCodedIP –

回答

2

你是不是想加密任何东西。

你婉做的是传递一个主机名,并做适当的主机查找获取Internet地址。看看标准的JDK的InetAddress类和getAllByName(String host)在和GetByName方法(String host)在

1

我已经解决了这个PMD's这样的警告:


// Old code 
`if (!"127.0.0.1".equals(serverIP)) { ... }` 

// New code 
`if (!InetAddress.getLoopbackAddress().getHostAddress().equals(serverIP)) { ... }`