• IDEA创建Maven Web项目


    概述

    以IDEA2020.3.1+Tomcat9.0+Maven3.6.3+jdk1.8+web4.0演示,单项目

    Maven Mac下安装和IDEA配置见 https://www.cnblogs.com/shenleg/p/14218613.html

    新建项目

    IDEA补目录

    直接选择

    更改Web4.0版本

    早期的web工程中并不支持@WebServlet注解配置,甚至不支持El表达式(在web 3.0版本之后才支持)

    一定要将matadata-complete属性显式改为"false"这样创建的web工程才是web-4.0

    <?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"
             metadata-complete="false">
    </web-app>
    

    修改创建模版

    手动修改默认模版,默认为1.4版本

    位置在:%maven_repository%orgapachemavenarchetypesmaven-archetype-webapp1.4

    更改Pom文件

    防止资源导入错误

    <build>
      <!-- 防止资源导入错误 -->
      <resources> 
        <resource> 
          <directory>src/main/resources</directory> 
          <includes> 
            <include>**/*.properties</include> 
            <include>**/*.xml</include> 
          </includes> 
          <filtering>true</filtering> 
        </resource> 
        <resource> 
          <directory>src/main/java</directory> 
          <includes> 
            <include>**/*.properties</include> 
            <include>**/*.xml</include> 
          </includes> 
          <filtering>true</filtering> 
        </resource> 
      </resources>
    </build>
    

    引入Servlet API

    <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
    

    引入后可以右键新建Servlet文件了

    引入Servlet JSP

    <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>javax.servlet.jsp-api</artifactId>
        <version>2.3.3</version>
        <scope>provided</scope>
    </dependency>
    

    引入JSTL API

    部分Tomcat需要引入jstl的包,否则会报错:JSTL解析错误

    <!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl-api -->
    <dependency>
        <groupId>javax.servlet.jsp.jstl</groupId>
        <artifactId>jstl-api</artifactId>
        <version>1.2</version>
    </dependency>
    

    JSTL依赖包含了jsp-api和servlet-pai:

    太低servlet-api不支持@WebServlet注解

    引入Strand

    <!-- https://mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-impl -->
    <dependency>
        <groupId>org.apache.taglibs</groupId>
        <artifactId>taglibs-standard-impl</artifactId>
        <version>1.2.5</version>
    </dependency>
    

    引入MySQL驱动包

    mysql 5.7 用8.0版本的驱动可以,5.1版本也可以,MySQL 5.5, 5.6, 5.7, and 8.0(都兼容,大胆用了)

    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.22</version>
    </dependency>
    

    引入后记得手动更新一下Maven

    指定Maven JDK编译版本

    pom中修改

    局部修改

    <build>  
       <plugins>  
           <plugin>  
               <groupId>org.apache.maven.plugins</groupId>  
                  <artifactId>maven-compiler-plugin</artifactId>  
                  <version>3.1</version>  
                  <configuration>  
                      <source>1.8</source>  
                      <target>1.8</target>  
                  </configuration>  
            </plugin>  
        </plugins>  
     </build>
    

    Maven修改

    全局修改,在maven配置文件settings.xml中设置

    <profile>    
      <id>jdk-1.8</id>    
      <activation>    
        <activeByDefault>true</activeByDefault>    
        <jdk>1.8</jdk>    
      </activation>    
      <properties>    
        <maven.compiler.source>1.8</maven.compiler.source>    
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
      </properties>
    </profile>
    

    pom补充

    maven.compiler.sourcemaven.compiler.target仅仅是推荐,不是强制

    指定项目JDK版本

    模块也可以单独指定:

    装Tomcat9.0

    官网下载

    运行测试

    重新部署

  • 相关阅读:
    在小米 三星 索尼 手机 :图标上显示数字
    HDU 1873 看病要排队
    简单的WINFORM窗口,体验WINFORM带来的快感
    java初探秘之推断输入的一串字符是否全为小写字母
    【Android 面试基础知识点整理】
    互联网+时代IT管理者的转型
    hdu 1233 还是畅通project (克鲁斯卡尔裸题)
    经验之谈—让你看明确block
    字典树
    设计模式之问题集锦(一)
  • 原文地址:https://www.cnblogs.com/shenleg/p/14251101.html
Copyright © 2020-2023  润新知