【Java项目学习 Day01】创建JavaWeb的Maven项目

2022/7/5:成功配置了maven环境,换了阿里的镜像。 

参考下面这个maven的基础教程以及黑马的JavaWeb快速入门里的Maven知识。(超详细)2021最新Maven教程-Maven基础篇之Maven实战入门-最新IDEA版maven【半天快速掌握,附全套视频资料】_哔哩哔哩_bilibili

【Idea中Tomcat创建MavenWeb项目】

1. 创建项目要改设置:

【Java项目学习 Day01】创建JavaWeb的Maven项目_第1张图片2. maven不同项目的创建,比如quickstart和webapp。

创建选择从已有项目创建的时候选择quickstart和webapp的就行了。

区别:quickstart是普通java,但是webapp创建的是有web网页显示的。在目录上的区别具体表现在webapp创建的有一个webapp的包。webapp需要配置tomcat来获得网页连接。

要创建前面是maven-archetype的webapp和quickstart:

3. 补充完整maven的目录结构,idea直接创建目录的时候就给出了提示。

4. 修改xml配置文件     

        【基础更改】

 

 build里的全删

        【部署tomcat】

在build标签里创建一个plugins标签,然后把下面的粘进去【Java项目学习 Day01】创建JavaWeb的Maven项目_第2张图片

 
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin 
        2.1
        
          
          /
          
          8081
          
          UTF-8
          
          tomcat7
        
      

        【导入servlet依赖】

 service和servlet的依赖


    
      org.example
      maven_service
      1.0-SNAPSHOT
    

    
    
    
      javax.servlet
      javax.servlet-api
      3.1.0
      provided
    

还可以添加其他依赖,比如导入MySQL包:

【Java项目学习 Day01】创建JavaWeb的Maven项目_第3张图片


    
      mysql
      mysql-connector-java
      5.1.46
    

 在已知本地仓库有jar包的情况下可以alt+insert打开依赖项直接搜索

【Java项目学习 Day01】创建JavaWeb的Maven项目_第4张图片【Java项目学习 Day01】创建JavaWeb的Maven项目_第5张图片

依赖范围

【Java项目学习 Day01】创建JavaWeb的Maven项目_第6张图片

 5. 创建:定义一个类,实现Servlet接口,并重写接口中的所有方法,并在survice方法中输入一句话  servlet hello world

【Java项目学习 Day01】创建JavaWeb的Maven项目_第7张图片

6. 配置:在类上使用@WebServlet注解,配置该Servlet的访问路径

7. 访问:启动Tomcat,浏览器输入URL访问该Servlet

   右上角编辑配置tmocat7【Java项目学习 Day01】创建JavaWeb的Maven项目_第8张图片

8. 打包

一般xml里都会设置打包成war

         1. 添加profile配置:

  
    
      dev
      
      dev
      
      
      
        true
      
    
    
      test
      
        test
      
    
    
      product
      
        product
      
    
  

        2. 设置资源文件配置


      
        src/main/resources/${env}
      
      
        src/main/java
        
          **/*.xml
          **/*.properties
          **/*.tld
        
        false
      
    

        3. 添加配置命令

【Java项目学习 Day01】创建JavaWeb的Maven项目_第9张图片        点击编辑配置

【Java项目学习 Day01】创建JavaWeb的Maven项目_第10张图片

 点+,选择maven,然后在命令行编辑命令即可。

命令行更改打包的资源(本地,正式,测试),只需要改-P后名字即可

clean compile package -Pdev -Dmaven.test.skip=true

 如:

【Java项目学习 Day01】创建JavaWeb的Maven项目_第11张图片

【Java项目学习 Day01】创建JavaWeb的Maven项目_第12张图片

【建立项目间的依赖】

maven_parent、maven_dao、maven_service是普通java,maven_controller是webapp,maven_dao、maven_service和maven_controller创建在maven_parent下,建立maven_controller对maven_service的依赖,maven_service对maven_dao的依赖。依赖建立的方法是在建立发起方的下建立(如下图是controller建立的依赖):


    
      org.example
      maven_service
      1.0-SNAPSHOT
    

    
    
    
      javax.servlet
      javax.servlet-api
      3.1.0
      provided
    

service建立的依赖:


    
      org.example
      maven_dao
      1.0-SNAPSHOT
    

实操这个视频项目我遇到的问题:

(我使用的是idea2022,所以会有一些版本不同遇到不同的问题不一样)

问题1:p11:parent install出错,可能是版本不一样,别人的错是子模块不能install但我是parent不能,最后我放弃install了,哈哈,居然能跑,果然人和代码一个能跑就行(什么

问题2:p11:最后测试的时候,tomcat连接显示连接失败巴拉巴拉,我把8080改成8081还是不行,傻不拉几的去找前面是不是搞错了什么,结果最后心一横直接改成8111就行了,果然是端口被占了,但是这次连接成功之后,改成8080也能连上了,玄学?但我猜测可能是之前运行了,然后那俩端口都被占了,所以用新的就可以。或者也可以试一下杀死原来占用他的进程或应用,这个方法还没尝试。

顺便一提,最后连接的时候,要变成这样才可以【Java项目学习 Day01】创建JavaWeb的Maven项目_第13张图片

有别的红的就是错了,得改。

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