欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mavenWebStageDay19

程序员文章站 2022-03-02 22:41:14
...

1.Maven概述:
1).概念: Maven 管理项目的工具.

2).作用:	
        (1)maven对项目的第三方构件(jar包)进行统一管理;
		(2)maven提供一套对项目生命周期管理的标准: 编译/测试/打包/部署/运行;
		(3)maven对工程模块构建,提高开发效率.
		
3).Maven的概念模型:
	- 项目对象模型 (Project Object Model)。POM对象模型,每个maven工程中都有一个pom.xml文件,定义工程所依赖的jar包、本工程的坐标、打包运行方式。
	- 依赖管理系统(基础核心 )。maven通过坐标对项目工程所依赖的jar包统一规范管理。
	- maven定义一套项目生命周期。清理、初始化、编译、测试、报告 、打包、部署、站点生成。
	- 一组标准集合。maven工程有自己标准的工程目录结构、定义坐标有标准。
	- maven 管理项目生命周期过程都是基于插件完成的,例如:开发中使用的tomcat插件。

4).Maven的仓库:
	-本地仓库:	本机缓存(在程序员的电脑上,不允许中文和空格)
	-*仓库:	http://repo1.maven.org/maven2/
	-远程仓库:	在公司内部架设一台私服,其它公司架设一台仓库,对外公开.

5).Maven的坐标:
	Maven的一个核心的作用就是管理项目的依赖,引入我们所需的各种jar包.
	坐标的定义元素如下:
		- groupId:定义当前Maven项目名称 
		- artifactId:定义项目模块 
		- version:定义当前项目的当前版本 
	举例:在pom.xml配置文件中配置引入junit的坐标:
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.26</version>
			<scope>test</scope>
		</dependency>

2.Maven的安装
1).解压文件(免安装):apache-maven-3.3.9-bin.zip
所在目录不允许出现:中文和空格

2).配置maven的本地仓库和远程仓库settings.xml:
	(1) 安装目录下config文件夹-->settings.xml
		第55行	标签体写jar包目录: <localRepository>D:\develop\java\apache-maven-3.3.9\repository</localRepository>
		第160行	设置阿里云下载地址:
			<mirror>
			  <id>AliMaven</id>
			  <name>aliyun maven</name>
			  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
			  <mirrorOf>central</mirrorOf>        
			</mirror>

	(2) 系统变量中(电脑c盘-属性-高级系统设置-环境变量-系统变量):
		JAVA_HOME	--> jdk所在目录:C:\Program Files\Java\jdk1.8.0_162
		MAVEN_HOME	--> maven解压目录:D:\develop\java\apache-maven-3.3.9
		path		--> 增加: %JAVA_HOME%\bin   和  %MAVEN_HOME%\bin
	
	(3) 打开cmd--> 输入:mvn -version
		打印出当前maven的版本号等信息,即正确

3.IDEA创建Maven工程

1).IDEA指定本地Maven
	IDEA-->settings...-->Build,Execution,Deployment-->Build Tools-->Maven下设置:
		(1)Maven home directory : 选择maven的解压目录 D:/develop/java/apache-maven-3.3.9
		(2)User settings file: 选择maven中的conf/settings.xml 勾选后面的Override
		(3)Local repository: 选择maven中的repository文件夹路径(jar包路径) 勾选后面的Override

2).创建java工程,javase项目:
	(1)file--> new--> project--> Maven --> 勾选create from archetype(从骨架模板创建) -->(maven-archetype-quickstart) -->next
	(2)GroupId: com.itheima66 --> ArtifactId: javase --> version: 默认为1.0-SNAPSHOT -->next
	(3)Maven home directory / User settings file: / Local repository: 在上一步已经设置完毕 -->next
	(4)project name: 66-mvn (工程名) --> Module name: javasehello --> finish完成
	
	项目构建成功后,第一次会自动下载(需要联网),弹出 Maven projects need to be imported 选择: nable Auto-Import 以后自动导入jar包
	显示:BUILD SUCCESS!
	
	java工程目录结构:
		src/main/java	java代码编写目录
		src/test/java	测试代码编写目录

3).创建javaweb工程:
	(1)与创建java工程类似,仅 骨架模板选择不同create from archetype:(maven-archetype-webapp)
	
	(2)结构完善:
		main下面创建java文件:右键文件 mark Directory as Sources Root
		main下面创建resource文件:右键文件 mark Directory as Resources Root
		src下创建test文件--> java文件:右键文件 mark Directory as Test Sources Root
		src下--> test文件--> resource文件:右键文件 mark Directory as Test Resources Root
	
	(3)导入新jar包依赖 --> 修改pom.xml (项目经理和架构师提前写好)
		pom.xml第29行新增<dependency></dependency>标签内容:
			<dependency>
			  <groupId>javax.servlet</groupId>
			  <artifactId>javax.servlet-api</artifactId>
			  <version>3.1.0</version>
			</dependency>
		
		官网maven依赖去查询dependency写法,本地没有则下载
		mvnrepository

4.创建自定义JavaWeb工程(后补)


5.Maven的常用命令:
1)IDEA右侧 Maven Projects -->选中项目–> Lifecycle -->
clean(清除之前编译的内容)
complie(重新编译)
test(把test目录下所有@Test 都运行一遍)
package打包(目的不同,方式不同)(打包后的项目会在target目录下找到)
install打包后将其安装在本地仓库

<packaging>war</packaging>
	打包方式:war-->用于给服务器部署
		生成war格式文件 --> 放入tomcat / webapp下 -->tomcat每隔一分钟自动扫描部署(或手动bin下startup.bat)
<packaging>jar</packaging>
	打包方式:jar-->自定义工具类,创建私服,共享资源
		生成jar格式文件 --> 添加到web项目的pom.xml中,配置<dependency>
			<dependency>
			  <groupId>com.itheima66</groupId>
			  <artifactId>javase</artifactId>
			  <version>1.0-SNAPSHOT</version>
			</dependency>
		在web项目下,测试使用.

6.依赖管理
(scope)依赖范围:
compile 编译/测试/运行/
provided 编译/测试/
runtime:测试/运行
test: 只测试有效

	按照依赖强度,由强到弱来排序:(理解)
		compile> provided> runtime> test

7.使用Maven构建javaWeb项目:(Servlet+JSP+dbutils)
需求:
完成添加客户信息的操作
创建步骤:
1.构建maven-javaEE项目
2.数据库 表创建
3.配置文件–>main–resources下
4.三层架构–>main–java下
5.页面文件–>webapp下
6.jar包导入–>pom.xml修改配置
maven坐标:mysql驱动,dbutils,servlet-api,jsp-api
7.实现插入数据的逻辑功能
注意:
maven创建项目的时候,web.xml默认使用2.3版本,jsp还没有jstl导入.将它替换为3.1版本的web.xml

相关标签: JavaWeb