Spring MVC基础配置

Spring MVC

使用步骤:

1 在web.xml中的配置DispatcherServlet

 <servlet>
        <servlet-name>ioc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 </servlet>
 <servlet-mapping>
        <servlet-name>ioc</servlet-name>
        <url-pattern>/</url-pattern>
 </servlet-mapping>

2 编写控制器类

package com.yq.controller;


import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.View;
import org.springframework.web.servlet.mvc.Controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Map;

public class UserController implements Controller {
    @Override
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        //封装返回的视图
        ModelAndView mv = new ModelAndView();

        String userName = request.getParameter("userName");
        String userPwd = request.getParameter("userPwd");
        if("admin".equals(userName) && "123".equals(userPwd)){
            //指定视图的目标
            mv.setViewName("/success.jsp");
            //附加传递数据
            mv.addObject("key1", "success info...");
        }else{
            //指定视图对象 View
            mv.setView(new View() {
                @Override
                public void render(Map<String, ?> model, HttpServletRequest request, HttpServletResponse response) throws Exception {
                    request.getRequestDispatcher("/failed.jsp").forward(request, response);
                    request.getSession().setAttribute("key1","failed render method info ...");
                }
            });
            mv.addObject("key1", "failed info...");
        }
        return mv;
    }
}

3 在WEB-INF目录下放置Spring MVC 配置文件dispatcher-servlet.xml

  <!-- 启用注解 -->
   <context:annotation-config/>
   <!-- 启用包扫描 -->
   <context:component-scan base-package="com.yq"/>

   <!--配置 Controller 控制器-->
	<bean name="/login" class="com.yq.controller.UserController"/>

工作原理:

Spring MVC框架围绕着DIspatcherServlet(请求分发器)

客户端请求 分发器 控制器 模型和视图 视图解析器 分发器 视图

DispatcerServlet(类) 请求分发器

HandlerMapping(接口) 处理器映射

HandlerAdapter (接口)处理器适配器

Controller(接口) 控制器

ModelAnd VIew(类) 模型和视图

ViewResolver (接口)视图解析器

View (接口)视图

综述:

​ DisatcherServlet中根据HandlerMapping对象找到对应的Controller,然后借助HandlerAdapter对象确定处理方法,然后调用处理器方法。处理器方法返回一个ModelAndView对象。

​ DispatcherServlet从ModelAndView对象取出逻辑视图名ViewName交给ViewResolver进行解析,得到View对象。

​ DispatcherServlet调用View对象中的reader()方法,完成对客户端的应答。

在这里插入图片描述

注解方法配置Controller和处理器方法

@Controller

@RequestMapping

<!--在web.xml中配置-->

  <!--配置请求映射的处理器映射器-->
    <bean id="handlerMapping" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>

    <!--配置请求映射的处理器适配器-->
    <bean id="handlerMapping" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>

  <!--RequestMappingHandlerMapping & RequestMappingHandlerAdapter 简化配置-->
    <mvc:annotation-driven conversion-service="conversionService"/>
处理器方法返回值的类型
  • ModelAndVIew
  • String
  • void 返回JSON

自定义转换类型

在ioc-servlet.xml下配置

    <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <list>
                <bean class="com.yq.util.DateConvert"/>
            </list>
        </property>
    </bean>

静态资源访问

  <!--配置如果映射器处理不了的请求,交给容器的DefaultServlet处理-->
    <mvc:default-servlet-handler/>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Spring MVC是一种基于Java的Web开发框架,旨在简化Web应用程序的开发。它使用模型-视图-控制器(MVC)模式来处理Web请求和响应。 以下是Spring MVC基础开发步骤: 1.配置Web容器:首先需要选择一个Web容器(例如,Apache Tomcat),并将它配置到开发环境中。该容器为Web应用程序提供了运行环境。 2.引入Spring MVC库:Spring MVC库包含了许多类和接口,它们是开发Spring MVC应用程序所必需的。为了使用这些类和接口,需要将相应的库引入到项目中。 3.配置Spring MVCSpring MVC框架配置主要包括两个部分:一是配置DispatcherServlet,它是Spring MVC框架中的核心组件,用于处理所有的HTTP请求;二是配置Spring容器,它提供IOC(反转控制)和DI(依赖注入)功能。 4.定义控制器:控制器是Spring MVC应用程序中的核心组件,用于处理来自用户的HTTP请求,并返回相应的HTTP响应。在控制器中,需要定义处理请求的方法,并且指定对应的URL映射。 5.定义视图:视图是用户界面的表示形式。在Spring MVC中,可以使用多种模板引擎(例如,JSP,Velocity)来定义视图。 6.运行应用程序:最后,将应用程序部署到Web容器中,并启动它。用户可以通过浏览器访问应用程序,并使用定义的控制器和视图来处理请求和显示响应。 以上就是Spring MVC基础开发的步骤。在实际开发中,还需要注意一些细节,例如如何处理异常、如何进行数据绑定等等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李鑫海。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值