1、maven介绍
maven工程中并没放置jar包,而是放置的jar包的坐标。当启动一个maven工程时,会默认去本地仓库找jar包。如果本地仓库中没有的jar包,将会通过联网到中央仓库中下载jar包。而在公司开发中,会有远程仓库,只要自己的电脑和远程仓库在同一个局域网就可以下载jar包。
2、maven标准目录结构
3、target目录
target是项目编译之后,系统自动生成的文件夹。
4、maven终端操作
使用maven操作项目与一个好处就是,可以在终端系统中输入命令运行项目。下面介绍几个命令:
一、进入maven项目的根目录后,输入:mvn clean
该命令执行后,会把target文件夹删除。本质是把项目中编译产生的文件删除掉。例如:在公司中,我们接到另一个人的项目进行开发,那么他的项目中包含了很多在他本地编译后产生的信息,要将他的项目导入本地环境就需要先执行mvn clean。
二、mvn compile
将src/main/java下面的代码编译后放在了target下,生成classes。
三、mvn test
将src/main/test下面的代码进行编译(同时也运行了src/main/java下的代码)放在target下,生成test-classes。
四、mvn package
打包命令,同时做了compile和test的工作。
五、mvn install
同时做了compile、test、package的工作,还在本地仓库中安装了打包后的war包。
5、maven概念模型图
一、
pom.xml里面包含三类信息:项目自身的信息、项目运行所依赖的jar包信息、运行环境信息(tomcat、jdk等)
二、
项目运行所依赖的jar包信息又独立出来变成一个依赖管理模型。里面放置的都是jar包的坐标。jar包里必须包含三样,如图:
三、构建生命周期
指maven的一键构建功能。
6、创建maven的java项目
创建maven项目后,有些文件夹是没有的,需要自己创建,如:src/main下面的resources文件和src/test下面的resources文件,需要自己创建,并右键设置为资源文件夹。防止代码和配置文件混淆。
7、servlet之jar包冲突
原因:在pom.xml中写入jar包的坐标后,系统会自动导入pom.xml中的jar包。当程序运行后,本地仓库中的相同jar包也被调用。大致jar包冲突。
解决方法:可以给pom.xml中的jar包设置作用域。使用标签。如图,设置代码只在写代码时起作用,运行时不起作用而是调用本地仓库中的jar包:
下图是代码只在测试时起作用。
8、maven工程运行环境修改
一、tomcat版本发生变化
需要在pom.xml配置文件中添加新的tomcat插件,代码如图:
如果需要修改tomcat的端口号,代码如下:
可以运行tomcat测试,在idea右边的Maven Probjects中点击
然后输入tomcat:run命令就可以看到如下图:
注:可以添加动态模板避免记不住groupID。
二、jdk版本发生变化
代码如图:
数据库设置范围是应该选择runtime。
9、maven的java工程取mysql中的数据
要取出数据库表中id、name两个属性的值,如图:
一、需要在src\main\java下创建实体类的包,然后在包下面创建实体类。代码如下:
二、在pom.xml文件中写上导入链接mysql的jar包,代码如图:
三、创建实体类的Dao,在src\main\java下再创建一个包,在包内写一个接口。代码如图:
四、创建第三步的实现类,在src\main\java下再创建一个包,在包内创建一个class,让其实现第三步中的接口。代码如图:
五、写测试类,先在src/test/java下创建一个包,然后在包内创建java类。代码如下:
六、总结