Java-IPDeal工具类
/**
* IP处理类
*/
import java.sql.*;
public class IPDeal {
/**
* 通过ip地址查询地区名称
* @param strip
* @return ip所在地区名称
*/
public static String getArea(String strip){
Connection conn = null;
PreparedStatement pstmt = null;
String sql;
String strRtn = null;
try{
MyJdbc myjdbc = new MyJdbc();
conn = myjdbc.getConn();
sql = "select * from fullip where startip<='" + strip + "' and endip>='" + strip + "'";
pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
if(rs.next()){
strRtn = rs.getString("country");
}else{
strRtn = "未确定";
}
rs.close();
rs = null;
}catch(Exception e){
e.printStackTrace();
}finally{
if (pstmt != null)
try{
pstmt.close();
pstmt = null;
}catch(Exception e){}
if (conn != null)
try{
conn.close();
conn = null;
}catch(Exception e){}
}
return strRtn;
}
/**
* 把ip地址格式化为:000.000.000.000
* @param ip
* @return 返回规格ip
*/
public static String strfullip(String ip){
StringBuffer buff = new StringBuffer();
buff.append("");
String strzero = "000";
int ilen = 0;
if(ip != null){
String[] arrip = ip.split("\\.");
if(arrip.length == 4){
for(int i = 0; i < 4; i++){
if (i==0){
ilen = arrip[i].length();
if(ilen < 3){
buff.append(strzero.substring(0,3-ilen)).append(arrip[i]);
}else{
buff.append(arrip[i]);
}
}else{
ilen = arrip[i].length();
if(ilen < 3){
buff.append(".").append(strzero.substring(0,3-ilen)).append(arrip[i]);
}else{
buff.append(".").append(arrip[i]);
}
}
}
}
}
return buff.toString();
}
/**
* @param args
*/
public static void main(String[] args) {
String strip = "202.108.33.32";
System.out.println(IPDeal.strfullip(strip));
System.out.println(System.currentTimeMillis());
System.out.println("ip" + strip + "所在地区:" + IPDeal.getArea(IPDeal.strfullip(strip)));
System.out.println(System.currentTimeMillis());
}
}
Java-IPDeal工具类的更多相关文章
- Java Properties工具类详解
1.Java Properties工具类位于java.util.Properties,该工具类的使用极其简单方便.首先该类是继承自 Hashtable<Object,Object> 这就奠 ...
- Java json工具类,jackson工具类,ObjectMapper工具类
Java json工具类,jackson工具类,ObjectMapper工具类 >>>>>>>>>>>>>>> ...
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- Java并发工具类 - CountDownLatch
Java并发工具类 - CountDownLatch 1.简介 CountDownLatch是Java1.5之后引入的Java并发工具类,放在java.util.concurrent包下面 http: ...
- MinerUtil.java 爬虫工具类
MinerUtil.java 爬虫工具类 package com.iteye.injavawetrust.miner; import java.io.File; import java.io.File ...
- MinerDB.java 数据库工具类
MinerDB.java 数据库工具类 package com.iteye.injavawetrust.miner; import java.sql.Connection; import java.s ...
- 小记Java时间工具类
小记Java时间工具类 废话不多说,这里主要记录以下几个工具 两个时间只差(Data) 获取时间的格式 格式化时间 返回String 两个时间只差(String) 获取两个时间之间的日期.月份.年份 ...
- Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie
Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie >>>>>>>>>>>>& ...
- UrlUtils工具类,Java URL工具类,Java URL链接工具类
UrlUtils工具类,Java URL工具类,Java URL链接工具类 >>>>>>>>>>>>>>>&g ...
- java日期工具类DateUtil-续一
上篇文章中,我为大家分享了下DateUtil第一版源码,但就如同文章中所说,我发现了还存在不完善的地方,所以我又做了优化和扩展. 更新日志: 1.修正当字符串日期风格为MM-dd或yyyy-MM时,若 ...
随机推荐
- 什么是阿里云ACA认证
阿里云云计算助理工程师认证(ACA - Alibaba Cloud Certified Associate)是面向使用阿里云基础产品的专业技术认证,主要涉及阿里云的计算.存储.网络.安全类的核心产品 ...
- GitHub 将源代码保存在北极洞穴,至少使用 1000 年!
最近,GitHub分享了开放Arctic Code Vault的计划,该计划旨在存储和保存Flutter和TensorFlow等开源软件. 所有开放源代码项目的代码都将存储在胶片上,该胶片每帧包含88 ...
- C#与C++的区别
C# 参考链接:https://www.runoob.com/csharp/csharp-tutorial.html ------------------C#数据类型----------------- ...
- SetIcon(m_hIcon, TRUE);的作用
SetIcon(m_hIcon, FALSE);// Set small icon 这条语句,程序显示时,左上角就会显示定义了的图标,生成的EXE程序也显示了这个图标 SetIcon(m_hIcon, ...
- STL map 常见用法详解
<算法笔记>学习笔记 map 常见用法详解 map翻译为映射,也是常用的STL容器 map可以将任何基本类型(包括STL容器)映射到任何基本类型(包括STL容器) 1. map 的定义 / ...
- php 简单的 单例模式
php单例模式简单说明 使用注意事项: 1.使用时不能用反射模式创建单例,否则会实例化一个新的对象 2.使用懒单例模式时注意线程安全问题 3.饿单例模式和懒单例模式构造方法都是 ...
- 初遇PHP(一)
因为想给自己弄一个微信公众号,顺便提升一下自己,所以有了以下内容,本次学习的最终目标是能用php制作套微信公众号,然后转成Java.为什么要这么麻烦呢,其一是买的资料书是php的,其二是顺水推舟刚好可 ...
- 28-Perl POD 文档
1.Perl POD 文档Perl 中可以在模块或脚本中嵌入 POD(Plain Old Documentation) 文档.POD 是一种简单而易用的标记型语言(置标语言).POD 文档使用规则: ...
- oracle按用户导出导入表
查看备份目录:select * from dba_directories where directory_name='DATA_PUMP_DIR'; 导入导出的文件名默认都是以备份目录为相对路径. 按 ...
- 管家婆crm9.2 sp2升级问题求助及解决方案
升级过程中发生如下问题: 弹出对话框1:升级完成,但是有错误产生. 弹出对话框2:升级数据库发生错误:An attempt was made to load an assembly from a ne ...