IDEA创建SpringMVC web应用项目

一、创建工程
1、file→New→Project...
Maven→勾选Create from archetype→maven-archetype-webapp→Next

IDEA创建SpringMVC web应用项目_第1张图片
f011.png

2、输入GroupId和ArtifactId,Next
IDEA创建SpringMVC web应用项目_第2张图片
f012.png

3、填写本地的maven环境,这里可以选择自己本地的环境,也可以用idea自带的maven3.0.5。配置相应的配置文件,idea自带的maven是没有配置文件的,需要单独配置的可以在相应的目录中添加setting.xml文件。
由于maven骨架和一些jar需要去maven的仓库下载,所以创建项目的时候速度会非常慢(外国的服务器你懂得),因此我们可以直接访问 http://repo1.maven.org/maven2/archetype-catalog.xml,把这个xml下载下来放到本地的maven目录中,然后在添加一个参数archetypeCatalog=internal就可以了。
IDEA创建SpringMVC web应用项目_第3张图片
f013.png

4、next 填写项目名称,finish即可。
我们得到的目录如下。
IDEA创建SpringMVC web应用项目_第4张图片
f015.png

二、新建相应必要目录
A、新建必要结构目录
1、在main目录下新建目录java
2、在src目录下新建目录test
3、在test目录下新建目录java和resources

B、科普下各个目录的作用
1、Sources 一般用于标注类似 src 这种可编译目录。有时候我们不单单项目的 src 目录要可编译,还有其他一些特别的目录也许我们也要作为可编译的目录,就需要对该目录进行此标注。只有 Sources 这种可编译目录才可以新建 Java 类和包,这一点需要牢记。
2、Tests 一般用于标注可编译的单元测试目录。在规范的 maven 项目结构中,顶级目录是 src,maven 的 src 我们是不会设置为 Sources 的,而是在其子目录 main 目录下的 java 目录,我们会设置为 Sources。而单元测试的目录是 src - test - java,这里的 java 目录我们就会设置为 Tests,表示该目录是作为可编译的单元测试目录。一般这个和后面几个我们都是在 maven 项目下进行配置的,但是我这里还是会先说说。从这一点我们也可以看出 IntelliJ IDEA 对 maven 项目的支持是比较彻底的。
3、Resources 一般用于标注资源文件目录。在 maven 项目下,资源目录是单独划分出来的,其目录为:src - main -resources,这里的 resources 目录我们就会设置为 Resources,表示该目录是作为资源目录。资源目录下的文件是会被编译到输出目录下的。
4、Test Resources 一般用于标注单元测试的资源文件目录。在 maven 项目下,单元测试的资源目录是单独划分出来的,其目录为:src - test -resources,这里的 resources 目录我们就会设置为 Test Resources,表示该目录是作为单元测试的资源目录。资源目录下的文件是会被编译到输出目录下的。
5、Excluded 一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。

设置完,我们得到的工程结构如下:


IDEA创建SpringMVC web应用项目_第5张图片
f017.png

C、新建其他必要目录
1、在目录main/java下,
新建包com.fei.dao ,用于数据访问;
新建包com.fei.pojo ,用于存放实体类;
新建包com.fei.controller ,用于存放控制器;
新建包com.fei.service ,用于编写业务逻辑;

2、在目录main/java下新建spring目录

3、在目录webapp/WEB-INF下新建目录statics,在statics目录下新建css,image,js目录

4、在目录webapp/WEB-INF下新建目录views


IDEA创建SpringMVC web应用项目_第6张图片
f018.png

