SpringMVC笔记——SpringMVC基础Tomcat环境配置

Tomcat安装配置


下载Apache Tomcat

  1. 进入官网https://tomcat.apache.org/,选择tomcat 9

    这边使用idea开发,建议直接下载压缩包

    无法访问下载的可以直接用我的下载链接:https://cloudreve.zxbdwy.online/s/6nSA
    提取码:w1pwk3
  2. 将压缩包解压到合适路径
  3. 测试是否能使用
    进入 bin 文件夹

    双击 startup.bat


    控制台出现乱码,等下解决,先打开浏览器,输入localhost:8080

    这样就算安装完成了

解决中文乱码

  1. 回到 bin 的上一级,进入 conf 目录
  2. 修改 logging.properties

    java.util.logging.ConsoleHandler.encoding 的值改为:GBK
  3. 再次运行

springMVC项目设置


新建项目

修改maven路径

添加SpringMVC依赖

pom.xml 添加如下依赖:

<!-- SpringMVC -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.3.1</version>
</dependency>
<!-- 日志 -->
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version> 
</dependency>
<!-- ServletAPI -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
</dependency>
<!-- Spring5和Thymeleaf整合包 -->
<dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf-spring5</artifactId>
    <version>3.0.12.RELEASE</version>
</dependency>

修改打包方式

pom.xml 添加如下:

<packaging>war</packaging>

记得刷新

项目模块设置

使用idea自动生成 web.xml


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">  
  
    <!--  
        注册springMVC的前端控制器,对浏览器所发送的请求统一进行处理
        在此配置下,springMVC的配置文件具有默认的位置和名称        
        默认的位置:WEB-INF        
        默认的名称:<servlet-name>-servlet.xml        
        若要为springMVC的配置文件设置自定义的位置和名称        
        需要在servlet标签中添加init-param        
        <init-param>            
	        <param-name>contextConfigLocation</param-name>            
	        <param-value>classpath:springMVC.xml</param-value>        
	    </init-param>        
	    load-on-startup:将前端控制器DispatcherServlet的初始化时间提前到服务器启动时    
	-->    
	<servlet>  
        <servlet-name>springMVC</servlet-name>  
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
        <init-param>  
            <param-name>contextConfigLocation</param-name>  
            <param-value>classpath:SpringMVC.xml</param-value>  
        </init-param>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
    <servlet-mapping>  
        <servlet-name>springMVC</servlet-name>  
        <url-pattern>/</url-pattern>  
    </servlet-mapping>  
  
</web-app>

添加Spring容器配置

resources 下新建 SpringMVC.xml:

添加如下配置:

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context"  
       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"  
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
    <!--扫描控制层组件-->  
    <context:component-scan base-package="com.zxb.controller"/>  
  
    <!-- 配置Thymeleaf视图解析器 -->  
    <bean id="viewResolver" class="org.thymeleaf.spring5.view.ThymeleafViewResolver">  
        <property name="order" value="1"/>  
        <property name="characterEncoding" value="UTF-8"/>  
        <property name="templateEngine">  
            <bean class="org.thymeleaf.spring5.SpringTemplateEngine">  
                <property name="templateResolver">  
                    <bean class="org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver">  
                        <!-- 视图前缀 -->  
                        <property name="prefix" value="/WEB-INF/templates/"/>  
                        <!-- 视图后缀 -->  
                        <property name="suffix" value=".html"/>  
                        <property name="templateMode" value="HTML5"/>  
                        <property name="characterEncoding" value="UTF-8" />  
                    </bean>  
                </property>  
            </bean>  
        </property>  
    </bean>  
  
</beans>

创建controller

java目录下创建 com.zxb.controller.testController:

java类内容如下:

package com.zxb.controller;  
  
import org.springframework.web.bind.annotation.RequestMapping;  
import org.springframework.web.bind.annotation.RestController;  
  
@RestController  
public class testController {  
    @RequestMapping("/test")  
    public String test() {  
        return "hello world";  
    }  
}

设置项目读取Spring容器配置文件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

SpringMVC项目配置Tomcat


  1. 编辑配置
  2. 添加新配置
  3. 配置tomcat服务器

    选择刚刚安装的路径
  4. 部署SpringMVC项目



验证


浏览器输入:http://localhost:8080/springMVC_base_war_exploded/test

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/572053.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式学习60-C++

知识零碎&#xff1a; C# &#xff1a;window下用于vs stdio编程 …

Pyside6:QDialog按钮变为中文

如果在Qt Designer中创建了一个Qdialog&#xff0c;自带按钮的类型&#xff0c;那么在Designer中显示是中文&#xff0c;但在运行时将变成英文。 如果程序不需要进行国际化&#xff0c;只在国内使用&#xff0c;那么进行中文化的操作还是有必要的&#xff0c;其实方式很简单&am…

常见七大排序(汇总)

目录 引言 交换函数 直接插入排序 思想 时间复杂度 希尔排序 思想 时间复杂度 选择排序 思想 时间复杂度 堆排序 思想 时间复杂度 冒泡排序 思想 时间复杂度 快速排序&#xff08;递归&#xff09; 霍尔法 前后指针法 三数取中 & 随机值法 第一种是随…

C++ 核心编程 - 内存分区模型

文章目录 1.1 程序运行前1.2 程序运行后1.3 new 操作符 C 程序在执行时&#xff0c;将内存大致划分为 4个区域&#xff1a; 代码区&#xff1a;存放函数体的二进制代码&#xff0c;由操作系统进行管理&#xff1b;全局区&#xff1a;存放全局变量和静态变量以及常量&#xff1…

【CSS】CSS实现元素逐渐消失(实现元素透明逐渐消失/模糊)

mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 10%);mask-image 属性用于定义一个遮罩&#xff0c;它可以隐藏元素的一部分或全部内容。在这个示例中&#xff0c;我们使用 mask-image 属性来定义一个线性渐变的遮罩&#xff0c;使得列表项的内…

nginx配置ip_hash负载均衡策略

一、nginx配置ip_hash负载均衡策略 nginx默认的负载均衡策略为轮询&#xff0c;某些场景需要使用ip_hash负载策略&#xff0c;即&#xff1a;同一个ip地址&#xff0c;永远访问nginx后面同一台tomcat。配置示例如下&#xff0c;主要是设置ip_hash&#xff1a; upstream www.ab…

机器视觉系统-工业光源什么是高角度光,以及发光角度得分类

光路描述&#xff1a;光线与水平面角度>45称为高角度光。 效果分析&#xff1a;高角度照射&#xff0c;光线经 被测物表面平整部分反射后进入镜头&#xff0c;图像效果表现为灰度值较高&#xff1b;不平整部分反射光进入不了镜头&#xff0c;图像效果表现为灰度值较低。 主要…

【Vue】自定义事件实现组件之间的通信(案例讲解)

一、前言 这是部分哔哩哔哩上跟着一个博主【遇见狂神说】学习的&#xff0c;当然自己也是才开始学习的vue&#xff0c;在学到这个Vue的自定义事件的时候&#xff0c;虽然知识点很绕&#xff0c;但是在理解后又觉得很意思&#xff0c;觉得Vue真的很强大。这里博主将自己学习到的…

2、选择什么样的机器人本体

如果说世界是物质的&#xff0c;那么应该先制造出机器人的本体&#xff0c;再让她产生灵魂。如果是精神的呢&#xff0c;世界是无中生有的呢&#xff0c;那就先在仿真中研究算法吧。 而我比较崇尚初中哲学的一句话&#xff0c;世界是物质的&#xff0c;物质是运动的&am…

[已测试]TVBox二次开发影视系统酷点1.4.4反编译版本

支持p2p, 磁力等播放 支持多仓切换vip线路 自动换源开关 启动时直接进入直播 原始轮播图和幻灯片切换 加大防抓包的可能性 支持安卓4.x版本 源码下载&#xff1a;https://download.csdn.net/download/m0_66047725/89084105 更多资源下载&#xff1a;关注我。

科技改变视听4K 120HZ高刷新率的投影、电视、电影终有用武之地

