ssm整合Shiro--疑惑?-?

本文探讨在SSM框架整合Shiro时遇到的URL命名空间缺失与参数传递问题,详细分析了表单提交后的URL变化及参数接收失败的原因,并提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在ssm整合Shiro的时候,出现了一些问题,让我百思不得其解

url问题

先来看看controller
在这里插入图片描述
可以看到namespace为 “/user”

再看看页面

在这里插入图片描述
注意观察form的action为:user/loginUI.action

接下来运行页面

查看网页源代码

在这里插入图片描述
从中可以清晰的看到网页中form表单的url,但是一旦提交表单

在这里插入图片描述
从地址栏中可以看到url变为了/loginUi.action,namespace缺失了,导致无法映射到controller

传值问题

如果我将controller中的@RequestMapping("/user")去掉
在这里插入图片描述
而页面中表单的url不变
在这里插入图片描述

然后提交表单-------
在这里插入图片描述
发现居然能够映射到controller----,但是由于controller的参数用了@RequestParam注解,所以直接报404

    public ModelAndView loginUI(@RequestParam("username") String username, 
            @RequestParam("password") String password)

而且,当我debug的时候,发现在页面跳转到controller的时候,页面是没有username和password这两个参数传过来


只有当controller没有使用namespace的时候,而且页面去掉"/user"的时候,页面才能正确映射到controller,并且会把值传过来.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值