idea 创建 Maven + SpringMVC项目

   最近在系统的学习idea和Spring相关的知识,上一篇我们使用idea工具新建了一个SpringMVC项目,并写了一个Controller.

结合我们之前使用idea创建Maven项目的经历,现在我们使用idea工具创建一个Maven+SpringMVC项目

当然这其中我也借鉴了一些别人的博文:

https://blog.csdn.net/weixin_42222334/article/details/80362126

https://www.cnblogs.com/gczmn/p/8671554.html

感谢这些作者的分享,下面我将我自己新建项目的过程记录一下,方便以后自己查看,也希望能帮助到他人

开发工具: idea

使用到的技术:Maven  +  SpringMVC

  一。先新建一个Maven 项目

因为使用idea新建Maven项目我在之前的博客中已经写过了:

https://blog.csdn.net/liuying1802028915/article/details/85162021

下面我就直接贴图了

1.New Project

idea 创建 Maven + SpringMVC项目_第1张图片

 

idea 创建 Maven + SpringMVC项目_第2张图片

 

接下来选择一些maven的配置:

idea 创建 Maven + SpringMVC项目_第3张图片

 

idea 创建 Maven + SpringMVC项目_第4张图片

 

这样我们就新建了一个全新的Maven项目

项目结构如下:

idea 创建 Maven + SpringMVC项目_第5张图片

如上图所示,WEB-INF下面只有一个web.xml , 我们来看web.xml中的内容




  Archetype Created Web Application

空空如也,什么都没有

我们再来看看pom.xml 中的内容




  4.0.0

  com.taoj
  springmvcdemo04
  1.0-SNAPSHOT
  war

  springmvcdemo04 Maven Webapp
  
  http://www.example.com

  
    UTF-8
    1.7
    1.7
  

  
    
      junit
      junit
      4.11
      test
    
  

  
    springmvcdemo04
    
      
        
          maven-clean-plugin
          3.1.0
        
        
        
          maven-resources-plugin
          3.0.2
        
        
          maven-compiler-plugin
          3.8.0
        
        
          maven-surefire-plugin
          2.22.1
        
        
          maven-war-plugin
          3.2.2
        
        
          maven-install-plugin
          2.5.2
        
        
          maven-deploy-plugin
          2.8.2
        
      
    
  

在pom.xml中,我们看到就只引入了junit 之外在没引入别的东西

当然到这里我们只是新建了一个Maven项目,还没有添加SpringMVC相关的依赖和配置,接下来我们就来添加对SpringMVC的支持

二。添加对SpringMVC的支持

1.我们右键项目 选择第二项 Add Framework Support...

idea 创建 Maven + SpringMVC项目_第6张图片

2.我们选择Spring 和 SpringMVC 然后OK

idea 创建 Maven + SpringMVC项目_第7张图片

3.接下来它会下来一些对SpringMVC支持的相关东西

 

idea 创建 Maven + SpringMVC项目_第8张图片

4.下载完毕后我们发现项目结构有了一些变化

idea 创建 Maven + SpringMVC项目_第9张图片

如上图所示,在WEB-INF目录下,新建了两个配置文件 applicationContext.xml 和 dispatcher-servlet.xml

5.我们分别来看看这两个配置文件中是啥

首先是 applicationContext.xml




啥也没有,我们先混个脸熟,以后在看他有什么作用

接下来是 dispatcher-servlet.xml




也是空空如也,不多说,混个脸熟

三。创建Controller

1.接下来我们要创建一个Controller ,但是maven 项目新建java文件时需要先做如下几步,当然我在 下面这篇博文中有些

传送门: https://blog.csdn.net/liuying1802028915/article/details/85162021

1>在main目录下新建两个Directory (java 和 resources)

2>然后分别Mark Directory as Sources Root(java) 和 Mark Directory as Resources Root 

3>相应的java和resources 目录将会改变颜色

我这里就不贴图了,不知道的同学可以去传送门: https://blog.csdn.net/liuying1802028915/article/details/85162021

2.接下来我们在java目录下新建一个 java文件 com.taoj.controller.HelloController

idea 创建 Maven + SpringMVC项目_第10张图片

如上图,我要在HelloController的上面添加@RequestMapping 注解,但是发现还没有该注解,哦,我还没有导入相关依赖

3.接下来,我们要在pom.xml 中引入 SpringMVC相关的依赖

我们先引入如下依赖,暂时还没有引入数据库的依赖


      javax.servlet
      javax.servlet-api
      3.1.0
    

    
      org.springframework
      spring-web
      4.3.13.RELEASE
    

    
      org.springframework
      spring-webmvc
      4.3.13.RELEASE
    

    
      org.springframework
      spring-context
      4.3.13.RELEASE
    

    
      org.springframework
      spring-test
      4.3.13.RELEASE
    

4.接下来,我们 接着写Controller

package com.taoj.controller;

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

@Controller
@RequestMapping("/hi")
public class HelloController {

    @RequestMapping("/hello")
    @ResponseBody
    public String sayHello(){
        return "Hello---World--Haidi";
    }
}

这是新建的第一个Controller ,接下来我们要访问这个Controller, 最近看了一部电影《海蒂和爷爷》,非常治愈和感人,所以这里引入了 haidi

5.那下一步我们就要添加一个tomcat

idea 创建 Maven + SpringMVC项目_第11张图片

idea 创建 Maven + SpringMVC项目_第12张图片

 

idea 创建 Maven + SpringMVC项目_第13张图片

 

idea 创建 Maven + SpringMVC项目_第14张图片

 

idea 创建 Maven + SpringMVC项目_第15张图片

 

idea 创建 Maven + SpringMVC项目_第16张图片

 

然后配置成功,点ok, 启动tomcat

6. 访问项目 http://localhost:8080/mvc/

idea 创建 Maven + SpringMVC项目_第17张图片

这里访问的是 WEB-INF 下的 index.jsp 

访问成功,下面我们来访问一下刚刚写的controller 

访问: http://localhost:8080/mvc/hi/hello.form 结果如下图:

idea 创建 Maven + SpringMVC项目_第18张图片

 

404,找不到这个请求,我们回想一下,光写了Controller,但是我们的Spring 还不认识,我们少了一步,少了注入,我们这里既然用到了@Controller注解,那么就得需要注解扫描配置

7.在 dispatcher-servlet.xml 添加注解配置


    

dispatcher-servlet.xml 全部如下:




    
    

然后重启项目

访问: http://localhost:8080/mvc/hi/hello.form 结果如下:

idea 创建 Maven + SpringMVC项目_第19张图片

看 已经返回了,至此一个简单的Maven + SpringMVC 项目就完成了

那么我们如何访问 jsp呢 

8.在HelloController 中添加一个openJsp的方法:

package com.taoj.controller;

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

@Controller
@RequestMapping("/hi")
public class HelloController {

    @RequestMapping("/hello")
    @ResponseBody
    public String sayHello(){
        return "Hello---World--Haidi";
    }

    @RequestMapping("/say")
    public String openJsp(){
        return "say";
    }
}

然后再dispatcher-servlet.xml 中添加jsp 解析器 




    
    

    
    
        
        
    

然后再webapp目录下 新建 jsp目录,在jsp目录下,新建一个say.jsp



I say that I love you

idea 创建 Maven + SpringMVC项目_第20张图片

然后重启项目

访问 http://localhost:8080/mvc/hi/say.form 结果如下:

idea 创建 Maven + SpringMVC项目_第21张图片

看 我们 看到了say.jsp中的内容。

大功告成

 

不积跬步,无以至千里

不积小流,无以成江海

你可能感兴趣的:(java学习,Maven)