三、配置Maven的pom.xml
在项目的根目录下新建pom.xml


  4.0.0
  com.fei
  maven-springmvc
  war
  1.0-SNAPSHOT
  maven-springmvc Maven Webapp
  http://maven.apache.org
  
  
    
    
      junit
      junit
      3.8.1
      test
    
    
      org.slf4j
      slf4j-log4j12
      1.7.21
    

    
    
      javax.servlet
      javax.servlet-api
      3.1.0
    
    
      javax.servlet.jsp
      jsp-api
      2.2
    
    
      javax.servlet
      jstl
      1.2
    

    
    
      mysql
      mysql-connector-java
      5.1.35
    

    
    
      org.springframework
      spring-web
      4.3.1.RELEASE
    
    
      org.springframework
      spring-webmvc
      4.3.1.RELEASE
    

    
    
      org.apache.commons
      commons-lang3
      3.4
    
    
      commons-fileupload
      commons-fileupload
      1.3.1
    

  


  
    maven-springmvc
    
      
      
        ${basedir}/src/main/java
        
          **/*.properties
          **/*.xml
        
      
      
        ${basedir}/src/main/resources
      
    

    
      
      
        org.eclipse.jetty
        jetty-maven-plugin
        9.3.10.v20160621
      
    
  

更新完pom.xml文件后,idea应该会自动下载相应的jar包,如果没有自动下载的话,可以点击“Reimport All Maven Projects”按钮进行项目的重新载入。jar下载完成后,所有项目所需的依赖就已经添加完成了。

四、配置web.xml
maven默认生成的web.xml版本是2.3的,所以有些配置节点idea会识别不出来,因此我们重新添加一个3.0的来替代原来的web.xml。



  
  
    index.jsp
  

  
  
    springMVC
    org.springframework.web.servlet.DispatcherServlet
    
      
      contextConfigLocation
      classpath:spring/spring-mvc.xml
    
    1
    true
  
  
    springMVC
    /
  

五、配置contextConfigLocation文件
在web.xml里,我们配置contextConfigLocation文件为spring目录下的spring-mvc.xml

contextConfigLocation
classpath:spring/spring-mvc.xml

首先我们在spring目录下新建spring-mvc.xml


    
    

    
    
        
    

    

    
    
    
    
    

    
    
    
    

    
    

    
    
    
        
        
        
    

    
    
        
        
        
    

六、配置log4j.properties(可暂时不配置)
日志文件是debug中一个必不可少的工具,因此添加了log4j日志包。配置文件如下。

#配置根Logger 后面是若干个Appender
log4j.rootLogger=DEBUG,A1,R
#log4j.rootLogger=INFO,A1,R

# ConsoleAppender 输出
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n

# File 输出 一天一个文件,输出路径可以定制,一般在根路径下
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=log.txt
log4j.appender.R.MaxFileSize=500KB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n

七、编写第一个controller
在controller下新建一个“HomeController”。编写如下代码。

package com.fei.controller;

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

// 注解标注此类为springmvc的controller,url映射为"/home"
@Controller
@RequestMapping("/home")
public class HomeController {
    //添加一个日志器
    //private static final Logger logger = LoggerFactory.getLogger(HomeController.class);

    //映射一个action
    @RequestMapping("/index")
    public  String index(){
        //输出日志文件
        //logger.info("the first jsp pages");
        //返回一个index.jsp这个视图
        return "index";
    }
}

八、在views文件夹下建立一个jsp文件,名为“index.jsp”
然后通过路径访问

http://localhost:8080/home/index

九、tomcat的servlet容器的配置
Run→Edit Configuation...,新建【Tomcat Server】→【Local】


IDEA创建SpringMVC web应用项目_第7张图片
image.png

1、切到Deployment标签,添加了 Artifact(exploded那个)


IDEA创建SpringMVC web应用项目_第8张图片
image.png

2、切回server标签
On Update action选择 Update classes and resources 事件
IDEA创建SpringMVC web应用项目_第9张图片
f020.png

十、配置maven插件
maven插件的话有tomcat和jetty,两者都是servlet的容器。我这里配置的是jetty。插件已经在pom.xml中配置完成了。
新建maven配置,命名为jetty,Command line选择为jetty:run


IDEA创建SpringMVC web应用项目_第10张图片
f021.png

十一、点击Run,运行。

你可能感兴趣的:(IDEA创建SpringMVC web应用项目)