欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java學(xué)習(xí)筆記之Maven篇

 更新時間:2021年05月13日 11:20:44   作者:亭中獨酌  
今天來回顧下Java學(xué)習(xí)筆記,文中對maven的核心,maven的結(jié)構(gòu)以及maven能做什么都作出了詳細的解釋,,需要的朋友可以參考下

一、maven能做什么?

【本質(zhì)】:將原材料(各種Java本身的類,不包括jar包)生產(chǎn)成為可運行的工程項目。
Maven - 自動化構(gòu)建工具,英文單詞是專家內(nèi)行的意思

1.方便管理jar包,jar包沖突?

2.打包web項目(節(jié)省jar包空間)

1.1 兩大應(yīng)用

依賴管理】maven的jar包放在jar包倉庫,maven只存儲jar包的坐標。(代碼重用思想)
一鍵構(gòu)建】編譯、測試、運行、打包、安裝、部署 操作一體化
【POM:Project Object Model 工程對象模型
【pom.xml】:maven工程核心配置文件(裝載依賴)[同動態(tài)web中的web.xml]
【部署】:把編譯結(jié)果“拿到”服務(wù)器指定目錄下

1.2 maven 的核心

1.依賴管理:
POM項目對象模型,里面配置的是 ①項目自身的信息 ②項目所依賴的jar包的信息 ③項目運行環(huán)境的信息:jdk、tomcat信息。
依賴的jar包又涉及到依賴管理模型:公司的名稱、項目名稱、版本號

2.一鍵構(gòu)建:maven默認生命周期

【圖】

二、maven結(jié)構(gòu):

【maven安裝】:本身就是綠化版,我們需要做的事情是配置好相關(guān)的環(huán)境變量和settings
【maven目錄】:

bin: mvn.cmd命令
boot: 類加載器
config: settings.xml
lib: 有各種各樣的jar包

2.1 maven工程標準目錄結(jié)構(gòu)

核心代碼 src/main/java
配置文件 src/main/resources
測試代碼 src/test/java
測試配置 src/test/resources
頁面資源(jsp、css):src/main/webapp

2.2 配置系統(tǒng)變量

【1】MAVEN_HOME:就是maven的五臟都在的那個位置
【2】PATH:找到%MAVEN_HOME%\bin,里面有mvn的啟動文件

【3】config/settings.xml中

 <!-- localRepository  重新編寫再維護
   | The path to the local repository maven will use to store artifacts.   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
  
  <localRepository>B:\Environment\maven\maven_repository</localRepository>

坐標:

groupid:com.公司/組織.項目名
artifactid:模塊名
version:版本

2.3 常用命令

mvn clean  == 清除項目編譯信息(每個人的編譯結(jié)果不一樣,在新的環(huán)境下運行需要清除原有的東西)
mvn compile  == javac,編譯出新的.class文件保存在target目錄里面
mvn test  == main和test都編譯了
mvn package  == 打成了war包,在pom.xml中可以配置打成什么格式。
mvn install  == 把項目打在了本地倉庫
mvn deploy

幾個小問題:

1.生命周期

編譯,測試,打包,安裝,發(fā)布
(清除生命周期)默認生命周期~~生老病死,(站點生命周期)

2.maven工程查找倉庫的流程是什么?

pom.xml尋求依賴的jar包:一般的
先去本地倉庫找jar包,再到遠程倉庫【私服】,在同一局域網(wǎng)就可以下載,最后才是中央倉庫。

①maven中央倉庫(地址:http://repo2.maven.org/maven2/)
②maven私服(公司局域網(wǎng)內(nèi)的倉庫,需要自己搭建)
③其他公共遠程倉庫(例如apache提供的遠程倉庫,地址:http://repo.maven.apache.org/maven2/)

三、應(yīng)用:idea集成maven插件

3.1 步驟

基本配置
【1】先在setting中配置maven_home、settings.xml
在runner配置先從本地獲取插件(加上-DarchetypeCatalog=internal

【2】使用骨架創(chuàng)建maven工程:
手動補齊resources作為資源根目錄

不使用骨架模板構(gòu)建maven工程:自帶main(java、resources)、test目錄

使用骨架,找到mavenwebapp的原型:maven-archetype-webapp

【3】指定web資源包
創(chuàng)建servlet,導(dǎo)入jar包==》pom.xml里面導(dǎo)入jar包(配置依賴的groupId群組Id、artifactId工程Id、version版本)

兩種方式導(dǎo)入jar包:(一般都看不到)
【本地】項目名稱:配置servlet-api、jsp-api、公司名稱、版本號
【網(wǎng)絡(luò)】https://mvnrepository.com/

依賴書寫規(guī)范:

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

scope

在這里插入圖片描述

3.2 Tips

servlet-api包沖突
maven一鍵構(gòu)建在【集成插件】中
設(shè)置scope是提供了的provided
用完之后要停止項目,避免端口占用

使用live Templates模板
確定tomcat
maven-compiler-plugin選定JDK

3.3 基本配置總結(jié)

pom.xml是Maven項目的核心配置文件,位于每個工程的根目錄,基本配置如下:
<project > :文件的根節(jié)點 . 
<modelversion > : pom.xml使用的對象模型版本 
<groupId > :項目名稱,一般寫項目的域名 
<artifactId > :模塊名稱,子項目名或模塊名稱 
<version > :產(chǎn)品的版本號 .
	<packaging > :打包類型,一般有jar、war、pom 等 
<name > :項目的顯示名,常用于 Maven 生成的文檔。 
<description > :項目描述,常用于 Maven 生成的文檔
<dependencies> :項目依賴構(gòu)件配置,配置項目依賴構(gòu)件的坐標
<build> :項目構(gòu)建配置,配置編譯、運行插件等。

四、示例

maven工程獲取mysql數(shù)據(jù)(使用maven訪問持久層)

package com.xianzai.demo.dao.impl;

import com.xianzai.demo.dao.StudentDao;
import com.xianzai.demo.pojo.StudentModel;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class StudentImpl implements StudentDao {
    public List<StudentModel> findOne() {
        List<StudentModel> list = new ArrayList<StudentModel>();
        try {
            String sql = "select * from stulist";
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3308/hzyc98", "root", "mysql");
            PreparedStatement ps = conn.prepareCall(sql);
            ResultSet rs = ps.executeQuery();
            while (rs.next()) {
                StudentModel stu = new StudentModel();
                stu.setCollege(rs.getString("college"));
                stu.setName(rs.getString("sname"));
                stu.setId(rs.getString("id"));
                list.add(stu);
            }
            System.out.println(list);
            rs.close();
            ps.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {

        }
        return list;
    }
}

到此這篇關(guān)于Java學(xué)習(xí)筆記之Maven篇的文章就介紹到這了,更多相關(guān)Java Maven內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java窗體中關(guān)于默認布局管理器容易踩的坑及解決

    Java窗體中關(guān)于默認布局管理器容易踩的坑及解決

    這篇文章主要介紹了Java窗體中關(guān)于默認布局管理器容易踩的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Jpa 如何使用@EntityListeners 實現(xiàn)實體對象的自動賦值

    Jpa 如何使用@EntityListeners 實現(xiàn)實體對象的自動賦值

    這篇文章主要介紹了Jpa 如何使用@EntityListeners 實現(xiàn)實體對象的自動賦值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java基礎(chǔ)二叉搜索樹圖文詳解

    java基礎(chǔ)二叉搜索樹圖文詳解

    二叉樹是一種非常重要的數(shù)據(jù)結(jié)構(gòu),它同時具有數(shù)組和鏈表各自的特點,下面這篇文章主要給大家介紹了關(guān)于java基礎(chǔ)二叉搜索樹的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-03-03
  • Java并發(fā)編程多線程間的同步控制和通信詳解

    Java并發(fā)編程多線程間的同步控制和通信詳解

    這篇文章主要為大家介紹了Java并發(fā)編程多線程間的同步控制和通信詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • SpringBoot部署在tomcat容器中運行的部署方法

    SpringBoot部署在tomcat容器中運行的部署方法

    這篇文章主要介紹了SpringBoot部署在tomcat容器中運行的部署方法,需要的朋友可以參考下
    2018-10-10
  • Java單鏈表反轉(zhuǎn)圖文教程

    Java單鏈表反轉(zhuǎn)圖文教程

    這篇文章主要給大家介紹了關(guān)于Java單鏈表反轉(zhuǎn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Java動態(tài)設(shè)置注解值及原理詳解

    Java動態(tài)設(shè)置注解值及原理詳解

    這篇文章主要介紹了Java動態(tài)設(shè)置注解值及原理詳解,AnnotationInvocationHandler是注解的代理hander,通過反射獲取類的注解時會通過AnnotationInvocationHandler創(chuàng)建代理對象并將數(shù)據(jù)存儲到memberValues里,需要的朋友可以參考下
    2023-11-11
  • MyBatisPlus 查詢selectOne方法實現(xiàn)

    MyBatisPlus 查詢selectOne方法實現(xiàn)

    本文主要介紹了MyBatisPlus 查詢selectOne方法實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 解析Tomcat 6、7在EL表達式解析時存在的一個Bug

    解析Tomcat 6、7在EL表達式解析時存在的一個Bug

    這篇文章主要是對Tomcat 6、7在EL表達式解析時存在的一個Bug進行了詳細的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • Java圖文分析之繼承內(nèi)存布局

    Java圖文分析之繼承內(nèi)存布局

    這篇文章主要介紹了Java圖文分析之繼承內(nèi)存布局,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,感興趣的朋友可以參考一下
    2022-09-09

最新評論