SpringBoot使用Maven建立多模块工程(二)

项目多模块似乎已经很常见了,这里分享一下多模块构建过程。

环境:idea+SpringBoot2.0。

目标:父工程(打包pom),子工程(api-jar包,让web工程依赖)、子工程(hh-pojo-jar,让web工程依赖)以及web主工程(打war包)。

基本上本篇博客是在上一篇博文的基础上继续进行拓展。


【1】创建hh-pojo项目

步骤:父工程右键 – new Module – Maven 不使用模板(这个自行斟酌)。

创建后项目如下:

这里写图片描述


父工程的pom文件会自动添加module依赖:

这里写图片描述


添加pojo、dao和mapper.xml,如下图所示

这里写图片描述


【2】修改主项目hh-core

① 修改pom文件添加hh-pojo依赖

<!--引入api-->
<dependency>
    <groupId>com.jane</groupId>
    <artifactId>hh-api</artifactId>
    <version>1.0-SNAPSHOT</version>
</dependency>
<!--引入pojo-->
<dependency>
    <groupId>com.jane</groupId>
    <artifactId>hh-pojo</artifactId>
    <version>1.0-SNAPSHOT</version>
</dependency>

② 主程序类添加注解@MapperScan({“com.jane.dao”})

@SpringBootApplication
@MapperScan({"com.jane.dao"})
public class HhCoreApplication {

    public static void main(String[] args) {
        SpringApplication.run(HhCoreApplication.class, args);
    }
}

③ yml添加配置

# 配置mybatis
mybatis:
  config-location: classpath:mybatis/mybatis-config.xml
  mapper-locations: classpath*:mybatis/mapper/*.xml

这里简要讲述一下classpath :

classpath:/xxx 和 classpath:xxx是一样的 。
.
classpath:xxx 和 classpath*:xxx是不一样的,前者表示引入一个,后者表示引入多个。
.
而且classpath*不仅包含class路径,还包括jar文件中(class路径)进行查找。
.
classpath:mapper/**/*.xml:查找类路径下mapper包下面所有子包中的所有xml。


④ hh-core项目添加自己的dao和mapper.xml

这里写图片描述


⑤ controller中编写代码测试两个到

@RestController
public class HelloController {

    @Autowired
    SysApkMapper apkMapper;

    @Autowired
    ISysApkExtendDao apkExtendDao;

    @RequestMapping("/hello")
    public Object hello(){
        String source = "janus";
        if (ToolUtils.isEmpty(source)){
           System.out.println("true");
        }
        SysApk sysApk = apkMapper.selectByPrimaryKey(1L);
        SysApk sysApkByType = apkExtendDao.getSysApkByType(1);
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("apkMapper",sysApk);
        jsonObject.put("apkExtendDao",sysApkByType);
        return jsonObject;
    }
}

⑥ 使用浏览器进行测试

如下图所示,可以完美从两个不同项目不同dao中拿到数据:

这里写图片描述

博文对应项目下载地址:https://download.csdn.net/download/j080624/10596263

猜你喜欢

转载自blog.csdn.net/J080624/article/details/81567701