0
点赞
收藏
分享

微信扫一扫

SpringMVC快速入门

千妈小语 2022-03-27 阅读 81

目录

SpringMVC快速入门

1.导入SpringMVC相关坐标

2.配置SpringMVC核心控制器DispatcherServlet(调度Servlet)好理解吧

3.创建Controller类和视图页面

4.使用注解配置Controller类中业务方法的映射地址

5.配置SpringMVC核心文件spring-mvc.xml

组件解析

SpringMVC注解解析

@RequestMapping:用于建立请求URL和处理请求方法之间的对应关系,可用于类(可以不用在类上,默认为根目录),可以用于方法上(常用)

@ResposeBody:告知SpringMVC框架,该方法不进行视图跳转(返回的字符串不会再进行视图拼接),直接进行数据响应,可以直观的与上方的方法比较

SpringMVC数据响应

SpringMVC获取请求数据

1.获得基本类型请求数据

2.获得POJO类型请求数据

3.获得数组类型请求数据

4.获得集合类型请求数据(很繁琐)

总结


SpringMVC快速入门

SpringMVC是一种基于java实现的MVC(model ,view, controller)设计模式的请求驱动类型的轻量级Web框架

需求:客户端发起请求,服务器端接收请求,执行逻辑并进行视图跳转。

步骤:

1.导入SpringMVC相关坐标

在pom.xml中导入jar包:

2.配置SpringMVC核心控制器DispatcherServlet(调度Servlet)好理解吧

在web.xml中配置:

其中/中的/表示缺省。

3.创建Controller类和视图页面

Controller类:

视图页面也就是一个jsp文件。

4.使用注解配置Controller类中业务方法的映射地址

5.配置SpringMVC核心文件spring-mvc.xml

既然有注解那就必然需要扫描啦。当然扫描是需要context组件来完成的,所以命名空间需要加入context的命名空间,这样才可以使用context标签。

目录的大概样子:

组件解析

  • 前端控制器(DispatcherServlet):负责调用各个组件。
  • 处理器映射器(HandlerMapping):控制器会请求查询Handler,映射器根据注解时配置的映射地址,返回处理器执行链给控制器。
  • 处理器适配器(HandlerAdaptor):控制器请求执行Handler,适配器则会调度相应的Handler,Handler执行并返回结果给适配器,适配器再返回ModelAndView给控制器。
  • 视图解析器(ViewResolver):解析视图对象,返回给前端控制器。

其中Handler就是自己所写的一些方法,自己想实现的一些功能等。

SpringMVC注解解析

@RequestMapping:用于建立请求URL和处理请求方法之间的对应关系,可用于类(可以不用在类上,默认为根目录),可以用于方法上(常用)

这样书写了之后,可以在浏览器输入对应的映射地址,对其进行访问:

注意:该方法的返回值为字符串形式,通过返回值,控制器会找到视图解析器,将此字符串解析,匹配到对应的jsp文件:

@ResposeBody:告知SpringMVC框架,该方法不进行视图跳转(返回的字符串不会再进行视图拼接),直接进行数据响应,可以直观的与上方的方法比较

运行查看结果:

可以看出,使用了@ResponseBody注解之后,return返回的字符串不会再经过视图解析器解析渲染,而是直接响应一个字符串。

SpringMVC数据响应

在学习了上方的注解之后,我们可以通过注解结合方法,实现请求之后的响应。

响应可分为:

        1.页面跳转

  • 直接返回字符串(上方演示过方法save())
  • 通过ModelAndView对象返回(new 一个对象,再返回)

        2.回写数据

  • 直接返回字符串(上方演示过方法save()2)
  • 返回对象或集合(需要配置注解驱动)

这个就是配置注解驱动(非常重要)它可以自动将你返回的对象或集合转化为json格式!所以记得每次在spring-mvc.xml配置时都写上这个注解驱动。

在学习了上方的注解之后,我们可以通过注解结合方法,实现请求之后的响应。

SpringMVC获取请求数据

首先创建一个User类,里面封装了基本属性name和age:

以及其对应的get和set方法,同时再重写以下toString()方法,方便调用时可以打印出其属性。

里面会有相应的方法,自行选择

1.获得基本类型请求数据

一样,在ControllerTest类中继续写方法

还记得这两个注解的作用吗,不记得回去看。

这样写完呢save4()方法中可以看到,里面有两个参数,当浏览器发送请求数据时,只要和方法里面的参数对应,那么就可以获取到这些基本类型参数了。演示如下:

在浏览器搜索框中输入对应映射地址的同时,输入请求参数

在获得了参数之后,方法中的println语句就可以在控制台输出了

2.获得POJO类型请求数据

MVC在web端获得的参数封装到实体当中。

再写一个方法,方法中的参数为对象(需要被封装的实体)

打开浏览器输入对应映射地址和参数

注意,当参数的属性名和实体(对象)当中的属性名一致时,MVC就会吧这些数据封装到实体当中

查看控制台

这就是获取POJO请求参数。

3.获得数组类型请求数据

同理,方法参数类型为数组类型

输入数组需要的属性

这种一般不太常用,了解就好,也很简单

4.获得集合类型请求数据(很繁琐)

复杂的懒得写了,可以自行搜索一下。

总结

我也是一个小白,跟着网上的视频学习,自学的路上是很困难的,大家都一起加油!

看到这里了,能把上面的看懂,就大概明白了SpringMVC框架大致是用来作什么的。我浅谈一下目前学的Spring和SpringMVC。

Spring框架:Spring框架主要作用是提供一个容器,这个容器可以通过反射机制帮你创建对象,使你的代码耦合度大大降低。大部分的依赖注入都是可以通过注解来实现,这样我们就不需要去编写依赖注入,保护我们的头发。Spring框架还可以方便进行代码单元测试,因为其集成的Junit4可以快速的实现方法测试。

SpringMVC框架:主要服务与web层,与web层的各种数据打交道,同时可以与Spring容器一起使用,也可以说是在Spring框架基础上的框架。SpringMVC框架主要是化身为前端控制器,对其各个组件进行控制,从而实现数据响应,获取请求数据。

如果这篇文章对您有那么一点点的帮助,那请您小点一个赞叭~

举报

相关推荐

0 条评论