springMVC入门

本文主要介绍了SpringMVC的基本概念,包括MVC框架的组成部分和工作流程。详细讲解了SpringMVC的快速入门步骤,从创建web工程、引入依赖、配置控制层到设置配置文件、前端控制器以及测试。此外,还探讨了如何处理请求参数和静态资源。
摘要由CSDN通过智能技术生成

目录

首先呢,我们要了解一下何谓MVC框架

此时我们在了解什么是springMVC?

2,快速入门springMVC

2.1创建一个web工程

 2.2引入springmvc的依赖。

 2.3创建控制层。(在ava下创建一个包,推荐包名为controller)

 

2.4在resources下配置springmvc的配置文件。

 2.5引入前端控制器 web.xml

 2.6测试

 3  springMVC的流程

4 springmvc如何接受请求参数

4.1接收少量的参数

 4.2接收参数

 4.3接受日期类型的参数。

5处理静态资源

6总结


首先呢,我们要了解一下何谓MVC框架

         经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。

        M:model,模型层,指工程中的javabean,作用是处理数据

        V: view,视图层,指工程中的html或者JSP页面,作用是与用户进行交互,展示数据

        C:Controller,控制层,指工程中的servlet,作用是接受请求和响应浏览器。

MVC的工作流程:

      用户通过视图层发送请求到服务器,在服务器中请求被Controller接收,Controller调用相应的Model层处理请求,处理完毕将结果返回到Controller,Controller再根据请求处理的结果找到相应的View视图,渲染数据后最终响应给浏览器

此时我们在了解什么是springMVC?

        SpringMVC 是一种基于 Java 的实现 MVC 设计模型的请求驱动类型的轻量级 Web 框架,属于SpringFrameWork的后续产品,已经融合在 Spring Web Flow 中。springMVC类似于struts的一个MVC开框架,其实都是属于spring,spring mvc需要有spring的架包作为支撑才能跑起来.spring是一个一站式的框架,提供了表现层(springmvc)到业务层(spring)再到数据层(springdata)的全套解决方案;spring的两大核心IOC(控制反转)和AOP(面向切面编程)更是给我们的程序解耦和代码的简介提供了支持。

基本流程图:

2,快速入门springMVC

2.1创建一个web工程

 此时工程里面没有java包我们需要自己创建,同时webapp-web-INF下的web.xml需要替换为4.0的版本

 

 

 创建完成后是如下

 2.2引入springmvc的依赖。

<dependencies>
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.2.10.RELEASE</version>
  </dependency>

  <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.22</version>
  </dependency>
</dependencies>

 2.3创建控制层。(在ava下创建一个包,推荐包名为controller)

Controller:表示该类为控制层类。完成客户的业务需求

@Controller
public class HelloWorld {
    @RequestMapping("/hello") //根据请求路径映射响应的方法。
    public String hello(){
        System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~真好~~~~~~~~~~~");
        return "hello";
        /*springhello.xml中有试图解析器,本应该"/view/hello.jsp"的格式--->hello*/
    }
    
}

 

2.4在resources下配置springmvc的配置文件。

 

<!--1.包扫描 扫描我们自己的控制层类所在的包或者父包-->
    <context:component-scan base-package="com.wwn.controller"/>
    <mvc:annotation-driven/>
    <mvc:default-servlet-handler/>
        <!--视图解析器-->
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="prefix" value="/view/"/>  <!--前缀   开头-->
            <property name="suffix" value=".jsp"/><!--后缀   结尾-->
         </bean>

 2.5引入前端控制器 web.xml

 <!--注册servlet-->
    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--加载springMVC的配置文件-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springhello.xml</param-value>
        </init-param>
    </servlet>

    <!--servlet映射路径
      /: 表示所有的控制层路径 以及静态资源
      /*: 表示全部 包含jsp网页
-->
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

 2.6测试

 3  springMVC的流程

 1. 客户端发生请求http://localhost:8080/145springmvc01/hello01
 2. 来的tomcat服务器。
 3. springmvc的前端控制器DipatcherServlet接受所有的请求。
 4. 查看你的请求地址和哪个@RequestMaping匹配。
 5. 执行对应的方法。方法会返回一个字符串。springmvc把该字符串解析为要转发的网页。
 6. 把该字符串经过视图解析器拼接。
 7. 拿到拼接的地址,找到对应的网页。

4 springmvc如何接受请求参数

4.1接收少量的参数

Controller层:

@Controller
@RequestMapping("/hello02")
public class HelloController02 {
    @RequestMapping("/a")
    public String word(int id,String name){
        System.out.println("id======="+id+"name======"+name);
        return "word1";
    }
    
}

 测试

 4.2接收参数

举例说明:表单提交时 注册 添加。

4.2.1可以把所有的请求参数封装到一个实体类对象中

 

@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    private  String username;
    private  Integer sex;
    private  String password;
    private  Integer age;
}

 4.2.2在index.jsp中书写

 

 

<form action="hello02/b"  method="post">
    <%--name的名称必须后实体类的属性名对应--%>
    姓名:<input type="text" name="username"/><br>
    性别:<input type="radio" name="sex" value="0">男
    <input type="radio" name="sex" value="1">女<br>
    密码:<input type="password" name="password"/><br>
    年龄:<input type="text" name="age"/><br>
    <button>提交</button>
</form>

4.2.3controller层中书写

@Controller
@RequestMapping("/hello02")
public class HelloController02 {
    @RequestMapping("/b")
    public  String hello04(User user){
        System.out.println(user);
        return "index02";
    }
}

 4.2.4测试

 4.3接受日期类型的参数。

 

 解决办法:

2.4中已经配置过

 

 

5处理静态资源

什么是静态资源: 比如: css, js, img,html

 

 此时图片是不会被加载处理的,我们需要做一些操作把图片放出来,

 此时:

 

6总结

入门的springMVC就到这里,今天我们学习到

1.springmvc的作用:

2.如何搭建springmvc架构。

3.springmvc的流程。

4.接受请求参数的值。

 5.处理静态资

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值