‘壹’ 怎么样使用java来获得百度地图开源接口中,IP定位返回的结果
gson,先按 那格式,定义一个类BaiGeo
Gson gson = new Gson();
result = gson.fromJson(sTotalString, BaiGeo.class);
‘贰’ java IP查询方法
Java编程查询IP地址归属地,可以调用淘宝提供的service查询,并且解析http请求返回的json串,代码如下:
packagegetAddressByIp;
importjava.io.ByteArrayOutputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.net.HttpURLConnection;
importjava.net.MalformedURLException;
importjava.net.URL;
importnet.sf.json.JSONObject;
publicclassGetAddressByIp
{
/**
*
*@paramIP
*@return
*/
(StringIP){
Stringresout="";
try{
Stringstr=getJsonContent("http://ip.taobao.com/service/getIpInfo.php?ip="+IP);
System.out.println(str);
JSONObjectobj=JSONObject.fromObject(str);
JSONObjectobj2=(JSONObject)obj.get("data");
Stringcode=(String)obj.get("code");
if(code.equals("0")){
resout=obj2.get("country")+"--"+obj2.get("area")+"--"+obj2.get("city")+"--"+obj2.get("isp");
}else{
resout="IP地址有误";
}
}catch(Exceptione){
e.printStackTrace();
resout="获取IP地址异常:"+e.getMessage();
}
returnresout;
}
(StringurlStr)
{
try
{//获取HttpURLConnection连接对象
URLurl=newURL(urlStr);
HttpURLConnectionhttpConn=(HttpURLConnection)url.openConnection();
//设置连接属性
httpConn.setConnectTimeout(3000);
httpConn.setDoInput(true);
httpConn.setRequestMethod("GET");
//获取相应码
intrespCode=httpConn.getResponseCode();
if(respCode==200)
{
returnConvertStream2Json(httpConn.getInputStream());
}
}
catch(MalformedURLExceptione)
{
e.printStackTrace();
}
catch(IOExceptione)
{
e.printStackTrace();
}
return"";
}
(InputStreaminputStream)
{
StringjsonStr="";
//ByteArrayOutputStream相当于内存输出流
ByteArrayOutputStreamout=newByteArrayOutputStream();
byte[]buffer=newbyte[1024];
intlen=0;
//将输入流转移到内存输出流中
try
{
while((len=inputStream.read(buffer,0,buffer.length))!=-1)
{
out.write(buffer,0,len);
}
//将内存流转换为字符串
jsonStr=newString(out.toByteArray());
}
catch(IOExceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
returnjsonStr;
}
}
‘叁’ java中获取本地IP地址
方法如下:
方法一,使用CMD命令:
public static String getLocalIPForCMD(){
StringBuilder sb = new StringBuilder();
String command = "cmd.exe /c ipconfig | findstr IPv4";
try {
Process p = Runtime.getRuntime().exec(command);
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = null;
while((line = br.readLine()) != null){
line = line.substring(line.lastIndexOf(":")+2,line.length());
sb.append(line);
}
br.close();
p.destroy();
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
方法二,使用Java方法:
public static String getLocalIPForJava(){
StringBuilder sb = new StringBuilder();
try {
Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces();
while (en.hasMoreElements()) {
NetworkInterface intf = (NetworkInterface) en.nextElement();
Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses();
while (enumIpAddr.hasMoreElements()) {
InetAddress inetAddress = (InetAddress) enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress() && !inetAddress.isLinkLocalAddress()
&& inetAddress.isSiteLocalAddress()) {
sb.append(inetAddress.getHostAddress().toString()+"\n");
}
}
}
} catch (SocketException e) { }
return sb.toString();
}
‘肆’ Java查询公网ip查询具体地理位置
当然得去IP字典里查,如果你有IP地理位置的数据的话。如果没有的,就得上一些查询IP地理位置的网站去“偷”,具体方法参照我写的一篇技术文章,我写的是根据手机号码查询归属地,原理是一样的。 http://gzhzh.javaeye.com/blog/425458
麻烦采纳,谢谢!
‘伍’ JAVA查找本机ip地址
注意第九行:InetAddress host_address = ....; 这说明host_address 本身是一个InetAddress类型的对象而不是String类型,所以要用toString()转换成String类型才能被String类型的str接收。这是严格意义上按照规范来讲。但如果你不用toString的话应该也可以,会默认把它转成String类型的。
‘陆’ 如何用java代码解析IP地址的位置,在线等 急
在咱大中华,IP定位,只能是定位到市一级,这个网上有好多工具包的,新浪的,阿里的,ip138的,都是非常简单的,几分钟的事
‘柒’ jsp/java如何根据ip定位访问者的省份,地区
你可以用其他比如网络地图(网页链接)等提供的API可以获得地区省份,你使用肯定是需要审核的,都是免费,你可以试试,自己实现我只能告诉你太难了,而且浪费时间,希望能帮到你。
‘捌’ java 如何计算一个ip的归属地
importjava.io.BufferedReader;
importjava.io.InputStreamReader;
importjava.net.URL;
importjava.net.URLConnection;
publicclassTest{
publicstaticvoidmain(String[]args)throwsException{
//查询IP的接口http://api.k780.com:88/?app=ip.get&ip=123.115.132.140&appkey=10003&sign=&format=json
BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));
System.out.println("请输入要查询的IP地址:");
Stringip=br.readLine();
Stringstr_url="http://api.k780.com:88/?app=ip.get&ip="+ip+"&appkey=10003&sign=&format=json";
URLurl=newURL(str_url);
URLConnectionconn=url.openConnection();
BufferedReaderretun=newBufferedReader(newInputStreamReader(conn.getInputStream()));
//这里返回的是一个JSON的格式,自己解析吧。
System.out.println(retun.readLine());
retun.close();
}
}
‘玖’ 谁清楚java代码获取ip地址方法是什么
1、如果服务器如果没有采用反向代理,而且客户端没有用正向代理的话,那么可以获取客户端的真实IP地址request.getRemoteAddr()
2、如果服务器如果没有采用反向代理,而且客户端有用正向代理的话,那么通过request.getRemoteAddr()获取客户端的IP地址是客户端 的代理服务器的地址,并不是客户端的真实地址
3、如果客户端使用的是多层代理的话,服务器获得的客户端地址是客户端的最外围代理服务器的地址如果服务器如果采用反向代理服务器,不管客户端采用的是何种方式访问服务器