Filter过滤器实现同一地址手机和电脑页面不同
1 String[] mobileAgents = { “iphone”, “android”, “phone”, “mobile”, 2 “wap”, “netfront”, “java”, “opera mobi”, “opera mini”, “ucweb”, 3 “windows ce”, “symbian”, “series”, “webos”, “sony”, 4 “blackberry”, “dopod”, “nokia”, “samsung”, “palmsource”, “xda”, 5 “pieplus”, “meizu”, “midp”, “cldc”, “motorola”, “foma”, 6 “docomo”, “up.browser”, “up.link”, “blazer”, “helio”, “hosin”, 7 “huawei”, “novarra”, “coolpad”, “webos”, “techfaith”, 8 “palmsource”, “alcatel”, “amoi”, “ktouch”, “nexian”, 9 “ericsson”, “philips”, “sagem”, “wellcom”, “bunjalloo”, “maui”, 10 “smartphone”, “iemobile”, “spice”, “bird”, “zte-“, “longcos”, 11 “pantech”, “gionee”, “portalmmm”, “jig browser”, “hiptop”, 12 “benq”, “haier”, “^lct”, “320×320”, “240×320”, “176×220”, 13 “w3c “, “acs-“, “alav”, “alca”, “amoi”, “audi”, “avan”, “benq”, 14 “bird”, “blac”, “blaz”, “brew”, “cell”, “cldc”, “cmd-“, “dang”, 15 “doco”, “eric”, “hipt”, “inno”, “ipaq”, “java”, “jigs”, “kddi”, 16 “keji”, “leno”, “lg-c”, “lg-d”, “lg-g”, “lge-“, “maui”, “maxo”, 17 “midp”, “mits”, “mmef”, “mobi”, “mot-“, “moto”, “mwbp”, “nec-“, 18 “newt”, “noki”, “oper”, “palm”, “pana”, “pant”, “phil”, “play”, 19 “port”, “prox”, “qwap”, “sage”, “sams”, “sany”, “sch-“, “sec-“, 20 “send”, “seri”, “sgh-“, “shar”, “sie-“, “siem”, “smal”, “smar”, 21 “sony”, “sph-“, “symb”, “t-mo”, “teli”, “tim-“, “tosh”, “tsm-“, 22 “upg1”, “upsi”, “vk-v”, “voda”, “wap-“, “wapa”, “wapi”, “wapp”, 23 “wapr”, “webc”, “winw”, “winw”, “xda”, “xda-“, 24 “Googlebot-Mobile” };
1 /** 2 * 判断是否是手机访问 3 * 4 * @param request 5 * @return 6 */ 7 public boolean isMoblie(HttpServletRequest request) { 8 boolean isMoblie = false; 9 String[] mobileAgents = { "iphone", "android", "phone", "mobile", 10 "wap", "netfront", "java", "opera mobi", "opera mini", "ucweb", 11 "windows ce", "symbian", "series", "webos", "sony", 12 "blackberry", "dopod", "nokia", "samsung", "palmsource", "xda", 13 "pieplus", "meizu", "midp", "cldc", "motorola", "foma", 14 "docomo", "up.browser", "up.link", "blazer", "helio", "hosin", 15 "huawei", "novarra", "coolpad", "webos", "techfaith", 16 "palmsource", "alcatel", "amoi", "ktouch", "nexian", 17 "ericsson", "philips", "sagem", "wellcom", "bunjalloo", "maui", 18 "smartphone", "iemobile", "spice", "bird", "zte-", "longcos", 19 "pantech", "gionee", "portalmmm", "jig browser", "hiptop", 20 "benq", "haier", "^lct", "320x320", "240x320", "176x220", 21 "w3c ", "acs-", "alav", "alca", "amoi", "audi", "avan", "benq", 22 "bird", "blac", "blaz", "brew", "cell", "cldc", "cmd-", "dang", 23 "doco", "eric", "hipt", "inno", "ipaq", "java", "jigs", "kddi", 24 "keji", "leno", "lg-c", "lg-d", "lg-g", "lge-", "maui", "maxo", 25 "midp", "mits", "mmef", "mobi", "mot-", "moto", "mwbp", "nec-", 26 "newt", "noki", "oper", "palm", "pana", "pant", "phil", "play", 27 "port", "prox", "qwap", "sage", "sams", "sany", "sch-", "sec-", 28 "send", "seri", "sgh-", "shar", "sie-", "siem", "smal", "smar", 29 "sony", "sph-", "symb", "t-mo", "teli", "tim-", "tosh", "tsm-", 30 "upg1", "upsi", "vk-v", "voda", "wap-", "wapa", "wapi", "wapp", 31 "wapr", "webc", "winw", "winw", "xda", "xda-", 32 "Googlebot-Mobile" }; 33 if (request.getHeader("User-Agent") != null) { 34 for (String mobileAgent : mobileAgents) { 35 if (request.getHeader("User-Agent").toLowerCase() 36 .indexOf(mobileAgent) >= 0) { 37 isMoblie = true; 38 break; 39 } 40 } 41 } 42 return isMoblie; 43 }
1 public class WapFilter implements Filter { 2 @Override 3 public void doFilter(ServletRequest request, ServletResponse response, 4 FilterChain chain) throws IOException, ServletException { 5 response.setContentType("text/html;charset=utf-8"); 6 HttpServletRequest httpRequest = (HttpServletRequest) request; 7 String uri = httpRequest.getRequestURI(); 8 if (isMoblie(httpRequest)) { 9 httpRequest.getRequestDispatcher("/wap" + uri).forward(request, 10 response); 11 } else { 12 chain.doFilter(request, response);// 电脑放行 13 } 14 } 15 //省略其他代码…… 16 }
1 <filter> 2 <filter-name>wapfilter</filter-name> 3 <filter-class>cn.dtblog.filter.WapFilter</filter-class> 4 </filter><filter-mapping> 5 <filter-name>wapfilter</filter-name> 6 <url-pattern>/*</url-pattern> 7 </filter-mapping>
电脑地址 | 拼接wap后的手机网址 |
/index.jsp | /wap/index.jsp |
/about.jsp | /wap/about.jsp |
原文由博主 乐智 编辑撰写,版权归博主所有。
原文地址 http://www.dtblog.cn/1105.html 转载请注明出处!
转载于:https://www.cnblogs.com/AIThink/p/5827758.html
Filter过滤器实现同一地址手机和电脑页面不同相关推荐
- 用sublime server 启动本地服务器(手机访问电脑页面)
安装sublime server 插件包 1.Ctrl + shift + p install package sublimeServer 2.git cd to your Sublime pack ...
- 百度android模拟器下载地址,百度手机助手电脑版怎么下载 安卓模拟器电脑版下载地址...
最近在朋友圈非常流行的手游百度手机助手已经开放下载了,不过不少玩家都觉得手机上玩百度手机助手手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行百度手机助手这款手游呢?小编现在就推荐一款百 ...
- 获取 连接本地手机热点 的 的具体IP和MAC地址(其他手机或电脑)
当在设备终端(手机,电脑等)上使用Wifi热点的时候,需要获知Wifi热点的运行状态,热点是否打开,连接到该WIFI热点的设备数量,以及连接设备的具体IP和MAC地址. 使用re文件管理器去&q ...
- 最新织梦DEDECMS全站目录化伪静态设置(网址和生成静态地址一样、电脑和手机访问地址也一样)
最新织梦DEDECMS全站目录化伪静态设置,伪静态设置成功后,网址和生成静态地址一样.电脑和手机访问地址也一样. 如果你电脑端是生成静态而手机端是动态的话,请查看织梦手机端伪静态设置http://ww ...
- 手机访问电脑同一局域网下的地址
手机想访问电脑同一局域网下的地址 首先,手机和电脑连接相同wifi 1.在手机的wifi上先配置端口 选择连接的wifi,点进去,代理-手动 端口:XXXX 2.电脑端配置端口如下: 即配置电脑防火墙 ...
- javascript判断浏览器和终端类型,js如何区分手机、电脑终端和浏览器
判断浏览器类型 复制代码代码如下: if ( window.sidebar && "object" == typeof( window.sidebar ) & ...
- Filter过滤器和动态代理处理机制和案例(Filter过滤器和动态代理结合)
关注公众号:"奇叔码技术" 回复:"java面试题大全"或者"java面试题" 即可免费领取资料 Filter过滤器和动态代理处理机制和案例 ...
- [JAVA EE] Filter过滤器
Filter过滤器 ◼ 过滤器(Filter)可以动态地拦截请求和响应. ◼ 应用场景:过滤敏感词汇.防止SQL注入.设置字符编码.进行URL级 别的权限访问控制.压缩响应信息等. 启动文件DemoA ...
- linux 设置代理_用Android手机做电脑的HTTP代理服务器
在手机端创建一个 HTTP 代理可以让电脑共享手机网络. 手机端 在 Play Store 里选择 Termux 安装. 其它备选 app : GNURoot Debian 等. 打开 Termux ...
最新文章
- 数据库收缩:NOTRUNCATE与TRUNCATEONLY
- 【 MATLAB 】模拟信号采样及离散时间傅里叶变换(DTFT)案例分析
- 优秀中层必备的十大能力
- BZOJ 4006 Luogu P3264 [JLOI2015]管道连接 (斯坦纳树、状压DP)
- 72万奖金!DCIC 2021数据竞赛正式报名了!
- Navicat导入TXT到数据库
- 大龄技术人的出路在哪里?6月20日长沙-中国技术开放日邀请你一起探讨
- 华为云企业级Redis:助力VMALL打造先进特征平台
- 虚拟机开启mysql服务_远程操作虚拟机中的mysql服务器
- 《阿甘正传》,看了很多遍,是否留意到这个镜头???
- informix 访问mysql_Informix 11.7 使用非系统用户访问数据库
- android小米手机变慢,小米手机出现变慢卡顿现象怎么办 教你如何让小米手机跑的更快的方法...
- Android手机RTMP播放工具(APK,支持秒开)
- .Net平台下安装DotNetBar
- 安卓基于图像识别和CNN做出一个通用的斗地主记牌器(一)
- OpenGL 视椎体剔除算法
- python flask web_Python Web开发之Flask
- burpSuit抓取app的数据包
- PHP 测试页index.php phpinfo 空白问题
- Jmeter学习-BeanShell 内置变量vars、props、prev
热门文章
- HDSF主要节点解说(二)工作原理
- eclipse 最全快捷键 分享快乐与便捷
- Visio 与 Access 2007 的集成应用
- EPCS 无法配置FPGA的解决方法以及JTAG、AS调试总结
- linux xorg 文件 位置,Linux系统中xorg.conf文件详细介绍
- RocketMQ(七)——消息的消费
- edge新版 能够正则式_在最近的一项HTML5测试中,新版Edge浏览器表现满分
- 卡尔曼滤波(kalman filter)
- 国外稳定免费php,国外免费php空间 稳定
- c++排序函数_Excel2010 技巧六 (排名函数)