看过很多的Struts项目都首页跳转
都是做一个跳转页面,这个页面只是负责跳转,去请求Action
看了大家的做法都是这样,网上的一些文章也都是这样写
web.xml
welcome.jsp
这样做的目的是为了进入到Action中,然后就可以进行从数据库读数据然后显示到jsp页面上,就算首页的页面不需要从数据库读取数据,但是直接请求jsp页面也是违背了MVC的设计模式
但是为什么不让项目直接请求Action呢,不需要用jsp过渡一下啊
[b]于是将web.xml修改一下[/b]
重新部署一下项目,请求项目
出现了404错误,为什么啊
[b]在项目根目录下新建一个扩展名为.do的[color=red]index.do[/color]的文件,里面不需要写任何代码[/b]
再次请求,竟然成功了
原来web.xml中的welcome-file会到你的项目下直接找你配置的首页文件
如果文件存在,它才会去执行
虽然这样还是会有一个跳转文件,但是它里面没有任何代码
不仅省掉了几行代码,过程上也少走了一步
都是做一个跳转页面,这个页面只是负责跳转,去请求Action
看了大家的做法都是这样,网上的一些文章也都是这样写
web.xml
<welcome-file-list>
<welcome-file>
welcome.jsp
</welcome-file>
</welcome-file-list>
welcome.jsp
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic">
<html>
<body>
<logic:forward name="/index.do"/>
</body>
</html>
这样做的目的是为了进入到Action中,然后就可以进行从数据库读数据然后显示到jsp页面上,就算首页的页面不需要从数据库读取数据,但是直接请求jsp页面也是违背了MVC的设计模式
但是为什么不让项目直接请求Action呢,不需要用jsp过渡一下啊
[b]于是将web.xml修改一下[/b]
<welcome-file-list>
<welcome-file>
index.do
</welcome-file>
</welcome-file-list>
重新部署一下项目,请求项目
出现了404错误,为什么啊
[b]在项目根目录下新建一个扩展名为.do的[color=red]index.do[/color]的文件,里面不需要写任何代码[/b]
再次请求,竟然成功了
原来web.xml中的welcome-file会到你的项目下直接找你配置的首页文件
如果文件存在,它才会去执行
虽然这样还是会有一个跳转文件,但是它里面没有任何代码
不仅省掉了几行代码,过程上也少走了一步