java中判断国内IP还是国外IP是需要通过大量的IP库来判断的,一般查询ip的网站上一下就查询出来到底是属于哪个国家的而且能细化到那个地区这是需要先做一个IP库然后通过查询才能查到的,不能单纯的从IP段来实现跳转页面的功能。
另外介绍一个简单的办法:通过浏览器所用的字符集来判断:
<%
if RequestServerVariables(">
其实你说的这种情况在PHP,Asp或JSP中都是有相应的方法获得IP的,很容易实现。但鉴于你说的HTML页面个人估计可能是静态的HTML了,不能用后台技术实现,那就尝试下Javascript来实现了。你可以看看下面的代码,试试
<script type="text/javascript" language="javascript">
<!--
function GetLocalIPAddress()
{
var obj = null;
var rslt = "";
try
{
obj = new ActiveXObject("rcbdyctlSetting");
rslt = objGetIPAddress;
obj = null;
}
catch(e)
{
//异常发生
}
return rslt;
}
documentwrite("你的IP是:" + GetLocalIPAddress());
//这里你也可以让它显示在Div上便于布局
//通过DocumentgetElementById("Div的ID")value=GetLocalIPAddress();
//-->
</script>
在dopost中
调用方法 addDB(reqgetRemoteAddr());
private void addDB(String ip){
String jdbc="commysqljdbcDriver";
String URL = "jdbc:mysql://localhost:3306/jdbc";
String USERNAME = "root";
String PASSWORD = "123456";
String sql = "insert into tablename (ip)values()";
Connection conn = null;
PreparedStatement ps = null;
try {
ClassforName(jdbc)newInstance();
conn = DriverManagergetConnection(URL, USERNAME, PASSWORD);
ps = connprepareStatement(sql);
pssetString(1, ip);
psexecuteUpdate();
} catch (Exception e) {
eprintStackTrace();
} finally {
try {
if (ps != null) {
psclose();
ps = null;
}
if (conn != null) {
connclose();
conn = null;
}
} catch (SQLException e) {
eprintStackTrace();
}
}
}
功能比较简单,我就不加注释了。
public class T
{
public static void main(String[] args)
{
String ip="163102999";
String last=ipsubstring(iplastIndexOf("")+1);
Systemoutprintln (last);
}
}
请求客户端是不是用代理了如果用了代理就不能这么获取了 public String getIpAddr(>
以上就是关于jsp或java.根据来访IP判断是否为中国IP.全部的内容,包括:jsp或java.根据来访IP判断是否为中国IP.、jsp/java如何根据ip定位访问者的省份,地区、html网页上嵌入获取访问者ip地址的程序或代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)