0

SpringMVC的搭建idea2021、tomcat8.5

 1 year ago
source link: https://blog.51cto.com/u_16199760/6978277
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

idea2021

tomcat8.0

资料来源,尚硅谷的视频

1、新建项目

SpringMVC的搭建idea2021、tomcat8.5_mvc
SpringMVC的搭建idea2021、tomcat8.5_spring_02
SpringMVC的搭建idea2021、tomcat8.5_spring_03
SpringMVC的搭建idea2021、tomcat8.5_xml_04
SpringMVC的搭建idea2021、tomcat8.5_mvc_05
SpringMVC的搭建idea2021、tomcat8.5_spring_06
SpringMVC的搭建idea2021、tomcat8.5_spring_07

 生成pom.xml文件

SpringMVC的搭建idea2021、tomcat8.5_spring_08

3、pom.xml文件添加依赖

SpringMVC的搭建idea2021、tomcat8.5_xml_09
<dependencies>
     <!-- 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>3.1.0</version>
         <scope>provided</scope>
     </dependency>
  
     <!-- Spring5和Thymeleaf整合包 -->
     <dependency>
         <groupId>org.thymeleaf</groupId>
         <artifactId>thymeleaf-spring5</artifactId>
         <version>3.0.12.RELEASE</version>
     </dependency>
 </dependencies>

 如果引入报错可以对比一下,没错就刷新工程或者重启idea

4、配置web.xml

main下新建文件webapp

SpringMVC的搭建idea2021、tomcat8.5_mvc_10
SpringMVC的搭建idea2021、tomcat8.5_spring_11

webapp没蓝点刷新一下

配置Moudels

SpringMVC的搭建idea2021、tomcat8.5_mvc_12
SpringMVC的搭建idea2021、tomcat8.5_mvc_13
SpringMVC的搭建idea2021、tomcat8.5_xml_14
SpringMVC的搭建idea2021、tomcat8.5_mvc_15

 ok---->Apply

SpringMVC的搭建idea2021、tomcat8.5_mvc_16

 配置web.xml

SpringMVC的搭建idea2021、tomcat8.5_spring_17
<!-- 配置SpringMVC的前端控制器,对浏览器发送的请求统一进行处理 -->
 <servlet>
     <servlet-name>springMVC</servlet-name>
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
     <!-- 通过初始化参数指定SpringMVC配置文件的位置和名称 -->
     <init-param>
         <!-- contextConfigLocation为固定值 -->
         <param-name>contextConfigLocation</param-name>
         <!-- 使用classpath:表示从类路径查找配置文件,例如maven工程中的src/main/resources -->
         <param-value>classpath:springMVC.xml</param-value>
     </init-param>
     <!-- 
  		作为框架的核心组件,在启动过程中有大量的初始化操作要做
 		而这些操作放在第一次请求时才执行会严重影响访问速度
 		因此需要通过此标签将启动控制DispatcherServlet的初始化时间提前到服务器启动时
 	-->
     <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
     <servlet-name>springMVC</servlet-name>
     <!--
         设置springMVC的核心控制器所能处理的请求的请求路径
         /所匹配的请求可以是/login或.html或.js或.css方式的请求路径
         但是/不能匹配.jsp请求路径的请求
     -->
     <url-pattern>/</url-pattern>
 </servlet-mapping>
SpringMVC的搭建idea2021、tomcat8.5_xml_18

Java文件夹下的com.atzd.controller包下建HelloConller,记住自己创建的类的路径 

SpringMVC的搭建idea2021、tomcat8.5_xml_19
<?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 http://www.springframework.org/schema/context/spring-context.xsd
                            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
     <!-- 自动扫描包 -->
     <context:component-scan base-package="com.atzd.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>
  
     <!--
        处理静态资源,例如html、js、css、jpg
       若只设置该标签,则只能访问静态资源,其他请求则无法访问
       此时必须设置<mvc:annotation-driven/>解决问题
      -->
     <mvc:default-servlet-handler/>
  
     <!-- 开启mvc注解驱动 -->
     <mvc:annotation-driven>
         <mvc:message-converters>
             <!-- 处理响应中文内容乱码 -->
             <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                 <property name="defaultCharset" value="UTF-8" />
                 <property name="supportedMediaTypes">
                     <list>
                         <value>text/html</value>
                         <value>application/json</value>
                     </list>
                 </property>
             </bean>
         </mvc:message-converters>
     </mvc:annotation-driven>
 </beans>

根据这个路径

SpringMVC的搭建idea2021、tomcat8.5_mvc_20

 注意templates是文件夹

SpringMVC的搭建idea2021、tomcat8.5_xml_21
SpringMVC的搭建idea2021、tomcat8.5_mvc_22
package com.atzd.controller;
  
  
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
  
 @Controller
 public class HelloController {
     // @RequestMapping注解:处理请求和控制器方法之间的映射关系
 // @RequestMapping注解的value属性可以通过请求地址匹配请求,/表示的当前工程的上下文路径
 // localhost:8080/springMVC/
     @RequestMapping("/")
     public String index() {
         //设置视图名称
         return "index";
     }
 }
SpringMVC的搭建idea2021、tomcat8.5_xml_23
SpringMVC的搭建idea2021、tomcat8.5_spring_24
SpringMVC的搭建idea2021、tomcat8.5_xml_25
SpringMVC的搭建idea2021、tomcat8.5_xml_26

 修改访问路径,保留到模块名

SpringMVC的搭建idea2021、tomcat8.5_mvc_27
SpringMVC的搭建idea2021、tomcat8.5_mvc_28
SpringMVC的搭建idea2021、tomcat8.5_xml_29

 最后Aplly,就可以启动了

SpringMVC的搭建idea2021、tomcat8.5_mvc_30

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK