JavaWeb学习打卡05(在IDEA中创建并使用MavenWeb项目详解、POM.XML文件)

创建MavenWeb项目

  1. 启动Idea
  2. 创建MavenWeb项目(以下为IDEA 19版演示),如图

等待项目初始化完成,随后点自动导入包:

Maven在Idea 中配置:

进入Settings:

注意:IDEA项目创建成功后,要看一眼Maven的配置,避免IDEA将Maven的配置改为它默认的
项目文件夹解析:

IDEA中标记文件夹功能的使用:

在IDEA中配置Tomcat:

解决警告问题

必须要的配置:为什么会有(上图)这个警告问题呢?是因为我们访问一个网站,需要指定一个文件夹名字(eg:webapps),必须手动进行配置;

启动Tomcat

解决IDEA 2024版中,没有web文件夹显示问题,创建Mavenweb项目:

创建好之后,我们发现项目中没有出现 webapps文件夹,我们接下来进行手动配置web框架:


Maven侧边栏的使用:

POM文件

pom.xml 是Maven的核心配置文件

XML 复制代码
	<!-- package :项目的打包方式
		jar:java应用
		war:javaweb应用
		-->
	<!--配置 -->
    <properties>
		<!--编码版本 -->
        <maven.compiler.source>22</maven.compiler.source>
        <maven.compiler.target>22</maven.compiler.target>
		<!--项目的默认构造编码 -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <!--添加内容: 添加依赖java包-->
    <!--Maven的高级之处在于,它会帮你导入这个JAR包所依赖的其他的jar包-->
    <dependencies>
        <!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.21</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.30</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.28</version>
<!--            <version>5.1.40</version>-->
        </dependency>
        <!-- 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>
        <!-- https://mvnrepository.com/artifact/junit/junit -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <version>5.7.2</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

maven由于它的约定大于配置,我们之后可能遇到我们写的配置文件,无法被导出或者生效问题,解决方案(在pom.xml文件中):

XML 复制代码
    <!--在build中配置resources,来防止我们的资源导出失败的问题 -->
    <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>
相关推荐
好望角雾眠30 分钟前
第一阶段C#基础-10:集合(Arraylist,list,Dictionary等)
笔记·学习·c#
艾伦~耶格尔34 分钟前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
星仔编程1 小时前
python学习DAY46打卡
学习
大霞上仙1 小时前
实现自学习系统,输入excel文件,能学习后进行相应回答
python·学习·excel
JH30732 小时前
Maven的三种项目打包方式——pom,jar,war的区别
java·maven·jar
yatingliu20193 小时前
HiveQL | 个人学习笔记
hive·笔记·sql·学习
武当豆豆3 小时前
C++编程学习(第25天)
开发语言·c++·学习
风和日丽 随波逐流3 小时前
java17学习笔记-Deprecate the Applet API for Removal
笔记·学习
淮北也生橘123 小时前
Linux的ALSA音频框架学习笔记
linux·笔记·学习
diablobaal4 小时前
云计算学习100天-第17天
学习