spring-mvc 用注解实现spring-mvc的基本开发

2023-11-08

用注解实现spring-mvc的基本开发

  • maven的配置
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.2.0.RELEASE</version>
</dependency>
------------------------------------------------------------------------------------------------
  <build>
     <resources>
         <resource>
             <directory>src/main/java</directory>
             <includes>
                 <include>**/*.properties</include>
                 <include>**/*.xml</include>
             </includes>
             <filtering>false</filtering>
         </resource>
         <resource>
             <directory>src/main/resources</directory>
             <includes>
                 <include>**/*.properties</include>
                 <include>**/*.xml</include>
             </includes>
             <filtering>false</filtering>
         </resource>
     </resources>
  </build>
  • web.xml的配置

    <?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">
    
       <!--1.注册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:springmvc-servlet.xml</param-value>
           </init-param>
           <!-- 启动顺序,数字越小,启动越早 -->
           <load-on-startup>1</load-on-startup>
       </servlet>
    
       <!--所有请求都会被springmvc拦截 -->
       <servlet-mapping>
           <servlet-name>SpringMVC</servlet-name>
           <url-pattern>/</url-pattern>
       </servlet-mapping>
    
    </web-app>
    
  • spring-mvc.xml的配置

    <?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">
    
       <!-- 自动扫描包,让指定包下的注解生效,由IOC容器统一管理 后面的包可以被替换-->
     
       <!--这里写的是控制层的位置-->
       <context:component-scan base-package="com.kuang.controller"/>
       
        
    
       <mvc:default-servlet-handler />
      
       <mvc:annotation-driven />
    
       <!-- 视图解析器 -->
       <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
             id="internalResourceViewResolver">
           <!-- 前缀 -->
           <property name="prefix" value="/WEB-INF/jsp/" />
           <!-- 后缀 -->
           <property name="suffix" value=".jsp" />
       </bean>
    
    </beans>
    
  • 创建controller

package com.kuang.controller;

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

@Controller
public class HelloController {

   @RequestMapping("/hello")//将请求映射
   public String sayHello(Model model){
       
       //向模型中添加属性msg与值,可以在JSP页面中取出并渲染
       model.addAttribute("msg","hello,SpringMVC");
      
       //最终会拼接成web-inf/jsp/hello.jsp
       return "hello";
  }
}
  • 每一个方法都是一个url地址
    在这里插入图片描述
    在这里插入图片描述

  • jsp页面

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
       <title>SpringMVC</title>
    </head>
    <body>
    ${msg}
    </body>
    </html>
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spring-mvc 用注解实现spring-mvc的基本开发 的相关文章

