您现在的位置:首页 >> 前端 >> 内容

IntelliJIDEA中搭建SpringMVC环境

时间:2017/9/13 10:33:00 点击:

  核心提示:2017年9月开始接触Java Web的学习,被要求使用SpringMVC框架进行开发。由于之前使用过Android Studio进行Android App的开发,实在是太喜欢JetBrains的ID...

2017年9月开始接触Java Web的学习,被要求使用SpringMVC框架进行开发。由于之前使用过Android Studio进行Android App的开发,实在是太喜欢JetBrains的IDE,所以决定使用IntelliJ IDEA来进行环境的搭建。

为了搭建环境,翻查过很多博客,看到写法都有写参差不齐,对于一个新手来说可能会很吃力。

于是在这里对SpringMVC的IntelliJ IDEA环境搭建流程做一个简单记录,此处使用的是2017.2.3版本。

由于本人是初学者,有写的不对的地方希望可以加以指正,谢谢。

IntelliJIDEA中搭建SpringMVC环境

点击Create New Project来创建一个新的工程,在配置项中选择Spring MVC就可以了,IntelliJ IDEA会自动下载最新版本的SpringMVC框架所需的包,点击Next之后就是输入工程的名称,这里随便取一个名字叫“testmvc”好了。

IntelliJIDEA中搭建SpringMVC环境

工程创建好之后,会看到这样一个目录结构。

首先第一步,我们需要在“WEB-INF”目录下新建两个Directory,分别命名为“lib”和“classes”,并且把工程根目录下的“lib”文件夹下面的包全部复制到新建的“WEB-INF/lib”下。

接下来开始对IntelliJ IDEA进行一些设置。

点击File -> Project Structure,在弹出的窗口左侧选择Project Setting -> Modules,打开对Modules的设置并切换到名为Paths的tab下。选择Use module compile output path,手动将输出路径改为刚才所新建的“classes”文件夹路径。

IntelliJIDEA中搭建SpringMVC环境

然后再切换到名为Dependencies的tab下,将新建的“WEB-INF/lib”路径添加进去。

IntelliJIDEA中搭建SpringMVC环境

IntelliJIDEA中搭建SpringMVC环境

下一步,在窗口左侧选择Project Setting -> Artifacts,将输出目录改为“web”文件夹,再右键点击窗口右半侧选择Put into Output Root,将所需的库转移到输出根目录下。

IntelliJIDEA中搭建SpringMVC环境

到这里,我们对IntelliJ IDEA的配置就暂时告一段落。接下来我们对SpringMVC的几个文件进行一些修改或编写,来写一个Hello World测试一下配置是否正确。

首先是web.xml的修改,其实IntelliJ IDEA已经帮我们完善了很多配置工作,在这里只需要将“url-patten”标签下的内容进行修改,具体原因还有待学习,网上对此也有很多说法。这里编写Hello World测试改为“/”就行了。

/会匹配到/login这样的路径型url,不会匹配到模式为*.jsp这样的后缀型url
/*> 会匹配所有url:路径型的和后缀型的url(包括/login,.jsp,.js和*.html等)



    
        contextConfigLocation
        /WEB-INF/applicationContext.xml
    
    
        org.springframework.web.context.ContextLoaderListener
    
    
        dispatcher
        org.springframework.web.servlet.DispatcherServlet
        1
    
    
        dispatcher
        /
    

  接着我们来配置一下dispatcher-servlet.xml,在此之前先在“src”目录下新建一个包用于存放controller,在“WEB-INF”目录下新建一个目录用于存放view,名称可以任取。




    
    
    
    

    
    

    
    
        
        
    

  其中context:component-scan表示spring会到这个包里面去扫描controller。而视图解析器表示会根据注解@RequestMapping的方法返回值,获取一个“prefix + returnVal + suffix”的视图。
  如:返回值为“hello”,则得到“/WEB-INF/jsp/hello.jsp”。
  到这里,配置文件算是解决了,我们来写点代码。
  先修改一下index.jsp的内容,添加一个超链接。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
Hello SpringMVC

  再在“WEB-INF/jsp/”下新建一个jsp文件,这里取名为“hello.jsp”。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
${msg}

  视图创建好了,我们还需要一个控制器。
  在“src”路径下自己建立的包里添加一个java文件,来编写controller。

package com.oshinoshinobu.controller;

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

@Controller
public class HelloController {

    @RequestMapping(value = "/hello", method = RequestMethod.GET)
    public String helloWorld(ModelMap modelMap){
        modelMap.addAttribute("msg","Hello World!");
        return "hello";
    }
}

  下面我们来运行一下看看效果,点击Run -> Edit Configurations来配置Tomcat。
  新建一个Tomcat的Local Server。

IntelliJIDEA中搭建SpringMVC环境

  切换到Deployment的tab, 添加一个新的部署。这里建议把Application context修改为项目名称,有助于区分。

IntelliJIDEA中搭建SpringMVC环境

  Tomcat配置好之后如图所示,很多设置都是默认的不需要修改。

IntelliJIDEA中搭建SpringMVC环境

  如果是第一次配置,还需要点击Configure来添加Tomcat,选择相应的安装路径即可。

IntelliJIDEA中搭建SpringMVC环境

  运行一下。

IntelliJIDEA中搭建SpringMVC环境

IntelliJIDEA中搭建SpringMVC环境


常见问题

1. 运行报错,找不到mvc:default-servlet-handler声明

  解决办法是将dispatcher-servlet.xml里面的文件头重新添加一下,尤其是xmlns:mvc="https://www.springframework.org/schema/mvc"。建议将这一行删除之后,在变红的mvc字段上使用“Alt+Enter”组合键来添加。

2. 看起来一切都正常,就是404

  解决办法是重新配置一下Project Structure里面的设置,修改输出路径,添加lib,修改输出文件夹,少一步就会404。

3. 修改了配置文件之后,依旧说有错误

  建议是Build -> Rebuild Project,往往可以解决。

Tags:IN NT TE EL 
作者:网络 来源:不详