一、Maven将父项目创建到父项目的内部

在父项目的pom.xml上 点右键,选择maven-->new-->maven module  project

 

二、Maven聚合

在某个项目的pom.xml文件中,添加<modules></modules>引用其他项目即可将多个项目聚合成一个整体

 

在总pom上执行命令时,会在每一个被聚合的项目上都执行这个命令

而且还会根据项目之间的依赖决定正确的执行顺序

     

MyBatis 和Spring 和Spring-Test整合

MyBatis 和Spring整合实现数据层开发

MyBatista和Spring-Test  + JUnit整合实现数据层单元测试

 

在properties中定义spring.version的目的是统一管理spring的版本号

方便今后切换

两个maven仓库怎么合到一起_maven

 

 

Spring-Test 专门提供以简化Spring应用的测试,并且解决了Spring项目在测试时无法注入bean的问题

 

两个maven仓库怎么合到一起_两个maven仓库怎么合到一起_02

 

 

三、Jar包搜索/Maven仓库

   

可以让开发人员搜索、查看jar包的各种版本,以及每个版本的详细信息和maven

坐标,也可以直接下载Jar包

 

挑选Jar包时,选择版本较新、正式版、使用人数多的版本

不用使用测试版、除非有特殊要求,也不要使用过老的版本

 

 

MySQL的驱动包

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.41</version>

</dependency>

数据库连接池

<dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-dbcp2</artifactId>

<version>2.1.1</version>

</dependency>
<dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-pool2</artifactId>

<version>2.4.2</version>

</dependency>

 

MyBatis的Jar包

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis</artifactId>

<version>3.4.4</version>

</dependency>

 

MyBatis和spring的整合Jar,能够让MyBatis和spring协同工作

能够进一步简化数据层代码

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

<version>1.3.1</version>

</dependency>

 

Spring的数据库事务管理Jar包,可以简化事务开发

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-tx</artifactId>

<version>${spring.version}</version>

</dependency>

 

Spring的数据层

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-orm</artifactId>

<version>${spring.version}</version>

</dependency>

Spring的面向切面编程支持

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-aspects</artifactId>

<version>${spring.version}</version>

</dependency>

 

Spring上下文支持功能(Spring的强大功能必须在Spring上下文范围内才能生效,离开上下文就会瘫痪、无法正常工作)

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context-support</artifactId>

<version>${spring.version}</version>

</dependency>

 

MyBatis的Dao层

在MyBatis的概念中,Dao被称为Mapper,即映射器  

 

 

两个maven仓库怎么合到一起_maven_03

 

四、如果与Spring整合,Dao接口上应该加上@Mapper注解, 加上这个注解后,可以自动生成Dao的实现对象

 

 

Dao接口中的方法参数(通常只有一个参数)

要么是一个类(基本类型或复杂类型)

要么是一个HashMap

使用带名字的HashMap原因是可以传递多个参数

 

Dao接口不用写实现类了!!

在Spring中不允许自己new Dao、Service!!

Dao和Service是Spring统一管理的

 

五、MyBatis的服务层

与Spring整合时,Service类上应该添加@Service注解

加上这个注解后,Spring可以自动帮助我们给service属性赋值

会接管Service类,替我们创建Service类的对象(bean)

(凡是别Spring接管对象都可以称为bean)

 

@Autowired注解,在Spring上下文中运行时,会自动给它标记的属性赋值。我们不用自己new对象!

(注意:如果不在Spring上下文中,就会失效)

 

六、怎么理解上下文

Spring 上下文是可以看做一个包含了很多对象的池子

利用@Service等注解可以把类注册进去

利用@Autowired等注解可以把对象取出来

 

七、Spring-Test 整合测试

为了在测试用例中能够正常使用Spring注解,Spring官方专门提供了Spring-Test包,其中的:

    能够在测试环境中加载应用上下文配置

帮助我们快速创建应用上下文

 

  通过利用SpringJUnit4ClassRunner可以使测试用例在创建好的测试应用上下文中运行

 

八、Spring +MyBatis+JUnit+Maven整合测试的搭建过程

1.创建父子项目(也可以只创建一个项目,而不采用maven继承)

2.修改pom.xml,加入依赖项

)JUnit(test)

            B) spring-test(test)

数据库驱动

连接池

            E) MyBatis

            F) MyBatis-Spring

事务

支持

面向切面支持

上下文支持

定义模型(main)

定义Dao(main)

定义Mapper xml 配置文件

        6. Service

测试类

在测试类上通过注解创建应用上下文,并且指明使用Spring测试运行类运行测试用例

创建应用上下文配置文件

创建mybatis配置文件