实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)

文章目录

    • 返回的是string类型
      • 在后台创建一个控制器
      • 在前台写一个jsp页面
      • 404界面
      • 对controller这个java文件的理解
      • 整个流程走一遍
    • 返回一个model
    • 验证

返回的是string类型

在后台创建一个控制器

然后在控制器中创建一个类,注意注解的使用,注解前面说了,注解的东西,可以被加到spring的这个容器中,spring作为一个容器,并不是什么都接收的,只接收注解的类

代码如下
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第1张图片

在前台写一个jsp页面

实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第2张图片

404界面

直接访问这个页面,得到的效果是这样的
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第3张图片
报错的页面,在web.xml中已经设置了,404错误的原因是路径找不到,然后在配置文件中配置了发生404错误的时候转接到这个页面。
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第4张图片

对controller这个java文件的理解

在视图分发器中,可以看到如下的代码,上面代表的是前缀,下面代表的是后缀。
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第5张图片
因此可以看到,如下,我们在返回index的时候,其实本质是返回的是/WEB-INF/views/index.jsp
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第6张图片
然后由于我们还没有写这个页面,因此会出现页面访问的路径出现错误,即404报错,又因为我们在web.xml中定义的有一个出现404报错的时候,进行404.jsp这个页面的转接,所以报错信息的界面换成了那个404报错的界面。

整个流程走一遍

下面阐述我的理解
首先
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第7张图片
访问这个页面,会到SpringMVC的视图分发器,然后这个视图分发器,根据这个视图分发器的system,识别是我们要找的视图处理界面
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第8张图片

然后进行视图的分发,由于SpringMVC的配置文件中加的有前后缀
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第9张图片
所以最终访问的是这个index的界面

实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第10张图片

看下,标记的4其实就是转发到我们最终想要的界面,这个界面就只我们最终看到的界面,2传过来的index是不能直接访问我们这个index方法的,最先的是system的配置,之后是index与value中的index匹配,匹配成功,就能运行这个index方法了。
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第11张图片
因此,最终输出的是helloWorld
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第12张图片

返回一个model

可以很明显的看出,上面的是效果其实和重定向差不多,而且很坑的是,我们竟然搞了半天,就只做了一个页面的跳转???下面说一下怎么带值进行页面的跳转
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第13张图片

使用这个值直接用EL表达式就好了,不会EL表达式的,可以看一下这篇文章
https://blog.csdn.net/qq_43918130/article/details/102650125

我们运行这个
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第14张图片
然后看一下这个
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第15张图片

看最终效果
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第16张图片

验证

我现在把文件名改一下,改成system1,下面的都不变
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第17张图片

要变的是这里
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第18张图片
最终跑出来的效果也是这样的
实现一个简单的ssm(撸一撸思路,string方法进行分发和ModelAndView的方法进行分发S_3)_第19张图片
所以说,我们的return中的system定义的是路径,而注解中的system相当于是视图分发器一个名字,是为了给那个index.jsp页面用来识别这个视图分发器的。

你可能感兴趣的:(脚手架的学习)