开门见山,问题来源:
鄙人小宇,也可以叫我Crab宇。Crab有次看片自学的时候遇到个问题。Crab宇每一个步骤都是按照老师的步骤来的,结果就是进不去。Crab宇就纳闷了,为什么你是这么做的,Crab宇也是这么做的,Crab就是进不去呢?于是Crab宇就进行各种crab了。终于知道。。。(原来Crab宇太菜)
下面要讲重点喽 ------------------------------------------
myeclipse中,如果把jsp写在WEB-INF下的话,将受到访问保护,需要配置web.xml来访问。
例如:
这个项目中首页index.jsp是在WebRoot目录下的,访问不受限制;而list.jsp则是在web-inf目录下的,被容器保护,不能在地址栏输入:http://localhost:8080/MicroMessage/list.jsp 来访问。而需要在web.xml中配置,通过配置好url来访问。例如:
在地址栏输入:http://localhost:8080/MicroMessage/List.action
容器就会首先在<servlet-mapping>中寻找url-pattern为“List.action”的<servlet-name>,然后再通过<servlet-name>寻找执行类<servlet-class>,这里是com.imooc.servlet.ListServlet.在这个类中用请求/响应的请求转发或者重定向来跳转。
但同时,如果引用的css和js等资源文件也放到WEB-INF目录下的话,就无法采用外部引用了。如果强行引用,需要在jsp中采用<jsp: forward >标签来跳转;
如果资源文件不是保密的,还是放在Webroot目录下省事。
如果非要将资源文件(js和css)也放到web-inf中,就需要用到<jsp:forward >标签或者自定义js了。
我是分割线 ------------------------------------------------------------------------
第一次写专业微博,各位看官随意。