学习SpringMVC时遇到的一些问题
1. 找不到mapping
比较弱智的问题,忘了在对应的类上加上 @Controller 注解了
2. Model中设置的值不显示
Eclipse 自动生成的web.xml 是 2.3版本的,网上说改成2.5就可以了,我直接改成3.0,还是显示不了Model中的值,郁闷
代码
@RequestMapping("addIndex")
public ModelAndView addIndex(){
Map<String, String> model = new HashMap<>();
ModelAndView mad = new ModelAndView("addIndex", model); String filePath = request.getParameter("filePath");
if(StringUtils.isBlank(filePath)){
return mad;
} ... model.put("status", "successfully");
return mad;
}
本意是想如果filePath为空,则直接返回一个空的model,否则就放一个status的值。可是不管filePath有没有值,前台JSP都拿不到值。网上搜了搜,也没有能解决我的问题的答案,后来突发奇想,在实例化ModelAndView之前,就在model里设置一个值,我设了个failure. 但是不管怎么样,前台最终一直显示failure,不会显示最后的那个successfully. 猜想应该是Spring new 完 ModelAndView之后,里面model的值就不会再变了。
解决方法:
第4行 改成: ModelAndView mad = new ModelAndView("addIndex");
最后在返回之前再设置Model: mad.putAllObjects(model);
其它的以后再整理
学习SpringMVC时遇到的一些问题的更多相关文章
- 学习SpringMVC——如何获取请求参数
@RequestParam,你一定见过:@PathVariable,你肯定也知道:@QueryParam,你怎么会不晓得?!还有你熟悉的他(@CookieValue)!她(@ModelAndView) ...
- 2.学习SpringMVC注解入门篇
一.SpringMVC执行流程 . 二.创建项目学习SpringMVC注解 按照我之前的SpringMVC创建项目,首先创建一个项目springmvc01,配置好pom.xml,web.xml,spr ...
- 上四条只是我目前总结菜鸟们在学习FPGA时所最容易跑偏的地
长期以来很多新入群的菜鸟们总 是在重复的问一些非常简单但是又让新手困惑不解的问题.作为管理员经常要给这些菜鸟们普及基础知识,但是非常不幸的是很多菜鸟怀着一种浮躁的心态来学习 FPGA,总是急于求成. ...
- 浅谈学习C++时用到的【封装继承多态】三个概念
封装继承多态这三个概念不是C++特有的,而是所有OOP具有的特性. 由于C++语言支持这三个特性,所以学习C++时不可避免的要理解这些概念. 而在大部分C++教材中这些概念是作为铺垫,接下来就花大部分 ...
- 在学习泛型时遇到的困惑经常与func<T,U>混淆
在学习泛型时遇到的困惑经常与func<T,U>混淆,总认为最后一个值是返回类型.现在区分一下,原来问题出在泛型委托上. C#委托的介绍(delegate.Action.Func.predi ...
- 使用springmvc时静态的文件获取不到,比如说样式丢失的问题。
当使用springmvc时前台所有的样式全部都消失不见了,查了很多资料,简单的说就是我在配置web.xml中的过滤器时将<url-pattern></url-pattern>中 ...
- 使用springmvc时处理404的方法
使用springmvc时处理404的方法 来源: https://www.cnblogs.com/handsome-man/p/5519439.html,再次申明不是我原创的,尊重原创 如何定义404 ...
- 配置springMVC时出现的问题
配置springMVC时出现的问题 项目结构如图:
- 学习servlet时出现的一些问题
此篇用来记录学习servlet时遇到的一些问题,谨防以后再犯. 问题1.导入的web项目,servlet中导入的包名报错. (1)缺少相关包,推荐一个网站下载jar包很方便http://mvnrepo ...
随机推荐
- js添加方法和邦定事件
function(obj,objArr){ if(($(obj).attr("type") == "checkbox" && $j(obj).p ...
- Ubuntu PPPoE拨号上网指定网卡
Just follow these steps: Check that the ethernet cable is properly connected Open Terminal Run sudo ...
- linux下tar.xz结尾文件的解压方法
xz -d ***.tar.xz tar -xvf ***.tar 可以看到这个压缩包也是打包后再压缩,外面是xz压缩方式,里层是tar打包方式.
- Builder 模式初探
Builder 模式是一步一步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下,可以更精细的控制对象的构造流程.该模式是为了将构建复杂对象的过程和它的部件解耦,使得构建过程和部件的 ...
- 如何用命令行删除EasyBCD开机选择项?
用硬盘安装Ubuntu方法的windows双系统电脑上面,很多人都是用EasyBCD设置的开机启动选择.所以当我们不需要双系统的时候,或者已经删除双系统后,或者安装双系统失败的情况下,发现电脑的开机启 ...
- 分享知识-快乐自己:Oracle基本语法(创建:表空间、用户、授权、约束等)使用指南
Oracle12c 与 Oracle11g 创建用户时有差别.Oracle12C默认为 CDB模式 这时创建用户的时候需要加上 c## 开头:例如:c##MLQ. --说明--需求:创建表空间(MLQ ...
- L92
The Difference between Honesty and Cheating We sign our names to various documents all the time. Som ...
- PS 图像调整— — gain and bias
clc; clear all; close all; addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm'); Image=im ...
- BaseAdapter/AsyncTask/..等等细节
BaseAdapter中的getCount之类的函数,是在constructor之后才启动的.这印证了构造函数的优先级是max的. 图片 这一点的意义在于,当你想给getCount返回一个具体参数的时 ...
- linux中python easy_install命令
centos 下安装 python easy_installcurl -O http://peak.telecommunity.com/dist/ez_setup.pypython ez_setup. ...