栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringMVC学习----SpringMvc快速入门

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringMVC学习----SpringMvc快速入门

SpringMVC简介

它是基于MVC开发模式的框架,用来优化控制器.它是Spring家族的一员.它也具备IOC和AOP。

什么是MVC?

它是一种开发模式,它是模型视图控制器的简称.所有的web应用都是基于MVC开发.

  • M:模型层,包含实体类,业务逻辑层,数据访问层
  • V:视图层,html,javaScript,vue等都是视图层,用来显现数据
  • C:控制器,它是用来接收客户端的请求,并返回响应到客户端的组件,Servlet就是组件
SpringMVC框架的优点
  • 轻量级,基于MVC的框架
  • 易于上手,容易理解,功能强大
  • 它具备IOC和AOP
  • 完全基于注解开发
基于注解的SpringMVC框架开发的步骤 新建项目,选择webapp模板.

修改目录,添加缺失的test,java,resources(两套),并修改目录属性

修改pom.xml文件,添加SpringMVC的依赖,添加Servlet的依赖



  4.0.0

  com.peihj
  Springmvc-001-demo
  1.0-SNAPSHOT
  war



  
    UTF-8
    1.8
    1.8
  

  
    
      junit
      junit
      4.11
      test
    
    
    
      org.springframework
      spring-webmvc
      5.3.18
    
    
    
      javax.servlet
      javax.servlet-api
      4.0.1
      provided
    
    
      javax.servlet.jsp
      jsp-api
      2.2
      provided
    
    
      jstl
      jstl
      1.2
    
    
      taglibs
      standard
      1.1.2
    
  

  
    
      
        src/main/java
        
          ***.xml
        
        false
      

      
        src/main/resources
        
          ***.xml
        
        false
      
    

    
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin
        2.2
        
          7070
        
      
    
  


添加springmvc.xml配置文件,指定包扫描,添加视图解析器.

SpringMVC框架为了避免对于请求资源路径与扩展名上的冗余,在视图解析器
InternalResouceViewResolver 中引入了请求的前辍与后辍。而action中只需给出要跳转页面的文件名即可,对于具体的文件路径与文件扩展名,视图解析器会自动完成拼接。
< context:component-scan >:用来进行包扫描,这里用于指定@Controller注解所在的包路径。




    
    
    
    

    
    
        
        
        
       
    

删除web.xml文件,新建web.xml

因为版本老,不兼容,需要重新创建
删除前




  Archetype Created Web Application




我们点击+号重新创建一个web.xml,但是注意要把名称给换了,不然修改无效

在web.xml文件中注册springMVC框架(所有的web请求都是基于servlet的)

在web.xml文件中注册SpringMvc框架。因为web的请求都是由Servlet来进行处理的,而SpringMVC的核心处理器就是一个DispatcherServlet,它负责接收客户端的请求,并根据请求的路径分派给对应的action(控制器)进行处理,处理结束后依然由核心处理器DispatcherServlet进行响应返回。

中央调度器的全限定性类名在导入的 Jar 文件 spring-webmvc-5.2.5.RELEASE.jar 的第一个包org.springframework.web.servlet下可找到。




    
    
        springmvc
        org.springframework.web.servlet.DispatcherServlet
        
            contextConfigLocation
            classpath:springmvc.xml
        
        1
    
    
        springmvc
        
        *.action
    


< param-value>classpath:springmvc.xml表示从类路径下加载SpringMVC的配置文件。
< url-pattern>指定拦截以.action结尾的请求,交给核心处理器DispatcherServlet处理。

在webapp目录下新建admin目录,在admin目录下新建main.jsp页面,删除index.jsp页面,并新建,发送请求给服务器


删除index.jsp页面,重新建index.jsp页面,因为自动生成的页面缺失指令设置。

  • 编写index.jsp
<%--
  Created by IntelliJ IDEA.
  User: peihj
  Date: 2022/5/5
  Time: 22:00
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title





访问服务器user
访问服务器zar
  • 编写main文件
<%--
  Created by IntelliJ IDEA.
  User: peihj
  Date: 2022/5/5
  Time: 21:40
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


main.jsp已经跳转

  • 开发页面,发出请求。
访问action

其中:
/zar 是类上的注解路径
/hello 是方法上的注解路径

  • 在webapp目录上新添目录/admin
  • 在/admin目录下新建main.jsp页面。用来进行服务器处理完毕后数据的回显。
  • 开发HelloSpringMvc.java–>控制器(相当于以前的servlet)。这是一个普通的类,不用继承和实现接口。类中的每个方法就是一个具体的action控制器。

类中的方法定义有规范:
A. 访问权限是public。
B. 方法名自定义。
C. 方法的参数可以有多个,任意类型,用来接收客户端提交上来的数据。
D. 方法的返回值任意。以返回String居多。

package com.peihj.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller // 交给Spring去创建对象
@RequestMapping("zar")
public class DemoAction {
    
    @RequestMapping("demo.action")
    public String demo(){
        System.out.println("zar服务器被访问到了.............");
        return "main";  // 可以直接跳到/admin/main.jsp页面上
    }
}

@Controller:表示当前类为处理器,交给Spring容器去创建对象。
@RequestMapping:表示路径映射。该注解可以加在类上相当于包名,还可以加在方法上相当于action的名称,都是来指定映射路径的。

参考

https://www.bilibili.com/video/BV1oP4y1K7QT?p=25&t=96.0

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/872650.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号