1.依赖管理概念
2.仓库的种类和彼此关系
3.maven常用命令
mvn -clean:这个命令是如果公司接手别人的项目,由于别人在自己的电脑本地编译过,在我们电脑不一定行得通,所以 要清除一下,清的是target文件夹。
mvn -test:测试编译src下main和test文件下的java代码
mvn package:打war包,正式代码和测试代码都编译
man install:把当前项目打在了本地仓库,并且上面的命令都执行了一遍。
4.maven生命周期
这个想象成人,从幼儿到青年到壮年到老年,没到一个阶段都经历过前面的阶段,所以像打包就是执行命令后一定执行了编译和测试
5.maven概念模型图
项目对象模型(POM):
* pom.xml有三类信息
1.项目自身信息
2.项目运行所依赖的jar包信息
3.项目运行环境信息,比如:jdk,tomcat
依赖管理模型(Dependency):
* <dependency>
<groupId>公司组织的名称</groupId>
<artifactId>项目名</artifactId>
<version>版本号</version>
</dependency>
默认生命周期:
compile,test,package,install,deploy
每一个构建项目的命令都对应了maven底层一个插件。
6.案例servlet
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.joker</groupId>
<artifactId>maven_mysql</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
</project>
Items.java
package com.joker.domain;
public class Items {
private Integer deptno;
private String dname;
public Integer getDeptno() {
return deptno;
}
public void setDeptno(Integer deptno) {
this.deptno = deptno;
}
public String getDname() {
return dname;
}
public void setDname(String dname) {
this.dname = dname;
}
}
ItemsDao.java
package com.joker.dao;
import com.joker.domain.Items;
import java.util.List;
public interface ItemsDao {
public List<Items> findAll() throws Exception;
}
ItemsDaoImpl.java
package com.joker.dao.impl;
import com.joker.dao.ItemsDao;
import com.joker.domain.Items;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
/**
* 要想从数据库中取出数据
* 必须有四个属性:数据库驱动,连接数据库的地址,数据库用户名称,数据库密码
*/
public class ItemsDaoImpl implements ItemsDao {
public List<Items> findAll() throws Exception{
List<Items> list = new ArrayList<Items>();
//先获取connection对象
Connection connection = null;
//获取真正操作数据的对象
PreparedStatement pst = null;
//执行数据库查询操作
ResultSet rs = null;
try{
//加载驱动类
Class.forName("com.mysql.jdbc.Driver");
//先获取connection对象
connection = DriverManager.getConnection("jdbc:mysql:///test","root","root");
//获取真正操作数据的对象
pst = connection.prepareCall("select * from dept");
//执行数据库查询操作
rs = pst.executeQuery();
//把数据库结果集转成java的list集合
while(rs.next()){
Items items = new Items();
items.setDeptno(rs.getInt("deptno"));
items.setDname(rs.getString("dname"));
list.add(items);
}
}catch (Exception e){
e.printStackTrace();
}finally {
connection.close();
pst.close();
rs.close();
}
return list;
}
}
ItemsTest.java
package com.joker.test;
import com.joker.dao.ItemsDao;
import com.joker.dao.impl.ItemsDaoImpl;
import com.joker.domain.Items;
import org.junit.Test;
import java.util.List;
public class ItemTest {
@Test
public void findAll()
throws Exception{
ItemsDao itemsDao = new ItemsDaoImpl();
List<Items> list = itemsDao.findAll();
for(Items items : list){
System.out.println(items.getDname());
}
}
}