您的位置:首页 > 编程语言 > Java开发

BES-多模块Springboot项目MyBatis通用Mapper配置(Controller Service Dao在不同子模块中)

2020-02-17 04:45 1176 查看

之前写的项目结构是类似下图的,没有分开到各个子模块中

新的项目要求要分离模块,模块结构如下

项目与子模块结构

 

Controller子模块中的配置

pom.xml

[code]        <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!--mybatis通用mapper依赖-->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>

通用Mapper相关的的配置放在Controller子模块中的application.yml中,不是放在dao或者service模块中。只有controller所在模块是SpringBoot项目,其他都是普通的maven项目

application.yml

[code]server:
port: 10001
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/db_user_center?serverTimezone=Hongkong&useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true
username: XXXX
password: XXXX
#mybatis配置
mybatis:
#实体类所在包名
type-aliases-package: cn.ztanker.bes.userpermission.pojo.entity
#通用mapper配置
mapper:
#公用接口类路径
mappers: tk.mybatis.mapper.common.Mapper
identity: MYSQL

 

Service子模块中的配置

无相关配置,都是通过调用dao层的接口取到数据。

Dao子模块中的配置

pom.xml

[code]        <!--Mybatis依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<!--mybatis通用mapper依赖-->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
<!--数据库连接依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
<scope>runtime</scope>
</dependency>

关于MyBatis的配置:

1. MyBatis的xml文件要放在dao项目的resources文件夹中。

2. MyBatis的相关配置在controller子模块的resources/application.yml中。注意classpath带有一个" * "号,否则扫描不到dao子项目中的xml文件。

[code]mybatis:
mapper-locations: classpath*:mapper/*.xml

注意:由于拆分成了多个模块,要避免相互依赖导致Maven循环依赖问题。

  • 点赞
  • 收藏
  • 分享
  • 文章举报
Tanker_97 发布了5 篇原创文章 · 获赞 0 · 访问量 369 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: