1.打开idea create project 如下方式选择对应项。

2.输入GroupId,ArtifactId,next。

3.使用本地的Gradle。没有的可以网上找安装教程。也可以使用默认的,idea自带的。

5.现在开始配置tomcat。

6.右击+号。添加我们的tomcat服务器。

7.这里配置war。补充:在linux上部署时选择war。并将war放置在tomcat/webapps目录下。tomcat会自动解压war并部署项目。

8.配置build.gradle。关于如何配置最新的springmvc框架。请参考此博文。https://blog.csdn.net/hansmu/article/details/101161024(更改最后的版本号即可,建议先不要更改。后面会了在自己更改)。

plugins {
    id 'java'
    id 'war'
}

group 'springmvc'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    // 更换为阿里云镜像源
    maven {
        url 'https://maven.aliyun.com/repository/central'
    }
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
    testCompile group: 'junit', name: 'junit', version: '4.12'
    // spring-content 为spring核心提供大量扩展
    implementation 'org.springframework:spring-context:5.2.2.RELEASE'
    // spring-webmvc springmvc框架相关的所有类
    implementation 'org.springframework:spring-webmvc:5.2.2.RELEASE'
    // spring-jdbc jdbc数据访问进行封装的所有类
    implementation 'org.springframework:spring-jdbc:5.2.2.RELEASE'
    // JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
    // 缺失此库无法正常解析标签
    implementation 'javax.servlet:jstl:1.2'
}

说明一下,这里只需要改dependencies和repositiories。改repositiories的原因是因为mavenCentral()的地址在国内下载资源很慢。

9.更新更新!!!

10.file->Project Structure 因为是gradle生成的所以没有web.xml。不知道后面会不会有。在最这一步的时候可以看看webapp目录下是否有WEB-INF/web.xml。

12.这里需要更改下存放的目录地址。它默认是放到.idea目录下。我们需要放到webapp目录下,方便我们的使用。

13.apply应用一下。在进行完这一步,可以试着点右上角的tomcat服务器运行一下。(我当时忘了这里要说明一下,现在改不好改了。点击之后,运行成功的话,会弹出一个网页。表示成功)

失败了的看下错误说明,最后面会给出源码。可以跟着做下去。

14.在项目的webapp下建立一个page目录,再在page目录下建立一个test.jsp文件。

15.新建一个名为springmvc.push.test的包。同时再该包下建立一个springtest.java。

16.在resource创建下springmvc.xml文件。

17.springmvc.xml配置。

<?xml version="1.0" encoding="UTF-8"?>
<!-- context, mvc 的地址可以再对应的External Libraries 下看到-->
<!-- 如context: Gradle:org.springframework:spring-context:5.2.2.RELEASE-> META-INF -> spring.handlers和spring.schemas-->
<!-- 这里的作用是为了导入标签和配置 -->
<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 https://www.springframework.org/schema/mvc/spring-mvc.xsd">

<!-- 扫描包下的文件-->
<context:component-scan base-package="springmvc.push.test"/>
<!-- 静态资源访问,例如图片、js文件、css文件等 -->
<mvc:default-servlet-handler/>
<!-- 开启注解 -->
<mvc:annotation-driven/>
<!-- jspViewResolver jsp视图解析器 -->
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/page/"/><!-- 后台默认返回视图寻找视图文件的路径 -->
<property name="suffix" value=".jsp"/><!-- 后台返回视图默认添加的后缀 -->
</bean>
</beans>

18.编辑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">
<servlet>
<!-- 这里的servlet-name 要和下面的servlet-mapping里的servlet-name 一样-->
<servlet-name>springmvc</servlet-name>
<!-- DispatcherServlet是前置控制器,职责分派-->
<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>
<!-- 标记容器是否在启动的时候就加载这个servlet-->
<load-on-startup>1</load-on-startup>
</servlet>
<!--配置静态资源拦截-->
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<!--这里/则表示访问路径为 localhost:8080/。假如改为 /api/* 则访问路径为localhost:8080/api/...-->
<!--这里还和/resource 文件下的springmvc.xml里 bean的property有关系-->
<!--具体配置要情况,我只能保证自己目前写的能保证大家能运行-->
<!--会放一些相关链接在此,有研究通了的。欢迎留言。也不晓得我这篇文章会不会石沉大海 -->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>

相关参考文章地址:

19.在spring.push.test目录下建立一个test.java。

package springmvc.push.test;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class spingmvctest {
    // 这里的value 没有 /
    @RequestMapping(value = "test", method = RequestMethod.GET)
    public String get() {
        // 这里是为了测试是否访问了该方法
        System.out.println("我被执行!");
        // 这里将自己添加.jsp。在resource文件下,我们配置了的。
        return "test";
    }
}

现在我们可以启动的tomcat了。可以看到对应的localhost:8080/test。可以访问了。

02-10 12:10