Spring MVC 的环境搭建和基本配置

本文详细介绍了如何使用注解方式搭建SpringMVC环境,包括配置DispatcherServlet、添加SpringMVC配置文件、编写请求处理器、添加视图等步骤。同时,深入探讨了@Controlol、@RequestMaping注解的使用,以及如何通过ServletAPI、ModelAndView、Map形参进行数据处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.搭建Spring MVC 环境

基于注解方式搭建MVC环境

1.jar包

在这里插入图片描述

2.在web.xml中配置DispacherServlet

<servlet>
		<servlet-name>dispatcherServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
			<init-param>
				<param-name>contextConfigLocation</param-name>
				<param-value>classpath:springmvc.xml</param-value>
			</init-param>
			<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
	<servlet-name>dispatcherServlet</servlet-name>
	<url-pattern>/</url-pattern>
</servlet-mapping>

3.加入Spring MVC配置文件

	<!-- 配置Spring MVC自动扫描的路径 -->
	<context:component-scan base-package="com.znsd.springmvc" />
	
	<!-- 配置视图解析器 将视图返回字符串解析到:/WEB-INF/view/返回值.jsp 下-->
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<!-- 视图前缀 -->
		<property name="prefix" value="/WEB-INF/views/" />
		<!-- 视图后置 -->
		<property name="suffix" value=".jsp" />
	</bean>

4.编写请求处理器,并标示为处理器

在这里插入图片描述
在这里插入图片描述
Spring MVC使用@RequestMapping注解为控制器指定请求的URL

5.添加视图

在这里插入图片描述

二.基本配置

1.@Controlol注解

作用:将当前类作为一个控制器类
如果使用注解方式,必须在Spring中添加自动扫描的路径

2.@RequestMaping注解

Spring MVC使用@RequestMapping注解为控制器指定请求的URL
在控制器的类定义及方法定义处都可以标记
类定义处:提供初步的映射信息,为该类下所有请求方法添加前缀
方法定义处:提供进一步的映射信息,提供方法的请求路径

3.Servlet API

将ServletAPI作为方法的参数,方法中就可以使用api所对应的方法

	@RequestMapping("/test")
	public String testServletAPI(HttpServletRequest request,HttpServletResponse response,HttpSession session){
		//ServletAPI作为方法的参数获取request session response  一般不用
		request.setAttribute("g", "request  hello");
		session.setAttribute("age", 18);
		return "test";
	}

ModelAndView 控制器处理方法如果返回ModelAndView,即包含视图信息,也包含模型信息

	@RequestMapping("/testModelAndView")
	public ModelAndView testModelAndView(){
		ModelAndView modelAndView = new ModelAndView("test");
		//添加单个值
		modelAndView.addObject("h","Hello Spring MVC");	//放入reuqest
		return modelAndView;
	}

Map形参 Spring MVC在内部使用了一个Model接口存储模型数据

@RequestMapping("/testMap")
	public String testMap(Map<String,Object> map){
		map.put("map", "map data");	//放入request
		return "test";
	}

@SessionAttributes 保存用户到Session中

@SessionAttributes("user")
@Controller
@RequestMapping("world")
public class HelloWorld {
	@RequestMapping("/testSession")
	public String testSession(Map<String,Object> map){
		User user = new User();
		user.setUsername("zhangsan");
		user.setUserpass("123");
		user.setAge(20);
		map.put("user", user);
		return "hello";
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值