详解Spring MVC的视图、模型与控制器

2024-11-05 14:53:08

1、前面介绍了Spring MVC的概念、搭建Spring MVC运行环境等内容,也介绍了如何在eclipse中建立基于Spring MVC的Mooc项目。本文在Mooc项目的基础上,进一步讨论Spring MVC的视图、模型与控制器,视图与控制器之间的数据交互机制。通过本课的学习,可以达到如下目标。● 掌握视图、控制器和模型的数据交互机制● 配置web.xml和spring-servlet文件Mooc是一个在线编程教育项目,用户学习课程前,需要先注册账号。注册账号流程图如下:

详解Spring MVC的视图、模型与控制器

3、新建控制器RegisterController类RegisterController类为MVC的控制器类,接收和处理视图传递过来的表单数据。控制器类一般放置在项目源代码的controll目录下,在mooc包下面新建controll包,在controll包下新建RegisterController.java类。控制器类与普通Java类的区别就是在类文件的头部添加了Spring MVC注解@Controller和@RequestMapping。@Controller注解用于标记在一个类上,使用该注解的类就是一个Spring MVC Controller对象,Spring MVC的分发处理器会扫描使用该注解的类,并将视图请求的URL与类中@RequestMapping注解定义的URL进行匹配。@RequestMapping注解用于处理视图请求地址的映射,该注解可以添加在类或类方法上。添加到类时,需要把该注解添加到类的头部,@Controller注解的后面,表示该类中所有响应请求的方法都是以该地址作为父路径。 添加到类方法时,需要把该注解添加到方法的首部,表示一个处理响应请求的地址。例如:

详解Spring MVC的视图、模型与控制器

5、、新建Register.jsp页面JSP页面在Spring MVC中为视图,是与用户的交互页面,JSP页面一般放置在项目WebContent目录下。在WebContent目录下新建user目录,在user目录下新建Register.jsp文件。

详解Spring MVC的视图、模型与控制器

7、使用requestScope可以访问由控制器类返回的模型对象或变量。5 、新建spring-servlet配置文件Servlet是用Java语言编写的服务端应用程序,用于响应和处理WEB客户端发送的请求,并生成WEB内容返回WEB客户端。在Spring MVC框架中,控制器类就是Servlet,用于响应和处理WEB客户端发送的请求。Spring MVC会通过spring-servlet配置文件扫描加载控制器类、完成对转向页面的路径解析、启用spring mvc 注解。

详解Spring MVC的视图、模型与控制器

9、配置监听器,当监听到启动Web容器时,自动装配Spring配置文件中的配置信息。ContextLoaderListener实现了ServletContextListener接口,WEB容器启动时,会调用ContextLoaderListener,在ContextLoaderListener中关联了ContextLoader这个类,所以整个加载配置过程由ContextLoader来完成。课程小结本科实现了基于Spring MVC的用户注册业务,具体业务实现流程是用户通过Register.jsp页面填写注册信息,然后提交表单到RegisterController类,RegisterController类获取表单信息,并创建UserInfo用户类,使用表单信息初始化UserInfo,将UserInfo设置到回传的ModelAndView对象,并将回传的视图定向到RegisterResult.jsp页面。在上述流程中,Register.jsp是用户注册视图,RegisterResult.jsp是注册结果通知视图,RegisterController是响应和处理注册请求的控制器,UserInfo是用户模型。

详解Spring MVC的视图、模型与控制器
猜你喜欢