首頁(yè)技術(shù)文章正文

JavaEE就業(yè)筆記串講---Maven-part2

更新時(shí)間:2018-09-12 來源:黑馬程序員JavaEE培訓(xùn)學(xué)院 瀏覽量:

 

JavaEE就業(yè)筆記串講---Maven-part2

 

1Maven依賴管理

1.1坐標(biāo)定義

maven對(duì)每個(gè)工程通過坐標(biāo)管理。

groupId:定義當(dāng)前Maven項(xiàng)目名稱

artifactId:定義項(xiàng)目模塊

version:定義當(dāng)前項(xiàng)目的當(dāng)前版本

1.2查詢其它構(gòu)件的坐標(biāo)

1、通過互聯(lián)網(wǎng)搜索

2、通過本地倉(cāng)庫(kù)搜索(學(xué)習(xí))

依賴范圍scope(重點(diǎn)理解)

1、compile 編譯、測(cè)試、運(yùn)行,A在編譯時(shí)依賴B,并且在測(cè)試和運(yùn)行時(shí)也依賴。

strus-core、spring-beans

打到war包或jar包。

2、provided 編譯、和測(cè)試有效,A在編譯和測(cè)試時(shí)需要B。

比如:servlet-api就是編譯和測(cè)試有用,在運(yùn)行時(shí)不用(tomcat容器已提供)。

不會(huì)打到war。

3、runtime:測(cè)試、運(yùn)行有效。

比如:jdbc驅(qū)動(dòng)包 ,在開發(fā)代碼中針對(duì)java的jdbc接口開發(fā),編譯不用。

在運(yùn)行和測(cè)試時(shí)需要通過jdbc驅(qū)動(dòng)包(mysql驅(qū)動(dòng))連接數(shù)據(jù)庫(kù),需要的??!

會(huì)打到war。

4、test:只是測(cè)試有效,只在單元測(cè)試類中用。

比如:junit

不會(huì)打到war。

按照依賴強(qiáng)度,由強(qiáng)到弱來排序:(理解)

compile> provided> runtime> test

1.3傳遞依賴(理解)

1.3.1什么傳遞依賴

A依賴B,B依賴C,在A中加入B的坐標(biāo),自動(dòng)導(dǎo)入C的jar包,稱C為A傳遞依賴。

1.3.2傳遞依賴與范圍(理解)

1、縱坐標(biāo):直接依賴

A依賴B,B是A的直接依賴。

在A的pom.xml中添加B的坐標(biāo)。

2、橫坐標(biāo):傳遞依賴

B依賴C,C是A的傳遞依賴。

3、中間部分:傳遞依賴的范圍,A依賴C的范圍。

1.4小結(jié)

maven是項(xiàng)目管理工具,使用maven進(jìn)行java項(xiàng)目構(gòu)建!

每個(gè)maven工程包括一個(gè)pom.xml文件。

pom.xml基本配置:

1、坐標(biāo)

groupid 項(xiàng)目名稱

artifactid:模塊名稱

version:模塊版本

2、依賴管理

dependency

groupid 項(xiàng)目名稱

artifactid:模塊名稱

version:模塊版本

3、build,構(gòu)建配置

主要配置插件,編譯、tomcat插件。

maven的運(yùn)行依賴倉(cāng)庫(kù)包括:

1、本地倉(cāng)庫(kù),緩存

2、遠(yuǎn)程倉(cāng)庫(kù)

3、中央倉(cāng)庫(kù),是特殊的遠(yuǎn)程倉(cāng)庫(kù),是maven軟件默認(rèn)遠(yuǎn)程倉(cāng)庫(kù)的地址

當(dāng)向工程加入一個(gè)依賴,先從本地倉(cāng)庫(kù)找,如果找不到再?gòu)倪h(yuǎn)程倉(cāng)庫(kù)找。

依賴管理:

1、依賴范圍

由強(qiáng)到弱:compile(編譯、測(cè)試、運(yùn)行有效)》provided(編譯、測(cè)試)》runtime(測(cè)試、運(yùn)行有效)》test(測(cè)試)

2、傳遞依賴

A依賴B,B依賴C,C就是A的傳遞依賴。

3、傳遞依賴范圍

1.5依賴版本沖突解決

1.5.1依賴調(diào)解原則(了解)

maven自己提供依賴調(diào)解原則:

1、第一聲明者優(yōu)先原則

2、路徑近者優(yōu)先原則

1.5.2鎖定版本(推薦使用)

2使用maven構(gòu)建ssh整合工程

2.1創(chuàng)建maven(web工程)

2.1.1選擇原型,web工程要選擇webapp.

2.1.2引入servlet-api的jar

2.1.3修改web.xml

[XML] 純文本查看 復(fù)制代碼

?

1

2

3

4

5

6

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee [url=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd]http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd[/url]"

        id="WebApp_ID" version="2.5">

</web-app>

 

2.2準(zhǔn)備環(huán)境

數(shù)據(jù)庫(kù)環(huán)境:

創(chuàng)建maven數(shù)據(jù)庫(kù):

導(dǎo)入腳本

2.3pom.xml(重點(diǎn))

加入各層依賴jar包:

1)鎖定依賴構(gòu)件的版本

2)添加依賴

2.4工程結(jié)構(gòu)

2.5運(yùn)行web工程

tomcat:run:使用tomcat6和maven集成插件運(yùn)行。


作者:黑馬程序員JavaEE培訓(xùn)學(xué)院

首發(fā):http://java.itheima.com/


分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!