浏览 3827 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2013-08-05
<servlet> <servlet-name>spring3</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring3-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring3</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> springmvc配置文件 <context:component-scan base-package="com.xinxin.autocode.web.controller" /> <mvc:resources mapping="/resources/**" location="/resources/" /> <mvc:annotation-driven /> <!-- DispatcherServlet接收到处理程序返回的视图名称,并解析为视图实现以供显示。 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/pages/" /> <property name="suffix" value=".jsp" /> </bean> index.jsp <script type="text/javascript"> window.location.href = "good/index"; </script> class类 @Controller @RequestMapping(value = "/login") public class LoginController { @RequestMapping(value = "/index") public String index() { return "login"; } @RequestMapping(value = "/login") public String login(String username, String password) { return "homePage"; } } 奇怪的代码是:action="login",按照我的理解应该是action="login/login", 如果是action="login",正确跳转,地址为:http://localhost:8080/autocode/login/login 如果是action="login/login",访问地址就是404,地址为:http://localhost:8080/autocode/login/login/login <form action="login" method="post"> <div id="errorMsg"></div> <div> <label>用户名:</label><input id="username" name="username" /> </div> <div> <label>密 码:</label> <input type="password" id="password" name="password" /> </div> <div> <input type="submit" value="登陆" /> <input type="reset" value="重置" /> </div> </form> 问题总结: 我的理解是,访问路径应该是"类注解的路径/方法注解的路径",但是这么理解有什么不对吗? 采用的措施有,把web.xml的拦截器由/改为*.do还是有问题。 求大神给正确的解答 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2013-08-05
怎么发到这个论坛呢本来是要发到spring的论坛的?????
|
|
返回顶楼 | |
发表时间:2013-08-06
<form action="login" method="post"> 典型的相对路径的问题
假设你地址栏地址是 http://a.com/a/b/a.html 则新的地址是 http://a.com/b/login 建议你改成服务器相对地址 即${pageContext.request.contextPath}/login/login |
|
返回顶楼 | |
发表时间:2013-08-06
试试这两种:
1:action="login",这种需要看当前你的页面所在的路径是什么样的?如果是: http://localhost:8080/autocode/login/xxxxxxx,则会请求到:http://localhost:8080/autocode/login/login 2:action="/autocode/login/login" 看一下html的form表单: http://www.w3school.com.cn/tags/att_form_action.asp |
|
返回顶楼 | |