早在1888年&#xff0c;法国生理学家埃蒂安朱尔马莱就发明了一套盒式摄像机&#xff0c;能以120帧/s的速度在一条纸膜上曝光照片&#xff0c;但是当时没有相匹配的放映设备。而马莱的另一套拍摄设备是60帧/s的规格&#xff0c;并且图像质量非常好。 受此启发&#xff0c;雷诺的…

CobaltStrike使用插件实现免杀

免责声明&#xff1a;本工具仅供安全研究和教学目的使用&#xff0c;用户须自行承担因使用该工具而引起的一切法律及相关责任。作者概不对任何法律责任承担责任&#xff0c;且保留随时中止、修改或终止本工具的权利。使用者应当遵循当地法律法规&#xff0c;并理解并同意本声明…

编译一个基于debian/ubuntu,centos,arhlinux第三方系统的问题解答

如果是开机卡boot注意看前面几行会有错误提示&#xff0c;一般会比较好找&#xff0c;下面是过了kernel内核加载后出现的问题 目录 上一篇文章 第一个问题 错误原因 解决办法 第二个问题 注意 第三个问题 上一篇文章 编译一个基于debian/ubuntu,centos,arhlinux第三方系…

【Linux网络】FTP服务

目录 一、FTP简介 1.FTP-文件传输协议 2.FTP的两种模式 二、安装配置FTP 1.安装环境 2.对文件的操作 3.切换目录 4.设置匿名用户 5.图形化界面登录 6.白名单与黑名单 重点与难点 一、FTP简介 1.FTP-文件传输协议 FTP是FileTransferProtocol&#xff08;文件传输协…

(十) 盘古UI,详情小标题副标题的实现,方便快速开发详情PanguFormTitle!

(十) 盘古UI,详情小标题副标题的实现,方便快速开发详情PanguFormTitle! 盘古UI,较为全面的自定义UI框架,帮助你绝对的快速开发!(长期维护中) 控件位置: com.smart.pangu_ui_lib.widget.PanguFormTitle demo地址,点击查看github 详情|表单的小标题 可以在详情或者表单的页面…

MapMagic 2 Biomes and Functions

MapMagic 2(免费)世界生成器官方模块。支持基于遮罩混合几个图形,从而可以在无限地形上混合不同的生物群落。也随附函数节点,从而可以在子图中执行复杂的生成过程。将它们视作含有输入和输出连接器的生物群落。请注意,必须使用 MapMagic 2 的现有安装才能使用该模块。 下…

护眼台灯哪个牌子最好?消费者信赖之选护眼灯十大品牌推荐

孩子入学后&#xff0c;对其的关注和照料必须加倍。特别是眼睛的健康&#xff0c;在学习过程中显得尤为关键。为了减轻孩子的眼睛疲劳&#xff0c;降低近视的风险&#xff0c;选择一款优质的护眼台灯至关重要。护眼台灯哪个牌子最好&#xff1f;目前市场上书客、飞利浦、松下等…

微信小程序中,plugins 配置项如何配置

在微信小程序中&#xff0c;plugins 配置项用于声明小程序需要使用的第三方插件。以下是如何配置 plugins 的基本步骤&#xff1a; 获取插件的AppID和版本信息&#xff1a; 首先&#xff0c;你需要在微信开放平台或微信公众平台上找到你需要的插件&#xff0c;并获取其AppID和版…

【漏洞复现】泛微e-office系统ajax.php接口存在任意文件上传漏洞

漏洞描述 泛微e-office系统是标准、易用、快速部署上线的专业协同OA软件。泛微 E-Office 9.5版本存在代码问题漏洞,泛微e-office系统ajax.php接口存在任意文件上传漏洞 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,…

大模型推理优化之 KV Cache

原文&#xff1a;https://zhuanlan.zhihu.com/p/677660376 目录 收起 KV Cache 定义 KV Cache 原理 KV Cache 实现 KV Cache 显存占用分析 KV Cache 优化方法 在语言模型推理的过程中&#xff0c;性能优化一直是一个备受关注的话题。LLM&#xff08;Large Language Mode…