Part03 Spring MVC响应数据
由于上一部分构建代码时构建了part02
,为了统一名称这里写为part03
新建模块spring-mvc-response
开发模式简介

1. 混合模式开发
使用JSP返回动态页面。
构建web项目,web目录在spring-mvc-response.src.main下
web
目录中,在WEB-INF
文件夹下新建视图views/index.jsp
。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <%-- Created by IntelliJ IDEA. User: promise Date: 2024/3/5 Time: 16:07 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <span style="color: red;">${data}</span> </body> </html>
|
SpringMVC的配置
新建配置类config.MVCConfig
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| package org.example.config;
import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.ViewResolverRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration @ComponentScan("org.example") @EnableWebMvc public class MVCConfig implements WebMvcConfigurer {
@Override public void configureViewResolvers(ViewResolverRegistry registry) { registry.jsp("/WEB-INF/views/", "jsp");
} }
|
视图需要通过视图解析器进行返回,在这里配置视图解析器,实现WebMvcConfigurer
接口中的一个方法,配置前后缀,这样可以直接使用该文件夹下的文件,无需额外指定路径等。不需要再使用@Bean
配置
配置MVC初始化类SpringMVCInit.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| package org.example.config;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
public class SpringMVCInit extends AbstractAnnotationConfigDispatcherServletInitializer { @Override protected Class<?>[] getRootConfigClasses() { return new Class[0]; }
@Override protected Class<?>[] getServletConfigClasses() { return new Class[]{MVCConfig.class}; }
@Override protected String[] getServletMappings() { return new String[]{"/"}; } }
|