发布网友 发布时间:2022-04-23 06:12
共1个回答
热心网友 时间:2022-04-19 23:58
先跟你说几个事情,后期好处理你多个问题。
1.src是源文件夹,这里你可以创建N个源文件夹,都是未来要编译的,你也可以创建一个源文件夹叫conf,把配置文件都放这里,但是前提struts1不可以(一会说为什么),也就是源文件夹是一类,等着编译的,那么编译到哪呢? 就是下面的
2.WebRoot\WEB-INF\classes有这个文件夹,编译的东西就在这,WEB-INF下这里只对程序员可见,对请求者也就是客户端不可见(默认就是classes和lib),所以有些项目为了不让用户直接访问JSP,就将JSP放这下面,用户只能请求控制层(以后我说C层),然后返回相应页面,当然,有的项目还有欢迎页,在web.xml里配置的,下面说它
3.web.xml,这个是Web项目中自带的,为什么自带?因为一个web项目在被部署(就是加载到WEB容器里,比如tomcat,jboss等)后,当启动web容器时,web.xml里面就会有几个标签被web容易所加载读取。并且这里有很多标签,加载也是有顺序的,会一个一个扫描,你刚学,什么顺序自己以后研究。
说第一个问题,首先我要说现在很少用Struts1,也就是教学用用,毕竟教学更新慢,至少现在都用struts2(以后简称S1,S2)。那个目录之所以一定要在那,是因为s1源码默认去那个路径找配置文件,如果你以后会s2,并且集成spring,你就知道配置文件路径可更改。
说第二个问题,这里WebRoot文件夹名字不是必须的,但是从它开始往下就是未来要发布出去的东西,就是所谓的前台展示,在代码中只要有关路径的地方以/开头,都是说从它往下开始,这样配置有一点好,就是未来其他路径变了,请求也不用变,因为是从所谓的相对中的绝对路径请求。
第三个问题我想不用过多解释,web.xml是属于web项目,并不属于某个技术,struts1的那个配置文件就属于s1框架的,s2的就叫struts.xml,记得框架源码都有一个默认加载的文件名和路径,你刚学就那么写就行,以后懂了就随意更改。
最后说下为什么有的把JSP放到不让直接访问,必须先走C层呢(s1和s2框架就是MVC框架),因为有好多页面要判断用户是否登录,如果没登录是不能直接访问的,必须要先登录,这样从C走,我就可以判断代码,要是直接访问页面,还得在页面里写小脚本判断。 通常先走C是对的,域名直接映射成C的请求。再有不懂追问,呵呵