springmvc环境搭建

本文介绍了SpringWebMVC的基本概念,它是一个轻量级的Java Web框架,用于实现MVC设计模式。文中详细讲解了如何搭建SpringMVC环境,包括配置web.xml和SpringMVC配置文件,以及编写处理器/控制器和视图层。通过一个简单的例子展示了如何通过注解驱动实现请求映射和视图解析。最后,文章提供了目录结构和环境搭建完成的说明。
摘要由CSDN通过智能技术生成

springmvc框架简介

Spring Web MVC 是一种基于 Java 的实现了 Web MVC 设计模式的请求驱动类型的轻量级 Web 框架,即使用了 MVC 架构模式的思想,将 web 层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC 也是要简化我们日常 Web 开发的。

springmvc环境搭建

1.首先配置web.xml文件

一般是要把原来的xml文件删除 然后粘贴一下<web-app>中的模板 小白先可以不用写  <init-param> 标签 因为SpringMVC默认加载web-inf下的配置文件,文件名必须为:[前端控制器select名]-servlet.xml 举个例子 我在<servelet-name>标签中写了springmvc1 在WEB-INFO下肯定就要有一个springmvc-servlet文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <!--必须遵守约定 我servlet-name中有一个springmvc 后面的mapping就肯定有一个springmvc-->
        <servlet-name>springmvc1</servlet-name>
        <!--servlet-class 固定写法-->
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc1</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

2.配置springmvc文件

web 开发中,我们基本上不再通过 XML 或者 Java 配置来创建一个 Bean 的实例,而是直接通过组件扫描来实现 Bean 的配置,如果要扫描多个包,多个包之间用 逗号(,) 隔开即可,也可以同时配置多个以下标签: 不用写bean了 因为写bean的话每写一个Controller就要写一个bean--太麻烦了 我们可以把所有Controller放入一个包 直接进行组件扫描包的形式

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <!--自定义扫描包名 里面全是控制器
    <context:component-scan base-package="处理器类所在包名"/> -->
    <context:component-scan base-package="com.ya.web"></context:component-scan>

    <!--配置注解驱动加载器 配置了之后可以使用很多注解  -->
    <mvc:annotation-driven/>

    <!--配置视图层前后缀 目的是为了你一会return的地址 直接写地址名就可以
        一般都是固定写法-->
    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!--配置前缀:-->
        <property name="prefix" value="/pages/"/>
        <!--配置后缀:-->
        <property name="suffix" value=".jsp"/>
    </bean>

</beans>

 3.写处理器/控制器-web下面写

注意返回值 我返回的直接就是是视图层下的 文件名 是因为上面已经配置了前后缀  -> 将逻辑地址转换为了物理地址 所以我直接写 名字就可以了 在域中写值 是为了前端能够取到值

package com.ya.web;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
//@Controller表示这个类全是控制器
public class MyController {
    @RequestMapping("/hello")
    //这个 @RequestMapping 注解表示一会找的时候在url中输入 /hello 找到这个指定的控制器
    public String handle(Model model){
        //往域中放值-比如我在这边指定了key是name
        // 这里就像k-v大法一样 我一会在前端取值的时候通过name 把hello-springmvc 取到
        model.addAttribute("name","hello-springmvc");
        //返回的这个值是视图层下的文件名 在这里已经制定了文件名一会就必须照着去创建
        return "hello";
    }
}

4.写视图层pages

视图层名字要和之前写的前后缀一样哈 我写的前缀是pages 后缀是.jsp  行业也一般这么写

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <!--引用我刚才在域中放的key-->
    <h1>hello ${name}</h1>
</body>
</html>

目录展示 --> 可以通过以下目录形式 更清晰

结果 说明环境搭建完成

 

 如有瑕疵还望指出

 

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

想要上岸的小李

劳作不易,请勿白嫖

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

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

打赏作者

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

抵扣说明:

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

余额充值