btcq.net
当前位置:首页 >> struts2中直接根据页面的路径访问页面和通过一个请... >>

struts2中直接根据页面的路径访问页面和通过一个请...

直接根据页面的路径访问页面别人可以从你的访问路径里面知道你的项目的组织结构,如果通过请求的方式,你的访问路径里面,struts会帮你添加上命名空间,别人看你的路径是无法得知你的项目结构的,在一定程度上可以提高项目的安全性.

一般用了struts2了就不用servlet了吧?为么要混用啊?struts2的访问路径一般都是XXXAction!方法=?&参数1=?&参数2=?这种格式.servlet就是XXXServlet?方法=?&参数1=?&参数2=?,在命名的时候区分一下.

第一种方式是将所有的jsp页面都放入到web-inf目录下,然后在action的配置中将forward指向目录为/web-inf/jsp这样就可以了.还有一种方式是在定义一个filter,根据请求路径进行判断,如果是直接访问jsp则返回到拒绝页面,否则继续执行下去就可以了.filter好久不用了,呵呵

struts2中防止jsp不被直接访问的方法是把jsp放在WEB-INF目录下.struts2的WEB-INF路径下的jsp文件是受保护的,禁止客户端的浏览器直接对jsp文件进行访问.所以在struts.xml中的配置action的返回结果result时,应该配置全路径.配置如下:

action是struts.xml里面配置的,里面有一个路径,指向一个类,而jsp页面的action提交之后就会访问到struts.xml文件中指定的类,该类会根据处理的结果而return不同的值到xml文件里,再根据xml里面配置的result进行跳转到所需的页面

去web.xml文件去找比如这个test 到web.xml里面去查找test这个,然后找个structs的配置文件,然后在structs配置文件中找到action,然后再action里面去找到对应的方法!

/CSMS/Views/Main.jsp/CSMS/Views/Login.jsp

将jsp文件放到web-inf下,在拦截器中判断一下,没有登录的都转回到登录页面

>不的.action 里只有get set方法,其他都没有,怎么可能出错呢.你检查一下你方法里用到了get set方法的那个参数没,实在不行你就debug一下,看看哪里的空指针.

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.btcq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com