JAVA JSP笔记

本人开发的开发者技术变现资源聚集地,大家支持下,下面是网址

https://www.baiydu.com

 一、jsp加载项目中资源图片

     如果直接将静态页面写的代码copy到jsp中,你会发现图片都无法加载。

       获取代码:

       String path = request.getContextPath();

      String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

       asd

<%=basePath%>/Icons/VerifyCode.png

二、Servlet获取IP遇到的bug

      我是在mac os系统上开发遇到的这个bug,windows上有没这个问题我不知道。

       获取用户ip代码:

 String s = request.getHeader("X-Forwarded-For");
    	    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
    	        s = request.getHeader("Proxy-Client-IP");
    	    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
    	        s = request.getHeader("WL-Proxy-Client-IP");
    	    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
    	        s = request.getHeader("HTTP_CLIENT_IP");
    	    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
    	        s = request.getHeader("HTTP_X_FORWARDED_FOR");
    	    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
    	        s = request.getRemoteAddr();
    	    if ("127.0.0.1".equals(s) || "0:0:0:0:0:0:0:1".equals(s))
    	        try {
    	            s = InetAddress.getLocalHost().getHostAddress();
    	        }
    	        catch (UnknownHostException unknownhostexception) {
    	        }
    	 

   当前面的判断都为空时,进入最后一个if,项目就蹦了,错误提示-->

if ("127.0.0.1".equals(s) || "0:0:0:0:0:0:0:1".equals(s))
    	        try {
    	            s = InetAddress.getLocalHost().getHostAddress();
    	        }
    	        catch (UnknownHostException unknownhostexception) {
    	        }

 this web application instance has been stopped already. Could not load [java.net.InetAddress].

解决方法:

        打开apache-tomcat文件夹---->打开conf文件夹---->打开server.xml文件--><Host>节点下增加

          <Context path="/Servlet" docBase="/Servlet" debug="0" reloadable="true"/>

  

三、  Ajax请求servlet时报一个错

   报这个错是接口不支持ajax的请求方式,将get和post都增加到serlvet中,如果只在get中写代码,那么post中就调用get方法,如果只在post中写代码,那么久在get中调用post。

上面的说明我的代码写在了doGet中,出于安全考虑,如果稍微zhong yao de jie kou,我们应该选择只开放post接口,因为get方式的接口,可以直接将请求参数拼接到url上然后通过浏览器访问这样相对来说不安全。

本人创业做的一款androidApp, 下载量已经有2000多万,各种当前热门的网络手机奖励红包全部集成,另外还有热门电影和淘宝高额优惠券!很适合各类型的用户。

 

    

原文地址:https://www.cnblogs.com/xiaoliao/p/6044348.html