springmvc 采用post方式提交的表单,怎么在后台获取值

前端jsp代码:<formaction="/validateLogin.do"method="post">用户名:<inputtype="text"name="usern... 前端jsp代码:
<form action="/validateLogin.do" method="post">
用户名:<input type="text" name="username"/><br/>
密 码:<input type="password" name="password"/><br/>
<input type="submit" value="登录"/>
<input type="reset" value="重置"/>
</form>

controller类:
@RequestMapping(value="/validateLogin.do",method=RequestMethod.POST)
public String validateLogin(HttpServletRequest request){
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println(username+":"+password);
return "jsp/userLogin";
}
怎么获取不到呢?请问是什么情况。
展开
 我来答
百度网友d7e426d
2014-04-11 · TA获得超过119个赞
知道答主
回答量:36
采纳率:0%
帮助的人:49.2万
展开全部
路径问题.. 请注意你在form中的路径是"/***"..而这个"/"是针对于WEB服务器的根目录.. 而不是你项目的根目录.. 你可以看一下你发送的URL请求.. 是没有项目名称的.. 而在controller中设置的RequestMapping路径是以项目名为根目录..
更多追问追答
追问
登录的页面是跳转来的, path是项目的名字  在controller类里面
@RequestMapping(value="/login.do")
public String login(){
return "";
}
追答
你现在想要做的是将form表单中的数据提交到指定的controller中..那你要先确定你前台提交了之后是不是先进入了准备处理登陆的那个controller..然后才会涉及到验证问题..我说路径问题是因为Spring MVC中如果form的action属性直接就是以"/"开始的话是肯定进入不了controller..那如果你能确定进入的话想要取出两个值后台处理的方法直接就可以以public String validateLogin(String username,String password)这样.. 或者严谨一点直接传User的封装对象回来
guodefu909
2015-10-10 · TA获得超过1463个赞
知道小有建树答主
回答量:203
采纳率:66%
帮助的人:64.7万
展开全部
El表达式的写法:${pageContext.request.contextPath}
java的写法:<%=request.getContextPath()%>
改成:<a href="${pageContext.request.contextPath}/login.do">
或者改成:<a href="<%=path%>/login.do">
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
DoramiHe
2017-07-17 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59543
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
路径问题.. 请注意你在form中的路径是"/***"..而这个"/"是针对于WEB服务器的根目录.. 而不是你项目的根目录.. 你可以看一下你发送的URL请求.. 是没有项目名称的.. 而在controller中设置的RequestMapping路径是以项目名为根目录..
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wwwzhangsan
2014-04-11 · TA获得超过286个赞
知道小有建树答主
回答量:119
采纳率:0%
帮助的人:115万
展开全部
代码没问题,参数应该能够得到。
更多追问追答
追问
谢谢  这样能获取了。可是我确实路径有问题,再问上面那个朋友。您可以帮忙看看。接着上面的追问,您也帮忙看下。

路径有问题,本来是http://localhost:8080/SpringMVC/login.do。点击超链接,路径变为http://localhost:8080/login.do 显然不对,请问怎么处理?
追答
将这一句修改一下:,改为:
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式