Servlet如何得到客户端机器的信息


Posted in 面试题 onOctober 17, 2014
Servlet可以使用getRemoteAddr()和getRemoteHost()来得到客户端的IP地址和host, 代码如下所示:

public String ServletRequest.getRemoteAddr()
public Stirng ServletRequest.getRemoteHost()

用这些方法来访问客户端有所限制,如下代码实现了对客户端配置进行检查并把相关消息发送到客户端的功能:

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class DemoExportRestriction extends HttpServlet{

public void doGet(HttpServletRequest req,HttpServletResponse res)
throws ServletException,IOException{

res.setContentType("text/plain");
PrintWriter out= res.getWriter();

//得到客户端的hostname
String remoteHost = req.getRemoteHost();

//查看客户端是否允许这样的操作
if(!isHostAllowed(remoteHost)){
out.println("Access ACCESS DENIED ");
} else{
out.println("access granted");
}
}
private boolean isHostAllowed(String host) {
return(host.endsWith(".com"))||
(host.indexOf(.)==-1);//没有域名 ok
}
}

Tags in this post...

面试题 相关文章推荐
JRE、JDK、JVM之间的关系怎样
May 16 面试题
JAVA和C++的区别
Oct 06 面试题
数据库笔试题
May 09 面试题
SQL里面如何插入自动增长序列号字段
Mar 29 面试题
delegate与普通函数的区别
Jan 22 面试题
StringBuilder和String的区别
May 18 面试题
如何进行Linux分区优化
Feb 12 面试题
Linux管理员面试题 Linux admin interview questions
Jul 08 面试题
某公司部分笔试题
Nov 05 面试题
软件测试常见笔试题
Feb 04 面试题
创联软件面试题笔试题
Oct 07 面试题
既然说Ruby中一切都是对象,那么Ruby中类也是对象吗
Jan 26 面试题
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
Mar 16 #面试题
Servlet如何得到服务器的信息
Dec 22 #面试题
Servlet方面面试题
Sep 28 #面试题
介绍一下javax.servlet.Servlet接口及其主要方法
Nov 30 #面试题
如何现实servlet的单线程模式
Aug 05 #面试题
描述JSP和Servlet的区别、共同点、各自应用的范围
Oct 02 #面试题
Java Servlet的主要功能和作用是什么
Feb 14 #面试题
You might like
在PHP中使用反射技术的架构插件使用说明
2010/05/18 PHP
JavaScript对象和字串之间的转换实例探讨
2013/04/21 Javascript
分享Javascript中最常用的55个经典小技巧
2013/11/29 Javascript
深入理解jQuery中live与bind方法的区别
2013/12/18 Javascript
javascript面向对象特性代码实例
2014/06/12 Javascript
javascript实现复制与粘贴操作实例
2014/10/16 Javascript
使用jquery实现仿百度自动补全特效
2015/07/23 Javascript
实例代码详解javascript实现窗口抖动及qq窗口抖动
2016/01/04 Javascript
用js实现放大镜的效果的简单实例
2016/05/23 Javascript
JavaScript 数组中最大最小值
2016/06/05 Javascript
js数组常用操作方法小结(增加,删除,合并,分割等)
2016/08/02 Javascript
JavaScript模板引擎Template.js使用详解
2016/12/15 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
JsonServer安装及启动过程图解
2020/02/28 Javascript
通过实例了解Nodejs模块系统及require机制
2020/07/16 NodeJs
Python监控主机是否存活并以邮件报警
2015/09/22 Python
Python的GUI框架PySide的安装配置教程
2016/02/16 Python
Python读取sqlite数据库文件的方法分析
2017/08/07 Python
Django使用Mysql数据库已经存在的数据表方法
2018/05/27 Python
Python pexpect模块及shell脚本except原理解析
2020/08/03 Python
python如何编写类似nmap的扫描工具
2020/11/06 Python
python中实现词云图的示例
2020/12/19 Python
css3动画效果抖动解决方法
2018/09/03 HTML / CSS
全球领先的美容用品专卖店:Beauty Plus Salon
2018/09/04 全球购物
英国在线电子和小工具商店:TecoBuy
2018/10/06 全球购物
酒后驾驶检讨书
2014/01/27 职场文书
毕业生欢送会主持词
2014/03/31 职场文书
8和9的加减法教学反思
2014/05/01 职场文书
中级会计大学生职业生涯规划书
2014/09/16 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
呼啸山庄读书笔记
2015/06/29 职场文书
幼儿园六一儿童节主持词
2015/06/30 职场文书
房产销售员2015年终工作总结
2015/10/22 职场文书
“爱眼护眼,提前预防近视”倡议书3篇
2019/10/30 职场文书
MySQL中的隐藏列的具体查看
2021/09/04 MySQL
详解Go语言中Get/Post请求测试
2022/06/01 Golang