随机推荐

  • Vue + element中table来回切换页面显示差异问题

    这次做项目遇到多个table切换页面显示差异的问题 当我切换到上个页面的时候 表格有一列是下个页面的内容 切换到下个页面的时候那一列的内容消失了 就很奇葩 这个问题也是我都一次遇到 问了Baidu阿姨 上面的解决办法好像都不行 这个时候感觉
  • esxi能直通的显卡型号_虚拟黑群也可以NVMe加速?还能万兆?wa!

    之前我发了三篇关于FreeBSD虚拟机安装黑群晖的文章 没有阅读的同学可以看一下 钱乎 如何拥有一台100T容量的NAS Let s do it zhuanlan zhihu com 钱乎 100TB的NAS之后续填坑 虚拟硬件篇 zhua
  • Gradle sync failed: Sync failed: reason unknown

    android项目复制后打开总是报这个错误 打开build查看红色错误提示 比如提示缺少android 23 打开file gt setting 展开后把对应的SDK勾选上再ok
  • 2021计算机考硕复试线,2021考研复试线汇总:国家线+34所中5所院校复试线①

    原标题 2021考研复试线汇总 国家线 34所中5所院校复试线 突如其来 昨天晚上 中国教育发布 公布了2021年硕士研究生考试学术学位类和专业学位类的国家线 随后 34中的5所院校也更新了2021年复试线成绩 包含以下这5所院校 清华大学
  • vue项目Error: Cannot find module ‘xxx’类报错的解决方法

    现发现只要是报错 Error Cannot find module xxx 例如 Error Cannot find module webpack 这类的问题都可以用下面的方法解决 报错内容如下 运行 npm install 没问题 运行
  • 消息队列的两种模式

    Java消息服务 Java Message Service JMS 应用程序接口是一个Java平台中关于面向消息中间件 MOM 的API 用于在两个应用程序之间 或分布式系统中发送消息 进行异步通信 点对点与发布订阅最初是由JMS定义的 这
  • Box2D C++ 教程-物体

    Box2D C 教程 物体 物体 Bodies 物体是物理场景中的基本对象 但是这里的物体并不是你看到的实际互相弹跳碰撞的实物 听起来很费解吗 挺住 马上做解释 http ohcoder com blog 2012 11 29 bodies
  • springboot+log4j2遇到的坑

    情景再现 按照网上一般的教程 这样 并添加 去除 common logging的jar 实际过程中 仍然报错会发出警告 大概意思如下 slfj仍然用着springboot默认的logback 包有冲突 所以第一图并没有起作用 而且logba
  • 【20200326】数据挖掘课程课业打卡三

    20200326 数据挖掘课业打卡三之数据质量 数据挖掘课业打卡三之数据质量 一 单选题 二 填空题 三 判断题 知识点汇总 1 数据中可能存在的问题 2 数据预处理方法 3 关于欧几里得距离 叮嘟 这里是小啊呜的学习课程资料整理 好记性不
  • the host '192.168.2.100'is unreachable,The host may be down,or there may be a problem with......解决办法

    我这里遇到这样的问题 是因为网关和网络IP没有配置对造成的 解决办法如下 第一步 打开VM 点中要操作的虚拟机 鼠标点击左上角 编辑 虚拟网络编辑器 如下图所示 第二步 若是选择自定义网关 即选择如上图的VMnet8模式 选中VMnet8
  • WebSocket整合spring 一文全部搞定

    文章声明 本文简单整合了webSocket 组件 涉及到的源码分解 原理什么的以后再说 本文只适合入门小白体验 不涉及复杂业务逻辑 文章目录 1 引入webSocket依赖包 2 声明式整合WebSocket 这是一道硬菜 2 1 webS
  • C++STL模板库——deque容器

    今天介绍的是双端队列deque 也是STL中非常重要的内容 include
  • QT/QTCreator开发/使用技巧

    调试模式完整的展示过长的字符串 如图 当字符串过长时在调试模式下 无法非常清晰的看到全部的字符串 此时可以通过 右键菜单 change value display format spearate Window 此时字符串将单独显示在一个独立
  • 自己动手实现java 动态代理

    前言 上一篇讲到jdk动态代理的实现 现在来讲一下自己动手实现java 动态代理 上一篇 jdk 动态代理 2 自定义实现 分析 想要自定义实现 有5个步骤 生成增强类源代码 把源代码输出到磁盘 编译成class文件 加载到jvm中 返回被
  • stream的.findAny().orElse (null) 是什么意思?

    List
  • 判断当前浏览器环境是否是移动端

    一 直接上代码 测试移动端环境 function isMobileNavigator let flag navigator userAgent match phone pad pod iPhone iPod ios iPad Android
  • SET的用法

    写给自己看的小tips set set中插入一个元素 insert s1 str1 set中删除一个元素可以这样写 1 2 3 4 5 6 7 8 9 for set
  • Opencv(C++)学习系列---Sobel索贝尔算子边缘检测

    目录 1 算法简介 2 算子参数介绍 3 完整代码 1 算法简介 Sobel算子是一种用于边缘检测的线性滤波器 如果把图像看做是一个二维函数 那么Sobel算子就是图像在垂直和水平方向上变化的速度 即梯度 Sobel算子在水平和垂直方向上做
  • java 替换指定位置的字符_java Sting 如何替换指定位置的 字符?

    展开全部 include include include 此处空一行 using namespace std int main string str 123 421657 abcd 456789 此处空一行 cout lt lt str l
  • spring-mvc 用注解实现spring-mvc的基本开发

    用注解实现spring mvc的基本开发 maven的配置