08.JavaWeb-SpringMVC

2.SpringMVC 

08.JavaWeb-SpringMVC_第1张图片

         Spring框架是一个开源的轻量级框架,SpringMVC是Spring的一个子框架

2.1SpringMVC工作机制

2.1.1 DispatcherServlet前端控制器

        【不需要程序员开发】

        作用:作为接受请求,响应结果,相当于转发器,中央处理器,减少其他组件之间的耦合度

2.1.2 HandlerMapping处理器映射器

        【不需要程序员开发】

        作用:根据请求的Url查找Handler

2.1.3 Handler处理器

        【需要程序员开发】

        Handler是后端控制器,对具体的用户业务请求进行处理

2.1.4 HandlerAdapter处理器适配器

        【不需要程序员开发】

        作用:适配处理器中的各个方法

2.1.5 ViewResolver视图解析器

        【不需要程序员开发】

        根据逻辑视图名解析成物理视图名(具体的页面地址),再生成View视图对象,最后对View进行渲染,将处理结果通过页面展示给用户

2.1.6View视图

        【需要程序员开发】

        需要通过页面标签或者页面模板将模型数据通过页面展示给用户,就是设计具体页面内容

2.2 配置SpringMVC

        这里只列出较为常用的一种

2.2.1 导入依赖


  	org.springframework
  	spring-core
  	5.2.10.RELEASE


  	org.springframework
  	spring-beans
  	5.2.10.RELEASE


  	org.springframework
  	spring-context
  	5.2.10.RELEASE


  	org.springframework
  	spring-aop
  	5.2.10.RELEASE


  	org.springframework
  	spring-expression
  	5.2.10.RELEASE


  	org.springframework
  	spring-webmvc
  	5.2.10.RELEASE


  	javax.servlet
  	servlet-api
  	2.5

2.2.2 在web.xml中引入Spring前端控制器


  

    spring

    org.springframework.web.servlet.DispatcherServlet



    

      contextConfigLocation

      classpath:spring-mvc.xml


    
  


  
    spring
    /

  

2.2.3 在src/main/resources下创建spring-mvc.xml并添加以下内容







    
    
    
    
    
        
            
                
            
        
    
    
    
    
    

    
    

    
    
        
            
                application/json;charset=utf-8
                text/html;charset=utf-8
                text/json;charset=utf-8
            
        
    

2.2.4 创建一个Controller类,并实现Controller接口

package com.woniuxy.controller;

import com.woniuxy.entity.User;
import com.woniuxy.util.ResponseResult;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

/**
 * 常用写法controller:需要掌握
 */

//@Controller:用来表明当前类中的方法可以用来处理请求
//
//
//扫描到配置,一旦扫描到类上有@Controller注解,就会自动创建当前类对象,并放到HanderMapping(处理器映射器)
//默认以类名首字母小写作为名字 bLoginController
//通过反射读取当前类中所有带@RequestMapping的方法,并创建为一个handler,@RequestMapping里面的值作为key(uri)
@Controller
public class BLoginController {
    @RequestMapping("/login")
    @ResponseBody
    //@RequestBody将json格式的字符串转换为对象
    public ResponseResult login(@RequestBody User user){
        System.out.println("处理登录请求");
        System.out.println(user);

        if("qianqian".equals(user.getAccount())&&("123".equals(user.getPassword()))){
            ResponseResult responseResult = new ResponseResult(200, "登陆成功", true);
            return responseResult;
        }else{
            ResponseResult responseResult = new ResponseResult(200, "登陆失败", false);
            return responseResult;
        }
    }

}

2.3

你可能感兴趣的:(java学习,前端,java,前端,mysql)